Hyperparameters
KKTHardNet accepts a training dictionary that is normalized into
kkthn.training.KKTTrainConfig.
Common keys
Key |
Meaning |
|---|---|
|
Number of training epochs. |
|
Training batch size. |
|
Adam learning rate. |
|
Width of hidden MLP layers. |
|
Number of hidden MLP layers. |
|
Fraction of data used for training. |
|
Random seed for splitting and initialization. |
|
Numeric precision, typically |
|
Console logging frequency. |
|
Optional loss threshold for starting projection training. |
|
Optional epoch for starting projection training. |
|
Consistency-loss weight. |
Projection keys
Key |
Meaning |
|---|---|
|
Fischer-Burmeister smoothing value. |
|
Maximum projection solver iterations. |
|
Projection residual tolerance. |
|
Projection solve regularization. |
|
Initial step length for line search. |
|
Armijo sufficient-decrease coefficient. |
|
Backtracking contraction coefficient. |
|
Maximum backtracking steps. |
|
Regularization in the implicit backward solve. |
Core code reference
- class kkthn.training.KKTTrainConfig(epochs: 'int' = 1200, batch_size: 'int' = 32, learning_rate: 'float' = 0.001, train_frac: 'float' = 0.8, hidden_size: 'int' = 64, hidden_layers: 'int' = 2, seed: 'int' = 42, dtype: 'str' = 'float64', print_every: 'int' = 1, drop_last: 'bool' = False, eta: 'float | None' = None, epoch_mlp: 'int | None' = None, cons_alpha: 'float' = 0.0, projection: 'ProjectionSettings' = ProjectionSettings(fb_eps=1e-08, gn_max_iters=30, gn_tol=1e-06, gn_reg=0.001, newton_step_length=0.5, armijo_alpha=0.0001, armijo_beta=0.5, max_backtrack_iter=10, armijo_max_steps=10, backward_reg=1e-08))[source]
Bases:
object- epochs: int = 1200
- batch_size: int = 32
- learning_rate: float = 0.001
- train_frac: float = 0.8
- hidden_size: int = 64
- hidden_layers: int = 2
- seed: int = 42
- dtype: str = 'float64'
- print_every: int = 1
- drop_last: bool = False
- eta: float | None = None
- epoch_mlp: int | None = None
- cons_alpha: float = 0.0
- projection: ProjectionSettings = ProjectionSettings(fb_eps=1e-08, gn_max_iters=30, gn_tol=1e-06, gn_reg=0.001, newton_step_length=0.5, armijo_alpha=0.0001, armijo_beta=0.5, max_backtrack_iter=10, armijo_max_steps=10, backward_reg=1e-08)
- class kkthn.projection.ProjectionSettings(fb_eps: 'float' = 1e-08, gn_max_iters: 'int' = 30, gn_tol: 'float' = 1e-06, gn_reg: 'float' = 0.001, newton_step_length: 'float' = 0.5, armijo_alpha: 'float' = 0.0001, armijo_beta: 'float' = 0.5, max_backtrack_iter: 'int' = 10, armijo_max_steps: 'int' = 10, backward_reg: 'float' = 1e-08)[source]
Bases:
object- fb_eps: float = 1e-08
- gn_max_iters: int = 30
- gn_tol: float = 1e-06
- gn_reg: float = 0.001
- newton_step_length: float = 0.5
- armijo_alpha: float = 0.0001
- armijo_beta: float = 0.5
- max_backtrack_iter: int = 10
- armijo_max_steps: int = 10
- backward_reg: float = 1e-08