Description
Linear least square estimates assume the error has normal distribution and can behave badly when the errors are heavy-tailed. In practical we get various types of data. We need to include Robust Regression to employ a fitting criterion that is not as vulnerable as least square.
In 1973, Huber introduced M-estimation for regression which stands for "maximum likelihood type". The method is resistant to outliers in the response variable and has been widely used.
The new feature for MLlib will contain 3 new files
/main/scala/org/apache/spark/mllib/regression/RobustRegression.scala
/test/scala/org/apache/spark/mllib/regression/RobustRegressionSuite.scala
/main/scala/org/apache/spark/examples/mllib/HuberRobustRegression.scala
and one new class HuberRobustGradient in
/main/scala/org/apache/spark/mllib/optimization/Gradient.scala
Attachments
Issue Links
- Dependent
-
SPARK-22810 PySpark supports LinearRegression with huber loss
- Resolved
- depends upon
-
SPARK-16494 Upgrade breeze version to 0.12
- Resolved
- is related to
-
SPARK-32060 Huber loss Convergence
- Resolved
-
SPARK-16592 Improving ml.Logistic Regression on speed and scalability
- Resolved
- relates to
-
SPARK-23482 R support for robust regression with Huber loss
- Open
- links to