Introduzione a XGBoost

Extreme Gradient Boosting con XGBoost

Sergey Fogelson

Head of Data Science, TelevisaUnivision

Cos'è XGBoost?

  • Libreria di Machine Learning per gradient boosting ottimizzata
  • Sviluppata originariamente in C++
  • Offre API in più lingue:
    • Python
    • R
    • Scala
    • Julia
    • Java
Extreme Gradient Boosting con XGBoost

Perché XGBoost è così popolare?

  • Velocità e prestazioni
  • Algoritmo di base parallelizzabile
  • Supera costantemente i metodi a singolo algoritmo
  • Prestazioni allo stato dell'arte in molti compiti ML
Extreme Gradient Boosting con XGBoost

Usare XGBoost: un esempio rapido

import xgboost as xgb
import pandas as pd
import numpy as np
from sklearn.model_selection import train_test_split

class_data = pd.read_csv("classification_data.csv") X, y = class_data.iloc[:,:-1], class_data.iloc[:,-1]
X_train, X_test, y_train, y_test= train_test_split(X, y, test_size=0.2, random_state=123)
xg_cl = xgb.XGBClassifier(objective='binary:logistic', n_estimators=10, seed=123)
xg_cl.fit(X_train, y_train) preds = xg_cl.predict(X_test)
accuracy = float(np.sum(preds==y_test))/y_test.shape[0] print("accuracy: %f" % (accuracy))
accuracy: 0.78333
Extreme Gradient Boosting con XGBoost

Iniziamo a usare XGBoost!

Extreme Gradient Boosting con XGBoost

Preparing Video For Download...