dotnet / dotnet/machinelearning

Suggestion: Option to set TopKTrainers, or option to add more rounds before selecting top algorithms

Open
#5,909 3 comments 0 reactions 0 assignees View on GitHub
area-AutoML enhancement
Dominant language
C#
Stars
9.4k
Forks
2k
Avg merge
2d 20h
Merged PRs (30d)
11

Description

**Is your feature request related to a problem? Please describe.**
I have a dataset which selects worse performing algorithms based on the first round. It might be fixed by changing to another optimization metric. Anyway, I would like AutoML to give a few more rounds before selecting the top algorithma, or even keep trying all of them, or only drop the worst few.

**Describe the solution you'd like**
A) Public property to set TopKTrainers at https://github.com/dotnet/machinelearning/blob/526215dc3f057b7ff53adf6014552c29a5407466/src/Microsoft.ML.AutoML/PipelineSuggesters/PipelineSuggester.cs#L16

B) Public property to set how many rounds to run before selecting the top performers
Possible implementation is to add a multiplier, like int firstStageRounds
https://github.com/dotnet/machinelearning/blob/526215dc3f057b7ff53adf6014552c29a5407466/src/Microsoft.ML.AutoML/PipelineSuggesters/PipelineSuggester.cs#L45
to
` if (history.Count() < (availableTrainers.Count() * firstStageRounds))`

Is it a feasible idea?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.