Arbre de décision vs classificateur Naive Bayes

Je fais des recherches sur différentes techniques d’exploration de données et je suis tombé sur quelque chose que je ne pouvais pas comprendre. Si quelqu’un a une idée, ce serait génial.

Dans quels cas est-il préférable d’utiliser un arbre de décision et d’autres cas un classificateur Naive Bayes?

Pourquoi en utiliser un dans certains cas? Et l’autre dans différents cas? (En regardant ses fonctionnalités, pas à l’algorithme)

Quelqu’un at-il des explications ou des références à ce sujet?

Les arbres de décision sont très flexibles, faciles à comprendre et faciles à déboguer. Ils travailleront avec des problèmes de classification et des problèmes de régression. Donc, si vous essayez de prédire une valeur catégorielle comme (rouge, vert, haut, bas) ou si vous essayez de prédire une valeur continue comme 2.9, 3.4, etc. Les arbres de décision gèrent les deux problèmes. Probablement l’une des choses les plus cool sur les arbres de décision est qu’ils ont seulement besoin d’une table de données et ils construiront un classificateur directement à partir de ces données sans avoir besoin d’un travail de conception préalable. Pour certains degrés, les propriétés qui ne comptent pas ne seront pas choisies comme des divisions et seront finalement élaguées, ce qui les rend très tolérantes. Pour commencer c’est réglé et l’oublier.

Cependant, l’inconvénient. Les arbres de décision simples ont tendance à surpasser les données de formation, de sorte que d’autres techniques, c’est-à-dire que vous devez généralement tailler les arbres et ajuster les procédures d’élagage. Vous n’avez eu aucun coût de conception initial, mais vous devrez payer pour le réglage des performances des arbres. De plus, des arbres de décision simples divisent les données en carrés, ce qui signifie que la création de grappes autour de choses implique une division importante pour englober des grappes de données. Diviser beaucoup conduit à des arbres complexes et augmente la probabilité que vous montez trop. Les grands arbres sont élagués, alors même si vous pouvez créer un cluster autour de certaines fonctionnalités dans les données, celui-ci risque de ne pas survivre au processus d’élagage. Il existe d’autres techniques, telles que les divisions de substitution, qui vous permettent de diviser plusieurs variables à la fois, créant des divisions dans l’espace qui ne sont ni horizontales ni perpendiculaires (0

Naive Bayes exige que vous construisiez une classification à la main. Il n’y a pas moyen de simplement lancer un tas de données tabulaires et de choisir les meilleures fonctionnalités qu’il utilisera pour classer. Choisir quelles fonctionnalités sont à vous de choisir. Les arbres de décisions sélectionneront les meilleures fonctionnalités à partir de données tabulaires. S’il y avait un moyen pour Naive Bayes de choisir des fonctionnalités, vous vous seriez rapproché des mêmes techniques qui font fonctionner les arbres décisionnels. Cela signifie que vous devrez peut-être combiner Naive Bayes avec d’autres techniques statistiques pour vous guider vers les fonctionnalités les mieux classées et qui pourraient utiliser des arbres de décision. Les bayes naïfs répondront en tant que classificateur continu. Il existe des techniques pour l’adapter à la prédiction catégorielle, mais elles répondront en termes de probabilités comme (A 90%, B 5%, C 2,5% D 2,5%). il n’est donc pas nécessaire d’élaguer ou de traiter le réseau. Cela les rend plus simples algorithmes à mettre en œuvre. Cependant, ils sont plus difficiles à déboguer et à comprendre car toutes les probabilités sont multipliées par 1000, il faut donc faire attention à tester ce que vous attendez. Naive Bayes se débrouille assez bien lorsque les données d’entraînement ne contiennent pas toutes les possibilités, ce qui peut être très bon avec de faibles quantités de données. Les arbres de décision fonctionnent mieux avec beaucoup de données que Naive Bayes.

Naive Bayes est beaucoup utilisé en robotique et en vision par ordinateur, et se débrouille très bien avec ces tâches. Les arbres de décision fonctionnent très mal dans ces situations. Apprendre à un arbre de décision à reconnaître les mains de poker en regardant des millions de mains de poker ne fonctionne pas très bien parce que les quinte flush royale et les quads sont si peu nombreux qu’ils sont souvent éliminés. S’il est élagué de l’arbre résultant, il classera mal les mains importantes (rappelez-vous la discussion sur les grands arbres ci-dessus). Maintenant, pensez simplement si vous essayez de diagnostiquer le cancer en utilisant cela. Le cancer ne survient pas en grande quantité dans la population et il sera probablement éliminé. Les bonnes nouvelles sont que cela peut être géré en utilisant des poids afin de peser une main gagnante ou d’avoir un cancer plus élevé qu’une perte de main ou de ne pas avoir le cancer et qui le propulse dans l’arbre. Là encore, il s’agit de régler l’arbre résultant dans la situation dont j’ai déjà parlé.

Les arbres de décision sont soignés car ils vous indiquent quels intrants sont les meilleurs prédicateurs des sorties, si bien que les arbres de décision peuvent vous guider pour trouver s’il existe une relation statistique entre une entrée donnée et la force de cette relation. Souvent, l’arbre de décision résultant est moins important que les relations qu’il décrit. Ainsi, les arbres de décision peuvent être utilisés comme outil de recherche lorsque vous en apprenez davantage sur vos données afin que vous puissiez créer d’autres classificateurs.

Si vous décidez de résoudre un problème en utilisant des arbres décisionnels plutôt que des baies naïves, il est souvent préférable de tester chacun d’entre eux. Construisez un arbre de décision et créez un classificateur bayésien naïf, puis lancez-vous à l’aide des données de formation et de validation dont vous disposez. Les meilleures performances seront probablement plus performantes sur le terrain. Et c’est toujours une bonne idée de convertir chacun de ceux-ci en prédicteurs de KNN (K-Franklin), car il a été démontré que k-étroite les exécute dans certaines situations et que KNN est un algorithme simple à implémenter. Si KNN fonctionne mieux que les deux autres vont avec.

Quelques sources:

Le manuel sur les arbres de décision basés sur CART. Ce livre couvre l’algorithme CART, mais aborde également les arbres de décision, les poids, les valeurs manquantes, les fractionnements de substitution, le renforcement, etc. http://www.amazon.com/Classification-Regression-Wadsworth-Statistics-Probability/dp/0412048418

Une introduction plus douce à CART https://www.youtube.com/watch?v=p17C9q2M00Q

Comparaison des algorithmes – notez que KNN, Decision Trees, C4.5 et SVM se débrouillent assez bien sur la plupart des tests. http://www4.ncsu.edu/~arezaei2/paper/JCIT4-184028_Camera%20Ready.pdf

Une autre comparaison des algorithmes – Boosted Decision Trees et aléatoire au dessus de la liste avec KNN au milieu: http://www.cs.cornell.edu/~caruana/ctp/ct.papers/caruana.icml06.pdf

Une autre bonne parsing de diverses techniques: http://www.quora.com/What-are-the-advantages-of-different-classification-algorithms