Quand devrais-je utiliser Gini Impurity par opposition à Information Gain?

66

Est-ce que quelqu'un peut pratiquement expliquer la raison derrière l' impureté de Gini par rapport au gain d'information (basé sur Entropie)?

Quelle métrique est préférable d'utiliser dans différents scénarios lors de l'utilisation d'arbres de décision?

Krish Mahajan
la source
5
@ Anony-Mousse J'imagine que c'était évident avant votre commentaire. La question n'est pas de savoir si les deux ont leurs avantages, mais dans quels scénarios l'un est meilleur que l'autre.
Martin Thoma
J'ai proposé "Gain d'information" au lieu de "Entropie", car il est assez proche (IMHO), comme indiqué dans les liens associés. Ensuite, la question a été posée sous une forme différente dans Quand utiliser l'impureté de Gini et Quand utiliser le gain d'informations?
Laurent Duval
1
J'ai posté ici une interprétation simple de l'impureté de Gini qui pourrait être utile.
Picaud Vincent

Réponses:

47

Les impuretés de Gini et Entropie d’Information sont à peu près les mêmes. Et les gens utilisent les valeurs de manière interchangeable. Voici les formules des deux:

  1. Gini:gjenje(E)=1-Σj=1cpj2
  2. Entropie:H(E)=-Σj=1cpjbûchepj

Si j'avais le choix, j'utiliserais l'impureté de Gini, car elle ne nécessite pas le calcul de fonctions logarithmiques, qui nécessitent beaucoup de calcul. La forme fermée de sa solution peut également être trouvée.

Quelle métrique est préférable d'utiliser dans différents scénarios lors de l'utilisation d'arbres de décision?

L'impureté de Gini, pour les raisons indiquées ci-dessus.

, Donc ils sont à peu près même en ce qui concerne l' analyse CART.

Référence utile pour la comparaison informatique des deux méthodes

Dawny33
la source
1
Il est si courant de voir une formule d'entropie, alors que ce qui est vraiment utilisé dans l'arbre de décision ressemble à une entropie conditionnelle. Je pense que c'est important distinction ou manque quelque chose?
user1700890
@ user1700890 L'algorithme ID3 utilise Info. gagner de l'entropie. J'ai besoin de lire sur l'entropie conditionnelle. Probablement une amélioration par rapport à ID3 :)
Dawny33
1
Je pense que votre définition de l'impertinence du gini est peut-être fausse: fr.wikipedia.org/wiki/Decision_tree_learning#Gini_impurity
Martin Thoma
22

En règle générale, votre performance ne changera pas que vous utilisiez l’impureté Gini ou l’entropie.

Laura Elena Raileanu et Kilian Stoffel ont comparé à la fois dans " Comparaison théorique entre l'indice de Gini et les critères de gain d'information ". Les remarques les plus importantes étaient:

  • Peu importe que vous utilisiez une impureté gini ou une entropie, dans 2% des cas seulement.
  • L'entropie peut être un peu plus lente à calculer (car elle utilise le logarithme).

On m'a dit une fois que les deux mesures existaient parce qu'elles avaient émergé dans différentes disciplines scientifiques.

Archie
la source
16

Dans le cas d'une variable à deux valeurs, apparaissant avec les fractions f et (1-f),
le gini et l'entropie sont donnés par:
gini = 2 * f (1-f)
entropie = f * ln (1 / f) + (1-f) * ln (1 / (1-f))
Ces mesures sont très similaires si elles sont mises à l'échelle à 1,0 (tracé 2 * gini et entropie / ln (2)):

Valeurs de Gini (y4, violet) et d'entropie (y3, vert) mises à l'échelle pour la comparaison

DanLvii Dewey
la source
14

Gini est destiné aux attributs continus et Entropy aux attributs figurant dans les classes.

Gini est de minimiser les erreurs de classification
Entropy est pour l'analyse exploratoire

L'entropie est un peu plus lente à calculer

NIMISHAN
la source
7

0<vous<1,bûche(1-vous)=-vous-vous2/2-vous3/3+0<p<1,bûche(p)=p-1-(1-p)2/2-(1-p)3/3+
0<p<1,-pbûche(p)=p(1-p)+p(1-p)2/2+p(1-p)3/3+
Critères normalisés de Gini et d'entropie

En fin de compte, comme l'explique @NIMISHAN, Gini est plus approprié pour minimiser les erreurs de classification car il est symétrique à 0,5, alors que l'entropie sera plus pénalisée pour les petites probabilités.

ClementWalter
la source
3

L'entropie prend un peu plus de temps de calcul que Gini Index à cause du calcul du journal, c'est peut-être pourquoi Gini Index est devenu l'option par défaut pour de nombreux algorithmes ML. Mais de Tan et. al livre Introduction à l'exploration de données

"Les mesures d'impureté sont tout à fait cohérentes les unes avec les autres ... En effet, la stratégie utilisée pour élaguer l'arbre a un impact plus important sur l'arbre final que le choix de la mesure d'impureté."

Il semble donc que le choix de la mesure d'impureté ait peu d'effet sur les performances des algorithmes à arbre de décision unique.

Aussi. "La méthode Gini ne fonctionne que lorsque la variable cible est une variable binaire." - Apprentissage de l'analyse prédictive avec Python.

Rakend Dubba
la source
3

Je fais des optimisations sur la classification binaire depuis une semaine et, et dans tous les cas, l'entropie surpasse de manière significative Gini. Cela peut être spécifique à un ensemble de données, mais il semblerait que tenter les deux alors que le réglage des hyperparamètres soit un choix rationnel, plutôt que de faire des hypothèses sur le modèle à l’avance.

Vous ne savez jamais comment les données vont réagir tant que vous n'avez pas exécuté les statistiques.

H Froedge
la source
0

Conformément à la parcimonie principale, Gini surpasse l'entropie en ce qui concerne la facilité de calcul (il est évident que le journal nécessite davantage de calculs que la simple multiplication au niveau du processeur / de la machine).

Mais l'entropie a certainement un avantage dans certains cas de données impliquant un déséquilibre élevé.

Puisque l'entropie utilise le journal des probabilités et en la multipliant par les probabilités d'événement, ce qui se passe à l'arrière-plan est que la valeur des probabilités plus faibles est augmentée.

Si votre distribution de probabilité de données est exponentielle ou Laplace (comme dans le cas d'un apprentissage en profondeur où nous avons besoin d'une distribution de probabilité au point aigu), l'entropie surpasse Gini.

Pour donner un exemple si vous avez 2 événements, une probabilité de .01 et une autre probabilité de .99.

A Gini, le pourcentage de probabilité sera égal à .01 ^ 2 + .99 ^ 2, .0001 + .9801, ce qui signifie qu'une probabilité plus faible ne joue aucun rôle car tout est régi par une probabilité majoritaire.

Maintenant en cas d'entropie .01 * log (.01) +. 99 * log (.99) = .01 * (- 2) + .99 * (-. 00436) = -.02 à .00432 maintenant dans ce cas on voit que les probabilités les plus faibles sont plus faibles en fonction de l'âge et du poids.

Gaurav Dogra
la source