Skip to content

Commit

Permalink
optimize learning_rate parameter
Browse files Browse the repository at this point in the history
  • Loading branch information
paulbkoch committed Oct 18, 2024
1 parent 333f8de commit 3a15a7c
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 5 deletions.
4 changes: 3 additions & 1 deletion docs/interpret/hyperparameters.md
Original file line number Diff line number Diff line change
Expand Up @@ -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]

Expand Down
8 changes: 4 additions & 4 deletions python/interpret-core/interpret/glassbox/_ebm/_ebm.py
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand Down Expand Up @@ -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,
Expand Down Expand Up @@ -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.
Expand Down Expand Up @@ -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,
Expand Down

0 comments on commit 3a15a7c

Please sign in to comment.