Moyennage

Méthodes d'ensemble en Python

Román de las Heras

Data Scientist, Appodeal

Compter les jelly beans

devinette-de-bonbons-jelly-beans-festival.jpg

Comment obtenir une bonne estimation ?

  • Deviner (nombre au hasard)
  • Approximer le volume
  • Bien d'autres approches

Valeur réelle ~ moyenne(des estimations)

Méthodes d'ensemble en Python

Moyennage (vote « soft »)

Propriétés

  • Problèmes de classification et de régression
  • Vote « soft » : moyenne
    • Régression : moyenne des valeurs prédites
    • Classification : moyenne des probabilités prédites
  • Nécessite au moins 2 estimateurs
Méthodes d'ensemble en Python

Ensemble par moyennage avec scikit-learn

Classificateur par moyennage

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] )

Régréseur par moyennage

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] )
Méthodes d'ensemble en Python

Exemple scikit-learn

# Instancier les modèles individuels
clf_knn = KNeighborsClassifier(5)
clf_dt = DecisionTreeClassifier()
clf_lr = LogisticRegression()
# Créer un classificateur par moyennage
clf_voting = VotingClassifier(
    estimators=[
       ('knn', clf_knn), 
        ('dt', clf_dt), 
        ('lr', clf_lr)],
    voting='soft',
    weights=[1, 2, 1]
)
Méthodes d'ensemble en Python

Morts dans Game of Thrones

Cible :

  • Prédire si un personnage est vivant ou non

Caractéristiques :

  • Âge
  • Genre
  • Livres d'apparition
  • Popularité
  • Si des proches sont vivants ou non

shutterstock_1038048793.jpg

Méthodes d'ensemble en Python

Passons à la pratique !

Méthodes d'ensemble en Python

Preparing Video For Download...