Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

GradientBoostingClassifier

Classifier sklearn-compatible 🌲 Tree-Based

Gradient Boosting classifier — sequential additive model with log-loss. / Gradient Boosting classifieur — modèle additif séquentiel avec log-loss.

⚡ Rust-native ✓ sklearn parity
Quick start — Python
import seraplot as sp
from sklearn.datasets import make_classification
X, y = make_classification(n_samples=500, n_features=10)
gb = sp.GradientBoostingClassifier(n_estimators=100, learning_rate=0.1)
gb.fit(X, y)
print(gb.score(X, y))
💡
EN — Drop-in replacement: sp.GradientBoostingClassifier has the same API as sklearn.
FR — Remplacement direct : même API que sklearn, changez l'import.

API Reference

JSON function name

ml_gradient_boosting_classifier — aliases: gradient_boosting_classifier, gb_cls

Python class
sp.GradientBoostingClassifier(n_estimators=100, learning_rate=0.1, max_depth=3, min_samples_split=2, min_samples_leaf=1)
Constructor Parameters
ParameterTypeDefaultDescription
n_estimatorsint100Number of boosting rounds.
learning_ratefloat0.1Shrinkage applied to each tree.
max_depthint3Maximum tree depth.
min_samples_splitint2Min samples to split.
min_samples_leafint1Min samples in leaf.
Returns

JSON with predictions.

Algorithm

$$F_m(x) = F_{m-1}(x) + \eta \cdot h_m(x)$$

Example
import seraplot as sp
from sklearn.datasets import make_classification
X, y = make_classification(n_samples=500, n_features=10)
gb = sp.GradientBoostingClassifier(n_estimators=100, learning_rate=0.1)
gb.fit(X, y)
print(gb.score(X, y))

Référence API

Nom de fonction JSON

ml_gradient_boosting_classifier — alias : gradient_boosting_classifier, gb_cls

Classe Python
sp.GradientBoostingClassifier(n_estimators=100, learning_rate=0.1, max_depth=3, min_samples_split=2, min_samples_leaf=1)
Paramètres du constructeur
ParamètreTypeDéfautDescription
n_estimatorsint100Nombre de tours de boosting.
learning_ratefloat0.1Shrinkage appliqué à chaque arbre.
max_depthint3Profondeur maximale de chaque arbre.
min_samples_splitint2Min d'échantillons pour diviser.
min_samples_leafint1Min d'échantillons en feuille.
Retourne

JSON avec predictions.

Algorithme

$$F_m(x) = F_{m-1}(x) + \eta \cdot h_m(x)$$

Exemple
import seraplot as sp
from sklearn.datasets import make_classification
X, y = make_classification(n_samples=500, n_features=10)
gb = sp.GradientBoostingClassifier(n_estimators=100, learning_rate=0.1)
gb.fit(X, y)
print(gb.score(X, y))

GradientBoostingRegressor

Regressor sklearn-compatible 🌲 Tree-Based

Gradient Boosting regressor — sequential additive model minimising MSE. / Gradient Boosting régresseur — modèle additif séquentiel minimisant la MSE.

⚡ Rust-native ✓ sklearn parity
Quick start — Python
import seraplot as sp, numpy as np
X = np.random.randn(400, 5)
y = X[:, 0] ** 2 - X[:, 1] + np.random.randn(400) * 0.3
gb = sp.GradientBoostingRegressor(n_estimators=100, learning_rate=0.05)
gb.fit(X, y)
print(gb.score(X, y))
💡
EN — Drop-in replacement: sp.GradientBoostingRegressor has the same API as sklearn.
FR — Remplacement direct : même API que sklearn, changez l'import.

API Reference

JSON function name

ml_gradient_boosting_regressor — aliases: gradient_boosting_regressor, gb_reg

Python class
sp.GradientBoostingRegressor(n_estimators=100, learning_rate=0.1, max_depth=3, min_samples_split=2, min_samples_leaf=1)
Constructor Parameters
ParameterTypeDefaultDescription
n_estimatorsint100Number of boosting rounds.
learning_ratefloat0.1Shrinkage applied to each tree.
max_depthint3Maximum tree depth.
min_samples_splitint2Min samples to split.
min_samples_leafint1Min samples in leaf.
Returns

JSON with predictions.

Algorithm

$$F_m(x) = F_{m-1}(x) + \eta \cdot h_m(x), \quad h_m = \arg\min_h \sum_i(r_i - h(x_i))^2$$

Example
import seraplot as sp, numpy as np
X = np.random.randn(400, 5)
y = X[:, 0] ** 2 - X[:, 1] + np.random.randn(400) * 0.3
gb = sp.GradientBoostingRegressor(n_estimators=100, learning_rate=0.05)
gb.fit(X, y)
print(gb.score(X, y))

Référence API

Nom de fonction JSON

ml_gradient_boosting_regressor — alias : gradient_boosting_regressor, gb_reg

Classe Python
sp.GradientBoostingRegressor(n_estimators=100, learning_rate=0.1, max_depth=3, min_samples_split=2, min_samples_leaf=1)
Paramètres du constructeur
ParamètreTypeDéfautDescription
n_estimatorsint100Nombre de tours de boosting.
learning_ratefloat0.1Shrinkage appliqué à chaque arbre.
max_depthint3Profondeur maximale.
min_samples_splitint2Min d'échantillons pour diviser.
min_samples_leafint1Min d'échantillons en feuille.
Retourne

JSON avec predictions.

Algorithme

$$F_m(x) = F_{m-1}(x) + \eta \cdot h_m(x), \quad r_i = y_i - F_{m-1}(x_i)$$

Exemple
import seraplot as sp, numpy as np
X = np.random.randn(400, 5)
y = X[:, 0] ** 2 - X[:, 1] + np.random.randn(400) * 0.3
gb = sp.GradientBoostingRegressor(n_estimators=100, learning_rate=0.05)
gb.fit(X, y)
print(gb.score(X, y))