Vue d'ensemble

Scikit-learn 1.4, publie le 23 janvier 2024, ajoute le support de Polars en entree et ameliore HistGradientBoosting avec le support des donnees categoriques.

Fonctionnalites principales

Support Polars

Les estimateurs acceptent desormais les DataFrames Polars en entree, avec conservation des noms de colonnes en sortie via set_output.

python
import polars as pl
from sklearn.preprocessing import StandardScaler

df = pl.DataFrame({'a': [1.0, 2.0, 3.0], 'b': [4.0, 5.0, 6.0]})
scaler = StandardScaler().set_output(transform='polars')
result = scaler.fit_transform(df)
print(type(result))  # polars.DataFrame
print(result.columns)  # ['a', 'b']

HistGradientBoosting categorique

HistGradientBoostingClassifier gere nativement les colonnes categoriques sans encodage prealable, simplifiant les pipelines.

python
from sklearn.ensemble import HistGradientBoostingClassifier
import numpy as np

X = np.array([[0, 1.2], [1, 3.4], [2, 5.6], [0, 2.1]])
y = [0, 1, 1, 0]

clf = HistGradientBoostingClassifier(
    categorical_features=[0],  # colonne 0 = categorique
)
clf.fit(X, y)
print(clf.predict(X))  # [0, 1, 1, 0]

Sources