Усереднення

Ансамблеві методи в Python

Román de las Heras

Data Scientist, Appodeal

Підрахунок драже

вгадування кількості драже на фестивалі ягід.jpg

Як зробити хорошу оцінку?

  • Вгадування (випадкове число)
  • Оцінка за об'ємом
  • Багато інших підходів

Фактичне значення ~ середнє(оцінок)

Ансамблеві методи в Python

Усереднення (м'яке голосування)

Властивості

  • Задачі класифікації та регресії
  • М'яке голосування: середнє
    • Регресія: середнє передбачених значень
    • Класифікація: середнє передбачених ймовірностей
  • Потрібно щонайменше 2 оцінювачі
Ансамблеві методи в Python

Ансамбль усереднення в scikit-learn

Averaging Classifier

from sklearn.ensemble import VotingClassifier

clf_voting = VotingClassifier( estimators=[ ('label1', clf_1), ('label2', clf_2), ... ('labelN', clf_N)], voting='soft', weights=[w_1, w_2, ..., w_N] )

Averaging Regressor

from sklearn.ensemble import VotingRegressor

reg_voting = VotingRegressor( estimators=[ ('label1', reg_1), ('label2', reg_2), ... ('labelN', reg_N)], weights=[w_1, w_2, ..., w_N] )
Ансамблеві методи в Python

Приклад scikit-learn

# Instantiate the individual models
clf_knn = KNeighborsClassifier(5)
clf_dt = DecisionTreeClassifier()
clf_lr = LogisticRegression()
# Create an averaging classifier
clf_voting = VotingClassifier(
    estimators=[
       ('knn', clf_knn), 
       ('dt', clf_dt), 
       ('lr', clf_lr)],
    voting='soft',
    weights=[1, 2, 1]
)
Ансамблеві методи в Python

Смерті у «Грі престолів»

Ціль:

  • Передбачити, чи персонаж живий, чи ні

Ознаки:

  • Вік
  • Стать
  • У яких книгах з'являється
  • Популярність
  • Чи живі родичі

shutterstock_1038048793.jpg

Ансамблеві методи в Python

Час потренуватися!

Ансамблеві методи в Python

Preparing Video For Download...