Голосування

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

Román de las Heras

Data Scientist, Appodeal

Запитайте в аудиторії

Запитайте в аудиторії

Мудрість натовпу

  • Колективний інтелект
  • Велика група людей >= один експерт
  • Розв'язання задач
  • Прийняття рішень
  • Інновації
  • Прогнозування
Ансамблеві методи в Python

Голосування більшістю

Властивості

  • Задачі класифікації
  • Більшість голосів: мода
  • Непарна кількість класифікаторів (3+)

багатомодальний-прогноз.png

Ознаки мудрого натовпу:

  • Різноманітність: різні алгоритми або набори даних
  • Незалежність і низька кореляція
  • Використання індивідуальних знань
  • Агрегація індивідуальних прогнозів
Ансамблеві методи в Python

Ансамбль Voting у scikit-learn

from sklearn.ensemble import VotingClassifier

clf_voting = VotingClassifier( estimators=[ ('label1', clf_1), ('label2', clf_2), ('labelN', clf_N)])

Оцініть ефективність

# Get the accuracy score 
acc = accuracy_score(y_test, y_pred)
print("Accuracy: {:0.3f}".format(acc))
Accuracy: 0.938
# Create the individual models
clf_knn = KNeighborsClassifier(5)
clf_dt = DecisionTreeClassifier()
clf_lr = LogisticRegression()

# Create voting classifier clf_voting = VotingClassifier( estimators=[ ('knn', clf_knn), ('dt', clf_dt), ('lr', clf_lr)])
# Fit it to the training set and predict clf_voting.fit(X_train, y_train) y_pred = clf_voting.predict(X_test)
Ансамблеві методи в Python

Спробуймо!

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

Preparing Video For Download...