diff --git a/docs/interpret/hyperparameters.md b/docs/interpret/hyperparameters.md index 4bd420ab5..4f9b00d11 100644 --- a/docs/interpret/hyperparameters.md +++ b/docs/interpret/hyperparameters.md @@ -13,7 +13,9 @@ hyperparameters: [0, 50, 100, 200, 500, 1000] guidance: This is an important hyperparameter to tune. The optimal smoothing_rounds value will vary depending on the dataset's characteristics. Adjust based on the prevalence of smooth feature response curves. ## learning_rate -default: 0.01 (classification), 0.05 (regression) +default: 0.016 (classification), 0.06 (regression) + +NOTE: 0.018 is better for multiclass. 0.016 optimizes for binary classification hyperparameters: [0.2, 0.1, 0.05, 0.02, 0.01, 0.005, 0.002] diff --git a/python/interpret-core/interpret/glassbox/_ebm/_ebm.py b/python/interpret-core/interpret/glassbox/_ebm/_ebm.py index 52b325a76..5cfc2e335 100644 --- a/python/interpret-core/interpret/glassbox/_ebm/_ebm.py +++ b/python/interpret-core/interpret/glassbox/_ebm/_ebm.py @@ -2448,7 +2448,7 @@ class ExplainableBoostingClassifier(EBMModel, ClassifierMixin, ExplainerMixin): Number of outer bags. Outer bags are used to generate error bounds and help with smoothing the graphs. inner_bags : int, default=0 Number of inner bags. 0 turns off inner bagging. - learning_rate : float, default=0.01 + learning_rate : float, default=0.016 Learning rate for boosting. greedy_ratio : float, default=12.0 The proportion of greedy boosting steps relative to cyclic boosting steps. @@ -2642,7 +2642,7 @@ def __init__( outer_bags: int = 14, inner_bags: Optional[int] = 0, # Boosting - learning_rate: float = 0.01, + learning_rate: float = 0.016, greedy_ratio: Optional[float] = 12.0, cyclic_progress: Union[bool, float, int] = False, # noqa: PYI041 smoothing_rounds: Optional[int] = 100, @@ -2794,7 +2794,7 @@ class ExplainableBoostingRegressor(EBMModel, RegressorMixin, ExplainerMixin): Number of outer bags. Outer bags are used to generate error bounds and help with smoothing the graphs. inner_bags : int, default=0 Number of inner bags. 0 turns off inner bagging. - learning_rate : float, default=0.05 + learning_rate : float, default=0.06 Learning rate for boosting. greedy_ratio : float, default=12.0 The proportion of greedy boosting steps relative to cyclic boosting steps. @@ -2988,7 +2988,7 @@ def __init__( outer_bags: int = 14, inner_bags: Optional[int] = 0, # Boosting - learning_rate: float = 0.05, + learning_rate: float = 0.06, greedy_ratio: Optional[float] = 12.0, cyclic_progress: Union[bool, float, int] = False, # noqa: PYI041 smoothing_rounds: Optional[int] = 100,