Знайомство з XGBoost

Екстремальний градієнтний бустинг з XGBoost

Sergey Fogelson

Head of Data Science, TelevisaUnivision

Що таке XGBoost?

  • Оптимізована бібліотека градієнтного бустингу для машинного навчання
  • Спершу написана C++
  • Має API кількома мовами:
    • Python
    • R
    • Scala
    • Julia
    • Java
Екстремальний градієнтний бустинг з XGBoost

Чому XGBoost такий популярний?

  • Швидкість і продуктивність
  • Ядровий алгоритм паралелізується
  • Стабільно перевершує окремі алгоритми
  • Рівень state-of-the-art у багатьох задачах ML
Екстремальний градієнтний бустинг з XGBoost

XGBoost на практиці: короткий приклад

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
Екстремальний градієнтний бустинг з XGBoost

Почнімо працювати з XGBoost!

Екстремальний градієнтний бустинг з XGBoost

Preparing Video For Download...