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
