# Machine Learning algorithms for multi-input/multi-output regression

I have a computationally expensive function $f(a, b, c, d, e)$ that outputs an array of size $m$ containing sorted integers. I wish to use a machine learning technique to predict, given the variables $a, b, c, d$ and $e$, what the array will be. The machine learning model will have plenty of data to be trained on.

The problem is, I do not know what class of model to use and I need assistance pointing me in the right direction. I looked at regression models, but there are many different ones and I generally do not have a clear understanding of how multiple independent variables ($a, b, c, d$ and $e$) can map to a dependent variable which is a sequence of numbers.

Here is a mathematical description of the situation I am trying to model:

$f(a,b,c,d, e) = \{y_0, y_1,...,y_m\}$

I have numerous data entries that I am ready to train a model with that correspond to the description above:

a0, b0, c0, d0, e0, [h_0, h_1,…,h_m] // Independent Variables: a0 - e0
a1, b1, c1, d1, e1, [k_0, k_1,…,k_m] // Independent Variables: a1 - e1


What model should I use to get started? I wish to use scikit-learn.

• In order to proceed, it looks like you will need to define a loss function that, given a vector $y$ that is a result, and a vector $\hat{y}$ that is a production, outputs a scalar that says how "off" they are. Otherwise, the question seems undefined. – Ami Tavory Jul 18 '17 at 15:37