Введение в XGBoost

Экстремальный градиентный бустинг с XGBoost

Sergey Fogelson

Head of Data Science, TelevisaUnivision

Что такое XGBoost?

  • Оптимизированная библиотека машинного обучения на основе градиентного бустинга
  • Изначально написана на C++
  • Имеет API для нескольких языков:
    • Python
    • R
    • Scala
    • Julia
    • Java
Экстремальный градиентный бустинг с XGBoost

Почему XGBoost так популярен?

  • Высокая скорость и производительность
  • Основной алгоритм поддерживает параллельное выполнение
  • Стабильно превосходит одиночные алгоритмы
  • Передовые результаты во многих задачах машинного обучения
Экстремальный градиентный бустинг с 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...