Introduktion till XGBoost

Extreme Gradient Boosting med XGBoost

Sergey Fogelson

Head of Data Science, TelevisaUnivision

Vad är XGBoost?

  • Optimerat bibliotek för gradientboostning
  • Ursprungligen skrivet i C++
  • Har API:er för flera språk:
    • Python
    • R
    • Scala
    • Julia
    • Java
Extreme Gradient Boosting med XGBoost

Varför är XGBoost så populärt?

  • Snabbhet och prestanda
  • Kärnalgoritmen är paralleliserbar
  • Överträffar konsekvent metoder med enskilda algoritmer
  • Topprestanda i många maskininlärningsuppgifter
Extreme Gradient Boosting med XGBoost

XGBoost i praktiken: ett snabbt exempel

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 med XGBoost

Nu kör vi en övning!

Extreme Gradient Boosting med XGBoost

Preparing Video For Download...