There's no reason why a neural network wouldn't be able to learn a vector-to-vector mapping. Here's an example:
data = {
{21, 30, 39, 45, 46, 44} -> {1, 5, 20, 28, 52, 24},
{31, 52, 36, 34, 26, 32} -> {9, 47, 40, 34, 7, 11},
{48, 35, 44, 8, 45, 4} -> {25, 30, 4, 28, 21, 35},
{15, 42, 49, 17, 44, 30} -> {22, 11, 19, 23, 15, 18}
};
trainedNet = NetTrain[
NetChain[{
LinearLayer[10],
Ramp,
LinearLayer[]
}
],
data,
TimeGoal -> 30
]
Note that by specifying the final layer as LinearLayer[]
, the network will figure out automatically from the data what shape the output should be (in this case, a length-6 vector).