Uploaded image for project: 'Spark'
  1. Spark
  2. SPARK-4240

Refine Tree Predictions in Gradient Boosting to Improve Prediction Accuracy.

    XMLWordPrintableJSON

    Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Major
    • Resolution: Incomplete
    • Affects Version/s: 1.3.0
    • Fix Version/s: None
    • Component/s: MLlib
    • Labels:

      Description

      The gradient boosting as currently implemented estimates the loss-gradient in each iteration using regression trees. At every iteration, the regression trees are trained/split to minimize predicted gradient variance. Additionally, the terminal node predictions are computed to minimize the prediction variance.

      However, such predictions won't be optimal for loss functions other than the mean-squared error. The TreeBoosting refinement can help mitigate this issue by modifying terminal node prediction values so that those predictions would directly minimize the actual loss function. Although this still doesn't change the fact that the tree splits were done through variance reduction, it should still lead to improvement in gradient estimations, and thus better performance.

      The details of this can be found in the R vignette. This paper also shows how to refine the terminal node predictions.

      http://www.saedsayad.com/docs/gbm2.pdf

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                codedeft Sung Chung
              • Votes:
                2 Vote for this issue
                Watchers:
                15 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: