Suppose you have data of the form input a matrix A, and output a matrix B, where each row of each is one datapoint. Should you create multiple neural networks, one for each column of B, or one NN with multiple output neurons, one for each column of B?

  • 2
    $\begingroup$ It's up to you, but it is probably a good idea to share weights, that is, to have one neural network with multiple outputs. $\endgroup$ Commented Dec 2, 2016 at 16:26

1 Answer 1


You can do either.

If the learning tasks are related at all (i.e., the meaning of the columns of B are related), it's probably better to have one neural network with multiple outputs. This is often more effective, because the first few stages of that neural network might do some processing that is relevant to all of the outputs -- e.g., it might look for some local patterns or properties of the input that can then be useful for predicting all of the outputs. The network might take a bit longer to train if you use one big network rather than many smaller networks, but usually this is worth it if it leads to better accuracy.

But if you're not sure, you can always try both approaches and see which works better.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.