
Merkmalsextraktion: Opinion Mining
Dokumentinformationen
Autor | Christina Schneider |
Schule | Hochschule der Medien Stuttgart |
Fachrichtung | Computer Science and Media |
Dokumenttyp | Masterarbeit |
Sprache | German |
Format | |
Größe | 778.16 KB |
Zusammenfassung
I.Merkmalsextraktion Methodenvergleich
Diese Masterarbeit untersucht verschiedene Ansätze zur Merkmalsextraktion aus Produktbewertungen in Onlineportalen für die Stimmungsanalyse. Verglichen werden manuelle Merkmalslisten (mit Fokus auf Sentimentanalyse), eine automatisierte Methode basierend auf der Häufigkeit von Nomen nach Part-of-Speech Tagging, und ein innovativer Ansatz mit Word2Vec und K-Means Clustering. Die manuelle Methode erweist sich als sehr zeitaufwendig und domänenspezifisch, während die Nomen-Frequenz-Methode eine teilweise Automatisierung bietet, aber weiterhin manuellen Eingriff erfordert. Der Word2Vec-Ansatz zeigt großes Potential für die automatisierte Merkmalsextraktion, indem er semantische Zusammenhänge zwischen Wörtern nutzt und verschiedene Schreibweisen eines Merkmals erkennt.
1. Manuelle Merkmalsextraktion und Sentimentanalyse
Ein erster Ansatz zur Merkmalsextraktion basiert auf der manuellen Erstellung einer Merkmalsliste. Der Fokus liegt hier auf der Sentimentanalyse, der Bestimmung der positiven oder negativen Konnotation zu jedem definierten Merkmal. Diese Methode, die in Arbeiten wie [DLY08; Pon12] beschrieben wird, ist jedoch sehr zeitaufwendig und erfordert tiefes domänenspezifisches Wissen. Die manuelle Liste muss fortlaufend redaktionell gepflegt und erweitert werden, um in realen Anwendungen brauchbar zu bleiben. Die Herausforderung liegt in der Erstellung einer umfassenden und präzisen Merkmalsliste, die alle relevanten Aspekte eines Produkts abdeckt, und in der stetigen Aktualisierung dieser Liste, um neuen Trends und Kundenfeedback gerecht zu werden. Die subjektive Komponente der manuellen Merkmalsauswahl birgt das Risiko von Inkonsistenzen und einer eingeschränkten Generalisierbarkeit der Ergebnisse. Die Abhängigkeit von Expertenwissen schränkt die Skalierbarkeit und die automatisierte Anwendung dieser Methode erheblich ein.
2. Merkmalsextraktion basierend auf Nomen Frequenz
Im Gegensatz zur manuellen Methode wird hier ein automatisierterer Ansatz verfolgt, der auf der Häufigkeitsanalyse von Nomen nach einem Part-of-Speech Tagging basiert. Diese Methode, die in Studien wie [Kim10; Ton11] vorgestellt wird, ermöglicht eine teilweise Automatisierung der Merkmalsextraktion. Zunächst wird mittels Part-of-Speech Tagging die Häufigkeit aller Nomen in den Produktbewertungen ermittelt. Anschließend werden die häufigsten Nomen manuell als Merkmale ausgewählt. Dieser Ansatz reduziert den manuellen Aufwand im Vergleich zur vollständigen manuellen Erstellung der Merkmalsliste, erfordert aber immer noch einen manuellen Eingriff zur Selektion der relevanten Merkmale. Domänenspezifisches Wissen ist weiterhin unerlässlich, um die Bedeutung der häufigsten Nomen im Kontext der Produktbewertungen korrekt einzuschätzen. Eine Herausforderung besteht darin, die optimale Anzahl der zu berücksichtigenden häufigsten Nomen zu bestimmen, um ein Gleichgewicht zwischen der Anzahl der extrahierten Merkmale und ihrer Relevanz zu finden. Die Genauigkeit der Merkmalsextraktion hängt stark von der Qualität des Part-of-Speech Taggings ab, wobei fehlerhafte Annotationen die Ergebnisse beeinträchtigen können.
3. Automatische Merkmalsextraktion mit Word2Vec und K Means Clustering
Ein innovativer Ansatz, der im SemEval-2014 Workshop [Pon+14] vorgestellt wurde, verwendet Word2Vec und K-Means Clustering für die automatisierte Merkmalsextraktion. Dieser Ansatz vermeidet die explizite Abhängigkeit von der Häufigkeit von Nomen und nutzt stattdessen die semantischen Beziehungen zwischen Wörtern, die durch Word2Vec-Modelle gelernt werden. Die besten Ergebnisse bei SemEval-2014 wurden unter anderem mit K-Means Clustern erreicht, die aus Word2Vec Modellen, trainiert mit Daten von Amazon und Yelp [TW14], berechnet wurden. Dieser Ansatz bietet das Potential für eine weitgehend automatisierte Merkmalsextraktion, die weniger von manuellem Eingriff und domänenspezifischem Vorwissen abhängig ist. Die Verwendung von Word2Vec ermöglicht die Identifizierung von Synonymen und semantisch verwandten Wörtern, was die Robustheit gegenüber unterschiedlichen Formulierungen verbessert. K-Means Clustering dient zur Gruppierung ähnlicher Wortvektoren und unterstützt die Identifizierung von Merkmalen. Trotz der Vorteile benötigt dieser Ansatz eine große Menge an Trainingsdaten und eine höhere Rechenleistung im Vergleich zu den anderen Ansätzen.
II.Datenvorverarbeitung und aufbereitung
Die Vorverarbeitung der Produktbewertungen umfasst Schritte wie Rechtschreibkorrektur mit Hunspell und pyenchant (inkl. Erweiterung um Markennamen und umgangssprachliche Ausdrücke), Entfernung von Links und XML-Tags, Tokenisierung mit enchant und die Berücksichtigung von Satzzeichenfehlern. Für das Part-of-Speech Tagging wird der Stanford Tagger (dewac Modell) verwendet, der trotz höherer Genauigkeit im Vergleich zu TnT zeitintensiv ist. Die Datenaufbereitung für Word2Vec Modelle beinhaltet eine zusätzliche Bereinigung, adaptiert von einem Perl Script für Wikipedia Daten.
1. Rechtschreibkorrektur mit pyenchant und Hunspell
Ein wichtiger Schritt der Datenvorverarbeitung ist die Rechtschreibkorrektur, um die Qualität der nachfolgenden Analysen zu verbessern. Hierzu wird die Python-Bibliothek pyenchant verwendet, die mit dem deutschen Hunspell-Wörterbuch (auch in LibreOffice genutzt) arbeitet. Um die Genauigkeit zu steigern, wurde das Wörterbuch um eine Liste von Markennamen und Kategorienamen erweitert. Dies ermöglicht die Korrektur von Schreibfehlern, die sonst die Verwertbarkeit der Texte beeinträchtigen würden [Car+09, Kap. 5.1]. Die Implementierung erfolgt durch die Erstellung einer Textdatei mit den zusätzlichen Wörtern, deren Pfad dann in pyenchant angegeben wird. Der Ansatz zielt darauf ab, Fehler durch falsche Schreibweisen zu minimieren, was die Genauigkeit der späteren Merkmalsextraktion und Sentimentanalyse positiv beeinflusst. Besondere Aufmerksamkeit gilt der Korrektur von Übertreibungen, wie z.B. mehrfachen Ausrufezeichen oder überlangen Buchstabenfolgen, die durch das Entfernen überschüssiger Zeichen korrigiert werden. Die Methode ersetzt unbekannte, aber korrekte Wörter durch ähnliche Wörter aus dem Wörterbuch, was jedoch zu Fehlern führen kann. Um dies zu kompensieren, wurden häufig auftretende, aber nicht im Wörterbuch enthaltene Wörter (z.B. germanisierte englische Begriffe, Umgangssprache) hinzugefügt.
2. Datenbereinigung und Vorbereitung für Word2Vec
Zur Vorbereitung der Daten für das Training der Word2Vec-Modelle wurden die Produktbewertungen zunächst bereinigt. Hierbei wurden alle Links, Referenzen, XML-Tags und ähnliche Elemente entfernt. Dafür wurde ein Perl-Script von Matt Mahoney verwendet, welches ursprünglich für die Bereinigung von Wikipedia-Daten konzipiert war [Anhang A.2] und auch von Mikolov et al. für Word2Vec empfohlen wird. Das Script wurde an die deutsche Sprache angepasst, indem eine Zeile für die Filterung der Umlaute und des ß hinzugefügt und die Ersetzung englischer Zahlwörter reduziert wurde. Diese Bereinigungsschritte sind essentiell, um die Qualität der Trainingsdaten für Word2Vec zu gewährleisten und irrelevante Informationen zu entfernen, die das Ergebnis der Wortvektor-Generierung verzerren könnten. Die Bereinigung konzentriert sich auf das Entfernen von strukturellen Elementen und unerwünschten Zeichen, um einen fokussierten Datensatz für die semantische Analyse zu erhalten. Die Qualität der Datenbereinigung hat einen direkten Einfluss auf die Leistungsfähigkeit der Word2Vec-Modelle und die Genauigkeit der nachfolgenden Merkmalsextraktion.
3. Tokenisierung und Part of Speech Tagging
Die Tokenisierung der Sätze erfolgte mit enchant, einer Bibliothek, die zwar primär für Englisch entwickelt wurde, aber auch im Deutschen gute Ergebnisse liefert. Ein Problem stellt das Fehlen von Leerzeichen nach Satzpunkten dar, welches zu fehlerhaften Tokenisierungen führt. Um dies zu beheben, wurden die Token zusätzlich an den Punkten getrennt. Für das Part-of-Speech (POS) Tagging wurde NLTK mit dem Stanford Tagger (dewac Modell) verwendet. Das dewac-Modell, trainiert mit dem Negra-Korpus [Kru+11] und unter Einbezug von Merkmalen aus dem wac-Korpus [BK06], wurde aufgrund seiner höheren Genauigkeit bei der Annotation unbekannter Wörter gegenüber dem TnT-Tagger bevorzugt [GE09]. Obwohl der Stanford Tagger im Vergleich zum TnT-Tagger länger für die Annotation benötigt, bietet er eine deutlich höhere Genauigkeit bei der POS-Annotation, besonders bei unbekannten Wörtern, was für die Verarbeitung von Online-Bewertungen von Vorteil ist. Das Stuttgart-Tübingen Tagset (STTS) [Anhang A.1] diente als Referenz für das POS-Tagging. Die korrekte Annotation der Wortarten ist grundlegend für die nachfolgende Merkmalsextraktion, insbesondere bei Methoden, die auf der Häufigkeit von Nomen basieren.
III.Merkmalsextraktion mit Word2Vec und K Means Clustering
Die Arbeit nutzt den Skip-gram Algorithmus von Word2Vec mit hierarchischem Softmax zur Erstellung von Wortvektoren. Der Skip-gram Algorithmus wird dem CBOW Algorithmus vorgezogen, da er in früheren Arbeiten bessere Ergebnisse lieferte. K-Means Clustering wird angewendet, um semantische Zusammenhänge zwischen den Wortvektoren zu visualisieren und die Merkmalsextraktion zu verbessern. Die Ergebnisse zeigen, dass Word2Vec Synonyme und semantisch verwandte Wörter effektiv identifiziert, die Rechtschreibkorrektur daher weniger wichtig wird. Die Erweiterung der Merkmalsliste durch Word2Vec führt zu einer signifikanten Steigerung der Merkmalsmenge.
1. Word2Vec Modellwahl und Skip gram Algorithmus
Für die Merkmalsextraktion wird der Word2Vec Algorithmus eingesetzt, genauer gesagt der Skip-gram Algorithmus. Dieser wurde gegenüber dem CBOW-Algorithmus bevorzugt, da er in vorherigen Studien [Mik+13b] bessere Ergebnisse lieferte und in [Mik+13a] weiter verbessert wurde. Die Wahl des Skip-gram Algorithmus wird durch die Ergebnisse in Tabelle 4.1 unterstützt, welche zeigen, dass dieser in Kombination mit dem hierarchischen Softmax Lernalgorithmus die beste Genauigkeit in Bezug auf einen Fragenkatalog erzielt. Der Skip-gram Algorithmus zeichnet sich dadurch aus, dass er aus einem gegebenen Wort den Kontext vorhersagt, im Gegensatz zum CBOW-Algorithmus, der aus dem Kontext das Wort vorhersagt. Die Verwendung eines neuronalen Netzes ohne verdeckte Schicht (hidden layer) wird bevorzugt, da diese Modelle schneller und effizienter mit großen Datenmengen trainiert werden können [Mik+13b]. Die Parameter des Skip-gram Algorithmus, wie z.B. 'window', beeinflussen die Genauigkeit und sollten sorgfältig ausgewählt werden. Die Entscheidung für den Skip-gram Algorithmus ist eine zentrale Designentscheidung, die die Qualität der Wortvektoren und damit die Genauigkeit der Merkmalsextraktion maßgeblich beeinflusst. Die Auswahl des optimalen Modells erfordert möglicherweise Experimente und den Vergleich verschiedener Parametereinstellungen.
2. Negative Sampling und Wortvektorberechnung
Alternativ zum hierarchischen Softmax kann der Negative Sampling Algorithmus als Lernverfahren für das Word2Vec neuronale Netz verwendet werden [Mik+13a]. Dieser Ansatz basiert auf der Annahme, dass zufällig ausgewählte Wörter einem gegebenen Wort mit hoher Wahrscheinlichkeit unähnlich sind. Die Anzahl dieser zufällig ausgewählten negativen Samples kann mit dem Parameter 'negative' gesteuert werden. Tabelle 4.1 zeigt, dass der hierarchische Softmax Algorithmus in Kombination mit dem Skip-gram Netzwerk bessere Ergebnisse liefert als Negative Sampling, daher wird die erstere Methode bevorzugt. Im zweiten Schritt werden für jedes Wort im Korpus mittels Distributed Representation [Mik+13b] n-dimensionale Wortvektoren (n=size) berechnet. Die Dimension 'size' beeinflusst die Komplexität des Modells und muss entsprechend gewählt werden. Die Wortvektoren repräsentieren die semantischen und syntaktischen Beziehungen zwischen den Wörtern im Korpus. Die Qualität dieser Vektoren ist entscheidend für die Leistungsfähigkeit des K-Means Clustering Verfahrens. Die Kombination von Skip-gram Architektur und hierarchischem Softmax liefert die besten Ergebnisse, daher werden alle Word2Vec Modelle mit dieser Kombination trainiert. Formel 4.3 veranschaulicht die Fähigkeit des Modells, syntaktische Zusammenhänge abzubilden (z.B. Adjektiv und Komparativ).
3. K Means Clustering zur Merkmalsextraktion und Ergebnisbewertung
Zur Visualisierung der Zusammenhänge zwischen den Wortvektoren wird der K-Means Algorithmus verwendet. Dieser Algorithmus ordnet die Vektoren einer Menge von k Clustern zu, wobei k manuell festgelegt wird. Die Zuordnung erfolgt 'hart', d.h. ein Vektor gehört genau einem Cluster an [Ert09]. Im vorliegenden Fall wurde k so gewählt, dass ein Cluster durchschnittlich 5 Wörter enthält. Die Clusterung wird zur Veranschaulichung genutzt und nicht für weitere Verarbeitungsschritte verwendet, daher wurden keine Tests mit anderen k-Werten durchgeführt. Die Verwendung von K-Means Clustering ermöglicht es, semantisch verwandte Wörter zu gruppieren und somit die Merkmalsextraktion zu unterstützen. Durch die niedrige Einstellung der minimalen Kosinus-Distanz werden nicht nur Synonyme, sondern auch semantisch zusammengehörige Wörter gefunden. Diese Eigenschaft von Word2Vec macht eine vorherige Rechtschreibkorrektur überflüssig. Allerdings zeigen Beispiele (Anhang Tabelle B.3 und B.4), dass die Rechtschreibkorrektur nicht für alle falsch geschriebenen Wörter zuverlässig funktioniert. Die Berechnung der Word2Vec Modelle und die anschließende Clusterung benötigen erhebliche Rechenzeit und Trainingsdaten.
IV.Merkmalsbasierte Stimmungsanalyse und Evaluierung
Die Stimmungsanalyse basiert auf der erweiterten Merkmalsliste aus dem Word2Vec-Ansatz und nutzt SentiWS sowie manuell annotierte Meinungswörter. Die Methode wird anhand von Daten aus dem Bereich Mode und einer Fremddomäne (Multimedia) evaluiert. Die Ergebnisse zeigen eine hohe Genauigkeit (Precision) bei der Identifizierung von Merkmalen, insbesondere expliziter Merkmale, in der Domäne Mode. Der Recall ist in der Fremddomäne Multimedia deutlich geringer, was darauf hindeutet, dass die Methode domänenspezifisch ist. Der Vorteil liegt in der Vermeidung von zeitaufwendigem Part-of-Speech Tagging.
1. Stimmungsanalyse mit SentiWS und manuellen Daten
Die merkmalsbasierte Stimmungsanalyse nutzt die erweiterte Merkmalsliste aus Kapitel 4.4.1 (Anhang B.5), die eine Ähnlichkeit von mindestens 0.65 zu den manuell annotierten Merkmalen aufweist. Für die Stimmungsbestimmung wird SentiWS [RQH10] verwendet, eine Sammlung von Wörtern mit positiver und negativer Konnotation. Zusätzlich werden manuell annotierte Meinungswörter aus den Produktbewertungen einbezogen, um umgangssprachliche Ausdrücke und domänenspezifische Terme (z.B. 'altbacken', 'trendigen', 'kastig', 'anschmiegsam') zu berücksichtigen. Die Einbeziehung manueller Daten verbessert die Robustheit der Stimmungsanalyse, insbesondere gegenüber falsch geschriebenen Wörtern. Die erweiterte Merkmalsliste, die aus der Kombination von manueller Annotation und Word2Vec-basierter Erweiterung resultiert, ermöglicht eine präzisere und umfassendere Stimmungsanalyse. Der Anteil falsch-positiv annotierter Merkmale beträgt 16.6%, während die Anzahl der Merkmale um 172% gesteigert wurde. Die Erweiterung der Merkmalsliste durch Word2Vec zeigt hier eine signifikante Verbesserung der Merkmalsextraktion, ermöglicht aber auch die Berücksichtigung von möglicherweise domänenfremden Merkmalen.
2. Evaluierung der Merkmalsextraktion Mode vs. Multimedia
Die Performance der Merkmalsextraktion wird anhand von Daten aus dem Bereich Mode (Damen- und Herrenmode) und einer Fremddomäne (Multimedia) evaluiert. Der Recall, der angibt, wie viele der tatsächlich vorhandenen Merkmale gefunden wurden, ist im Bereich Multimedia deutlich niedriger als im Bereich Mode. Dies ist darauf zurückzuführen, dass die Ausgangsliste der erweiterten Merkmalsliste nur auf manuell annotierten Daten aus dem Modebereich basiert. Die Erweiterung mittels Word2Vec konnte daher kaum Merkmale aus der Fremddomäne hinzufügen. Trotzdem zeigt sich eine hohe Precision (0,98) im Multimedia-Bereich, was bedeutet, dass die als Merkmale identifizierten Wörter tatsächlich Merkmale darstellen. Die Ergebnisse bestätigen die Domänenspezifität der Methode. Die hohe Precision deutet auf die Zuverlässigkeit der Methode innerhalb der Mode-Domäne hin, während der niedrige Recall im Multimedia-Bereich den Bedarf an domänenspezifischen Trainingsdaten unterstreicht. Der Vergleich der Ergebnisse aus verschiedenen Domänen demonstriert die Grenzen der Methode, wenn diese auf domänenfremde Daten angewendet wird. Das Fehlen von Part-of-Speech Tagging vereinfacht den Prozess, und es sind nur Satzsegmentierung und Tokenisierung für die Vorverarbeitung erforderlich.
3. Fazit und Ausblick
Die Studie zeigt, dass sowohl eine effektive Merkmalsextraktion als auch eine zuverlässige Stimmungsanalyse mit vergleichsweise einfachen Methoden erreicht werden können. Zeitaufwendiges Part-of-Speech Tagging wird vermieden, und komplexe Muster aus Part-of-Speech Tags sind nicht notwendig. Die gute Performance von Word2Vec wird ohne tiefe neuronale Netze erzielt. Die Ergebnisse sind besonders gut für explizite, einwörtige Merkmale in der Mode-Domäne. Die Evaluierung mit Multimedia-Daten zeigt die Domänenspezifität. Zukünftige Arbeiten könnten sich mit der Berücksichtigung impliziter Merkmale [PE07] und der Optimierung der manuellen Annotation befassen, um die Notwendigkeit manueller Eingriffe weiter zu reduzieren. Die Untersuchung des Einflusses der Anzahl der manuell annotierten Merkmale auf die Extraktionsqualität wäre ein weiterer wichtiger Schritt, um die Methode weiter zu verbessern und zu automatisieren. Insgesamt zeigt die Arbeit einen vielversprechenden Ansatz für die Merkmalsextraktion und Stimmungsanalyse von Produktbewertungen, der auf vergleichsweise einfachen und effizienten Methoden basiert.