J'ai un ensemble de données de classe binaire (0/1) avec un grand biais vers la classe "0" (environ 30000 vs 1500). Il y a 7 caractéristiques pour chaque instance, pas de valeurs manquantes. Lorsque j'utilise le J48 ou tout autre classificateur d'arbre, j'obtiens presque toutes les instances «1» mal classées comme «0».Comment surévaluer volontairement les classificateurs Weka?
En définissant le classificateur sur "non maillé", définissant le nombre minimal d'occurrences par feuille sur 1, définissant le facteur de confiance sur 1, ajoutant un attribut factice avec le numéro d'ID de l'instance.
Je n'arrive pas à créer un modèle qui surpasse mes données!
J'ai également essayé presque tous les autres classificateurs fournis par Weka, mais j'ai obtenu des résultats similaires. L'utilisation de IB1 permet d'obtenir une précision de 100% (rame sur la rame), donc ce n'est pas un problème d'instances multiples avec les mêmes valeurs de caractéristiques et différentes classes.
Comment créer un arbre complètement non-élagué? Ou sinon forcer Weka à surpasser mes données?
Merci.
Mise à jour: D'accord, c'est absurde. Je l'ai utilisé seulement environ 3100 négatifs et 1200 exemples positifs, ce qui est l'arbre que je suis arrivé (unpruned!):
J48 unpruned tree
------------------
F <= 0.90747: 1 (201.0/54.0)
F > 0.90747: 0 (4153.0/1062.0)
Inutile de dire que, IB1 donne toujours 100% de précision. Je ne sais pas comment je l'ai manqué - SimpleCart ne fonctionne pas et donne 100% de précision dans le train; Le SimpleCart élagué n'est pas aussi biaisé que J48 et a un faux positif positif et négatif.
question connexe possible: http://stackoverflow.com/ questions/2519997/différents-poids-de-faux-positif-et-faux-négatif-dans-réseau neuronal – Amro