Vue d'ensemble

Scikit-learn 1.1, publié le 13 mai 2022, ajoute la régression quantile et le target encoder pour l'encodage de variables catégorielles.

Fonctionnalités principales

Régression quantile

Le QuantileRegressor permet d'estimer des quantiles conditionnels plutôt que la moyenne, utile pour les intervalles de prédiction.

python
from sklearn.linear_model import QuantileRegressor
import numpy as np

X = np.random.randn(200, 1)
y = 2 * X.ravel() + np.random.randn(200) * 0.5

# Régression quantile pour le médian
qr = QuantileRegressor(quantile=0.5)
qr.fit(X, y)
print(f'Coefficient: {qr.coef_[0]:.2f}')  # ~2.0

Target encoder

Le TargetEncoder encode les variables catégorielles en utilisant la moyenne de la variable cible, avec régularisation pour éviter le surapprentissage.

python
from sklearn.preprocessing import TargetEncoder
import numpy as np

X = np.array([['chat'], ['chien'], ['chat'], ['oiseau'], ['chien']])
y = np.array([1, 0, 1, 0, 1])

encoder = TargetEncoder()
X_encoded = encoder.fit_transform(X, y)
print(X_encoded.ravel())  # moyennes par catégorie

Sources