0

J'ai implémenté le classificateur KNN dans java et j'ai obtenu un résultat étrange. Si je fais une analyse de sentiment sur un ensemble de données, j'ai obtenu 55% de précision. De 100 document de test 55 correctement classé comme revue négative ou positive et 45 incorrectement. Mais si j'utilise le KNN pour la catégorie de l'exemple de caméra ou de livres, alors j'ai obtenu une précision de 95%.KNN classifier l'analyse de sentiment vs la précision de l'analyse de catégorie

Il y a quelques explications mon code est faux? Une idée?

+1

Pommes aux oranges? Comparez-vous la performance de KNN à l'analyse des sentiments et la performance de KNN sur la catégorisation? Vous seriez en utilisant des fonctionnalités radicalement différentes dans ces cas .... ce n'est pas la faute de l'algorithme si ceux ne fonctionnent pas bien .... – Crisfole

+0

@Christopher Pfohl oui, je compare les performances KNN dans la catégorisation et l'analyse des sentiments. Que voulez-vous dire des caractéristiques radicalement différentes? J'ai utilisé le stemming et les mots d'arrêt. – flatronka

+0

merci @gary, mais j'ai juste besoin d'une théorie, mon code est énorme de plus de 15 classes, interfaces, j'ai besoin d'une théorie que c'est possible ou non. – flatronka

Répondre

3

@Christopher Pfohl a raison. Ce sont des approches différentes avec une différence clé pour vous. L'analyse des sentiments (basée sur un simple sac de mots) est beaucoup plus compliquée, en général, que la classification des catégories dans votre cas. Btw, juste une précision, 55% n'est pas la précision, c'est la précision. (En savoir plus: http://en.wikipedia.org/wiki/Accuracy_and_precision#In_binary_classification)

+0

Merci pour votre réponse J'ai utilisé cette équation: http://static.usenix.org/event/sec02/full_papers/liao/liao_html/node4.html Pouvez-vous fournir une analyse pour l'analyse des sentiments? – flatronka

+0

Vous devriez mieux comprendre le processus de classification. Les deux processus sont la classification. Cependant, comme la «perspective» dans laquelle vous les classerez est différente (sentiment vs catégorie), vous devez représenter l'information différemment. Exemple: Pour l'analyse du sentiment, les mots comme «bon» et «mauvais» sont vraiment importants, alors qu'ils sont probablement du bruit pour la similarité des sujets. Le modèle est le même, mais la représentation des données change. – miguelmalvarez

+0

Merci, je vais accepter votre explication. Pouvez-vous fournir une source sur la façon dont je peux résoudre le problème de la représentation des données? – flatronka