dotnet / dotnet/machinelearning
FastTree and LightGbm base class is specific to Ranking
- Dominant language
- C#
- Stars
- 9.4k
- Forks
- 2k
- Avg merge
- 2d 20h
- Merged PRs (30d)
- 11
Description
The only training task that requires a `RowGroupColumn` is ranking. However, the base class of FastTree, FastForest and LightGbm requires it:
https://github.com/dotnet/machinelearning/blob/70ef7ecd43b031b481a4047ea361da5e2f360336/src/Microsoft.ML.Data/Training/TrainerEstimatorBase.cs#L176
The same is true for the options classes in FastTree, FastForest and LightGbm:
https://github.com/dotnet/machinelearning/blob/70ef7ecd43b031b481a4047ea361da5e2f360336/src/Microsoft.ML.Data/Training/TrainerInputBase.cs#L98-L111
We should fix the class hierarchy so that the base classes become `TrainerEstimatorBase` instead of `TrainerEstimatorBaseWithGroupId` and `TrainerInputBaseWithWeight` instead of `TrainerInputBaseWithGroupId`. This is a breaking API change.
This related to #3365.
Contributor guide
Assessment
This issue has not been assessed yet.