Class AutoMLOptions<T, TInput, TOutput>
- Namespace
- AiDotNet.Configuration
- Assembly
- AiDotNet.dll
Configuration options for running AutoML through the AiDotNet facade.
public class AutoMLOptions<T, TInput, TOutput>
Type Parameters
TThe numeric type used for calculations (e.g., float, double).
TInputThe model input type.
TOutputThe model output type.
- Inheritance
-
AutoMLOptions<T, TInput, TOutput>
- Inherited Members
Remarks
This options class is designed for use with AiModelBuilder.
It follows the AiDotNet facade pattern: users provide minimal configuration, and the library supplies
industry-standard defaults internally.
For Beginners: AutoML is an automatic "model picker + tuner". You choose a budget, and AutoML tries different models/settings to find a strong performer.
Properties
Budget
Gets or sets the compute budget for the AutoML run.
public AutoMLBudgetOptions Budget { get; set; }
Property Value
CrossValidation
Gets or sets cross-validation options for trial evaluation.
public CrossValidationOptions? CrossValidation { get; set; }
Property Value
Remarks
When enabled, each trial is evaluated using k-fold cross-validation instead of a single train/validation split. This provides more robust performance estimates but increases computation time by a factor of k (the number of folds).
For Beginners: Cross-validation splits your data into k parts ("folds"). The model is trained k times, each time using a different fold for validation. The final score is the average across all folds, giving a more reliable estimate of how well the model generalizes to unseen data.
If null, cross-validation is disabled and trials use a single train/validation split.
Ensembling
Gets or sets optional ensembling options applied after the AutoML search completes.
public AutoMLEnsembleOptions? Ensembling { get; set; }
Property Value
Remarks
If null, the facade uses sensible defaults based on the selected budget preset.
MultiFidelity
Gets or sets multi-fidelity options used when SearchStrategy is MultiFidelity.
public AutoMLMultiFidelityOptions? MultiFidelity { get; set; }
Property Value
Remarks
If null, sensible defaults are used.
NAS
Gets or sets Neural Architecture Search (NAS) specific AutoML options.
public NASOptions<T>? NAS { get; set; }
Property Value
- NASOptions<T>
Remarks
This is used when SearchStrategy is set to one of the NAS strategies: NeuralArchitectureSearch, DARTS, GDAS, or OnceForAll.
For Beginners: NAS automatically discovers optimal neural network architectures. Instead of manually designing layers, NAS explores different designs to find the best one for your data and hardware constraints.
If null, sensible defaults are used based on the selected NAS strategy.
OptimizationMetricOverride
Gets or sets an optional optimization metric override.
public MetricType? OptimizationMetricOverride { get; set; }
Property Value
Remarks
If null, AutoML chooses an industry-standard default metric for the inferred task family.
ReinforcementLearning
Gets or sets reinforcement-learning specific AutoML options.
public RLAutoMLOptions<T>? ReinforcementLearning { get; set; }
Property Value
Remarks
This is used when TaskFamilyOverride is set to ReinforcementLearning. If null, sensible defaults are used.
SearchStrategy
Gets or sets the search strategy used for hyperparameter/model exploration.
public AutoMLSearchStrategy SearchStrategy { get; set; }
Property Value
TaskFamilyOverride
Gets or sets an optional task family override.
public AutoMLTaskFamily? TaskFamilyOverride { get; set; }
Property Value
Remarks
If null, AutoML infers the task family from the training labels and model/task configuration.