Multi-dimensional regression with ensemble models?
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.