Class PolynomialScheduler<T>
- Namespace
- AiDotNet.CurriculumLearning.Schedulers
- Assembly
- AiDotNet.dll
Curriculum scheduler with polynomial progression curve.
public class PolynomialScheduler<T> : CurriculumSchedulerBase<T>, ICurriculumScheduler<T>
Type Parameters
TThe numeric type used for calculations.
- Inheritance
-
PolynomialScheduler<T>
- Implements
- Inherited Members
Remarks
For Beginners: This scheduler uses a polynomial curve to control progression speed. The power parameter determines the curve shape.
Power Parameter Effects:
- Power < 1: Fast start, slow finish (concave curve)
- Power = 1: Linear progression
- Power > 1: Slow start, fast finish (convex curve)
Constructors
PolynomialScheduler(int, double, T?, T?)
Initializes a new instance of the PolynomialScheduler<T> class.
public PolynomialScheduler(int totalEpochs, double power = 2, T? minFraction = default, T? maxFraction = default)
Parameters
totalEpochsintTotal number of training epochs.
powerdoublePolynomial power (default 2.0 for quadratic).
minFractionTInitial data fraction (default 0.1).
maxFractionTFinal data fraction (default 1.0).
Properties
Name
Gets the name of this scheduler.
public override string Name { get; }
Property Value
Methods
GetDataFraction()
Gets the current data fraction using polynomial curve.
public override T GetDataFraction()
Returns
- T
GetStatistics()
Gets scheduler-specific statistics.
public override Dictionary<string, object> GetStatistics()