# What is the best method for learning a non-linear function $f(X)$ to predict multiple outputs?

I have feature data $$X$$ and four predictions $$(u_1, u_2, u_3, u_4) = f(X)$$ with $$u_1, u_2, u_3, u_4 \in \mathbb{R^+}$$. $$f$$ is an unknown function (no assumptions on its properties) that needs to be learned to predict $$u$$ out of sample.

I have training data that consists of approx. 10k observations (rows) of $$X$$ and $$f(X)$$. A data-related problem is that I know that in my out-of-sample data I will observe many unseen feature values of two features $$x_1$$ and $$x_2$$ that I know to be quite important to the value of $$f(X)$$.

Is there a model that is well suited to learn a function $$f$$ and make multiple real-valued predictions $$(u_1, u_2, u_3, u_4)$$, ideally such that $$f$$ also generalizes well to unseen data?

• The description is of a regression model. Is there something else more complicated in the question? Jul 28 at 15:32
• I am re-reading the question. Is this a multi-output regression model? Instead of 1 output there are 4 for every row of input? Jul 28 at 15:58
• @Craig Thanks! Yes, you are right its actually more simple than I realized myself. Deep Learning for Multi-Output Regression should do the trick. I was coming from a more complicated problem formulation, writing out the questions actually helped. Jul 29 at 6:46
• Glad I could help. There are a few ways to handle multi-output but it seems like you have a handle on one way. Writing or talking out the problem at hand often helps. Jul 29 at 12:42