1
$\begingroup$

I'm curious to know whether boosting, random forests or other types of ensemble models can perform multi-dimensional regression. To be precise: That means multiple outputs (multi-dimensional labels) that are not intended for classification. For example predicting a persons height and weight from some data where there are two outputs each corresponding to one of height/weight (the labels and output values can be normalized if necessary). You can easily do this with neural networks of course. I am not interested in the trivial case where you simply have multiple models, one per regression output. If yes, are there any libraries available that support this (the ones I've looked at do not)?

$\endgroup$
1
$\begingroup$

I think there are some algorithms in scikit-learn that support this kind of multi-output with correlated inputs/outputs (e.g. not using one learner per output, this can be achieved using the MultiOutputRegressor meta-estimator): RandomForest, DecisionTree and LinearRegression. See : https://stats.stackexchange.com/questions/153853/regression-with-scikit-learn-with-multiple-outputs-svr-or-gbm-possible

and

http://scikit-learn.org/stable/auto_examples/ensemble/plot_random_forest_regression_multioutput.html#sphx-glr-auto-examples-ensemble-plot-random-forest-regression-multioutput-py for a comparison between the two approaches.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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