Kann ich mit NLTK feststellen, ob ein Kommentar positiv oder negativ ist?

8

Kannst du mir ein einfaches Beispiel zeigen mit Ссылка , um festzustellen, ob ein String über eine fröhliche oder verärgerte Stimmung ist?

    
Juanjo Conti 11.08.2010, 22:25
quelle

4 Antworten

4

NLTK kann nicht out-of-the-box, aber wenn Sie nach verwandten Forschung auf diesem Gebiet suchen, werfen Sie einen Blick auf dieses Papier auf Offensive Spracherkennung . Die gleichen Methoden könnten angepasst werden, um Kommentare zu erkennen, die nicht beleidigend / unangreifbar sind, sondern stattdessen glücklich / unglücklich sind. Das primäre Softwarepaket, das in diesem Projekt zur Textklassifizierung verwendet wird, heißt WEKA und verwendet mehrere klassifizierte Klassifikatoren in vorherigen Beispielen, um festzustellen, ob Sprache beleidigend ist oder nicht (und bei dieser Methode einen einstellbaren Schwellenwert verwendet).

    
Chris 12.08.2010 13:22
quelle
2

Pattern ist auch eine Testfahrt wert: Sie können zwei Opinion-Mining-Experimente direkt auf der Projekthomepage.

Ссылка

Ссылка

    
Savino Sguera 08.08.2011 22:59
quelle
0

Nopey.

Dies ist eine Aufgabe, die weit über die Fähigkeiten von NLTK oder eines grammatischen Parsers hinausgeht, der bekannt ist oder realistischerweise vorgestellt werden kann. Schauen Sie sich das NLTK-Buch an, um zu sehen, welche Art von Aufgaben es erfüllen kann, die weit sind, weit entfernt von Ihrem angegebenen Zweck.

Als billiges Beispiel:

  

Ich habe es wirklich genossen, mit Ihrem Papier meinen Hund zu trainieren.

Analysiere das mit NLTK und du bekommst

%Vor%

Wo der Syntaxbaum mir sagen würde, dass "genossen" das zentrale (Vergangenheitsform) Verb des einfachen Satzes ist. Etwas zu genießen ist gut. Etwas zu trainieren ist generell eine gute Sache. Gerundium, Substantive, Komparative und dergleichen sind relativ neutral. Also geben Sie eine gute Punktzahl von 0,90.

Außer ich meine wirklich, dass ich entweder meinen Hund mit Ihrem Papier geschlagen habe oder es auf dem Papier ausgeschieden habe, was Sie wahrscheinlich für ein nicht gut Ding halten würden.

Stellen Sie eine Person für diese Erkennungsaufgabe ein.

Hinzugefügt für diejenigen, die sich vorstellen, dass selbst trainierte Klassifikatoren von großem Nutzen sind :

Klassifizieren Sie diesen realen Eintrag aus einem echten Kundenrezensionskorpus mit einem beliebigen Klassifizierer, den Sie für ein beliebiges Dataset trainieren möchten:

  

Diese Kamera fährt mit der automatischen Fokussierung fort   Auto-Modus mit einem summenden Ton, der   kann nicht gestoppt werden. Es wäre wirklich   gut, wenn sie eine Option gegeben haben   Stoppen Sie diese Autofokussierung. wenn du willst   um das Datum und die Uhrzeit zu haben   Bild, es ist nur durch ihre   Software, die das Datum des Bildes liest   und Zeit von den Metadaten des Bildes.   Also wenn du deinen Kartenleser benutzt und   kopiere Bilder - du hast es noch einmal geschafft   öffne sie durch ihre Software zu   Stellen Sie Datum und Uhrzeit ein. Auch darin   Es gibt keine direkte Möglichkeit, ein Datum hinzuzufügen   und Zeit   - Sie müssen sagen "Bilder drucken" in ein anderes Verzeichnis, in dem es gibt   eine Option zum Festlegen von Datum und Uhrzeit   . Selbst der kleinste Shake   verzerrt Ihr Bild völlig. Innen   Bilder waren nicht so klar. Du musst   habe 'on', um es trotzdem zu bekommen   Ihr Zimmer ist gut beleuchtet. Die Objektivkappe ist   ein wirklich nerviges. die Filmausschnitte   genommen wird immer etwas "Lärm" haben   es - du kannst das nicht vermeiden.

Die schlechteste Stimmung Klassifikation, die ich erhielt, war "völlig zweideutig", aber Menschen können leicht feststellen, dass dies alles andere als komplementär ist. Dies war kein zufällig ausgewähltes Datum, sondern eines, das für negative Verzerrungen ohne "Hass" oder "Suxz" oder ähnliches ausgewählt wurde.

    
msw 11.08.2010 23:02
quelle
0

Sie suchen nach einer Technik, die einen maschinellen Lernklassifikator verwendet, um zu bestimmen, ob ein Textteil positiv oder negativ ist. Verschiedene Forscherteams haben verschiedene Versuche unternommen (z. B. Ссылка und Ссылка ) können wir eine Genauigkeit von 80% bis 90% feststellen, wenn festgestellt wird, ob eine Produktbewertung positiv oder negativ ist.

Aufgrund der Kürze Ihrer Frage ist es für mich nicht offensichtlich, ob die Entscheidung, ob eine Produktbewertung positiv oder negativ ist, dieselbe Aufgabe ist oder nur eine verwandte Aufgabe, aber ich würde vorschlagen, einfach zu beginnen mit Bag-of-words-Klassifizierung mit einem Bayes-Klassifizierer (die NLTK sollte in der Lage sein zu handhaben), und verbessern Sie Ihre Techniken von dort je nachdem, wie die Genauigkeit ausfällt.

Leider habe ich nie NLTK (noch Python) verwendet, daher kann ich Ihnen kein Codebeispiel dafür geben, wie man NLTK dafür verwendet.

    
Ken Bloom 17.08.2010 20:34
quelle

Tags und Links