Description
Several improvements can be made to gradient boosted trees, but are not possible without moving the GBT implementation to spark.ml (e.g. rawPrediction column, feature importance). This Jira is for moving the current GBT implementation to spark.ml, which will have roughly the following steps:
1. Copy the implementation to spark.ml and change spark.ml classes to use that implementation. Current tests will ensure that the implementations learn exactly the same models.
2. Move the decision tree helper classes over to spark.ml (e.g. Impurity, InformationGainStats, ImpurityStats, DTStatsAggregator, etc...). Since eventually all tree implementations will reside in spark.ml, the helper classes should as well.
3. Remove the spark.mllib implementation, and make the spark.mllib APIs wrappers around the spark.ml implementation. The spark.ml tests will again ensure that we do not change any behavior.
4. Move the unit tests to spark.ml, and change the spark.mllib unit tests to verify model equivalence.
Attachments
Issue Links
- relates to
-
SPARK-7131 Move tree,forest implementation from spark.mllib to spark.ml
- Resolved
1.
|
Copy GBT implementation to spark.ml | Resolved | Seth Hendrickson | |
2.
|
Copy public decision tree helper classes from spark.mllib to spark.ml and make private | Resolved | Unassigned | |
3.
|
Remove spark.mllib GBT implementation and wrap spark.ml | Resolved | Seth Hendrickson | |
4.
|
Move unit tests for GBT from spark.mllib to spark.ml | Resolved | Unassigned | |
5.
|
Remove unused mllib tree classes and move private classes to ML | Resolved | Seth Hendrickson |