Question

Je suis en train de former un classificateur Naive Bayes avec des mots positifs / négatifs DEGAGER un sentiment. exemple:

J'adore ce film :))

Je déteste quand il pleut :(

L'idée est que j'extrais des phrases positives ou négatives sur la base des emoctions utilisés, mais pour former un classificateur et persévère dans la base de données.

Le problème est que j'ai de telles peines plus de 1 million, donc si je forme mot par mot, la base de données va pour un toss. Je veux supprimer tout mot exemple non pertinent « je », « ceci », « quand », « il » de sorte que nombre de fois je dois faire une requête de base de données est moins.

S'il vous plaît me aider à résoudre ce problème à me suggérer de meilleures façons de le faire

Merci

Autres conseils

Il y a deux approches communes:

  1. d'arrêt .
  2. balise
  3. POS les phrases et jeter les parties de la parole que vous pensez ne sont pas intéressant.

Dans les deux cas, déterminer quels sont les mots / balises POS sont peut être fait pertinent à l'aide d'une mesure telle que PMI .

Rappelez-vous: les listes d'arrêt standard de la recherche d'information fonctionne ou pas dans l'analyse des sentiments. J'ai lu récemment un document (pas de référence, désolé) où il a été affirmé que! et?, souvent enlevés dans les moteurs de recherche, sont des indices précieux pour l'analyse des sentiments. (Donc, peut « je », surtout. Quand vous avez également une catégorie neutre.)

Modifier : vous pouvez également jeter en toute sécurité tout ce qui se produit qu'une seule fois dans l'ensemble de la formation (appelé hapax ). Les mots qui se produisent une fois ont peu de valeur d'information pour votre classificateur, mais peut prendre beaucoup d'espace.

Pour réduire la quantité de données extraites de la base de données, vous pouvez créer dans votre base de données un dictionnaire - une table qui mappe mots * aux numéros ** - et que récupérer uniquement un vecteur numérique pour la formation et une phrase complète pour le manuel marquage d'un sentiment.

| * Pas de publication scientifique vient à l'esprit, mais peut-être il suffit d'utiliser uniquement tiges ou lemmes au lieu des mots. Il réduirait la taille du dictionnaire.

| ** Si cette opération tue votre base de données, vous pouvez créer un dictionnaire dans une application locale - qui utilise un moteur d'indexation de texte (par exemple, Lucene) - et stocker uniquement le résultat dans votre base de données.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top