Kannst du mir ein einfaches Beispiel zeigen mit Ссылка , um festzustellen, ob ein String über eine fröhliche oder verärgerte Stimmung ist?
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).
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.
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.