Rappel sur les pipelines avec sklearn

Amorçage de gradient avancé avec XGBoost

Sergey Fogelson

Head of Data Science, TelevisaUnivision

Revue de pipeline

  • Prend en entrée une liste de 2-uplets nommés (nom, étape_du_pipeline)
  • Les tuples peuvent contenir tout estimateur ou transformateur compatible scikit-learn
  • Pipeline implémente les méthodes fit/predict
  • Peut servir d'estimateur d'entrée pour la recherche par grille/aléatoire et les méthodes cross_val_score
Amorçage de gradient avancé avec XGBoost

Exemple de pipeline scikit-learn

import pandas as pd
from sklearn.ensemble import RandomForestRegressor
import numpy as np
from sklearn.preprocessing import StandardScaler
from sklearn.pipeline import Pipeline
from sklearn.model_selection import cross_val_score

names = ["crime","zone","industry","charles","no","rooms", "age", "distance","radial","tax","pupil","aam","lower","med_price"] data = pd.read_csv("boston_housing.csv",names=names) X, y = data.iloc[:,:-1], data.iloc[:,-1]
rf_pipeline = Pipeline[("st_scaler", StandardScaler()), ("rf_model",RandomForestRegressor())] scores = cross_val_score(rf_pipeline,X,y, scoring="neg_mean_squared_error",cv=10)
Amorçage de gradient avancé avec XGBoost

Exemple de pipeline scikit-learn

final_avg_rmse = np.mean(np.sqrt(np.abs(scores)))

print("Final RMSE:", final_avg_rmse)
Final RMSE: 4.54530686529
Amorçage de gradient avancé avec XGBoost

Prétraitement I : LabelEncoder et OneHotEncoder

  • LabelEncoder : Convertit une colonne catégorielle de chaînes en entiers
  • OneHotEncoder : Prend la colonne d'entiers et la code en variables fictives
  • Ne peut pas être fait dans un pipeline
Amorçage de gradient avancé avec XGBoost

Prétraitement II : DictVectorizer

  • Utilisé traditionnellement en traitement de texte
  • Convertit des listes d'attributs en vecteurs
  • Il faut convertir le DataFrame en liste d'entrées de dictionnaire
  • Consultez la documentation scikit-learn
Amorçage de gradient avancé avec XGBoost

Construisons des pipelines !

Amorçage de gradient avancé avec XGBoost

Preparing Video For Download...