What is a direct multioutput regressor?
In a multioutput regression problem, there is more than one target continuous variable. A machine learning model has to predict all the target variables based on the features. For example, a machine learning model can predict the latitude and the longitude of a location based on the features. In this case, the problem is a multioutput regression problem as there are two target continuous variables – the latitude and the longitude.
Some machine learning algorithms like linear regression, KNN regression or Decision Trees regression supports multioutput regression inherently. But, some machine learning algorithms like the Support Vector Machine Regression (SVR) does not support multioutput regression. In that case, one has to use a direct or chained multioutput regressor to solve a multioutput regression problem.
In a direct multioutput regressor, the multioutput regression problem is broken into several regression problems. For example, if a machine learning model has to predict the x, y, and z values based on the features, the problem can be broken into the following subproblems:
Problem 1: Given the features, predict x value. Problem 2: Given the features, predict y value. Problem 3: Given the features, predict z value.
Now, the subproblems can be solved using a regressor like the SVR and all the target variables can be predicted.
Direct multioutput regressor using sklearn in Python
We can use the following Python code to solve a multioutput regression problem using linear SVR…






0 Comments