We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Daten - Textrepräsentation

00:00

Formal Metadata

Title
Daten - Textrepräsentation
Title of Series
Number of Parts
79
Author
License
CC Attribution 4.0 International:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language
Production Year2023
Production PlaceHeinrich-Heine-Universität Düsseldorf

Content Metadata

Subject Area
Genre
Abstract
In diesem Video lernst du Möglichkeiten zur Textrepräsentation kennen. Du erfährst, wieso eine geeignete Darstellung für Texte gefunden werden muss, und bekommst das Worttaschenmodell und Einbettungen gezeigt. Lernziele: Du erklärst Wörterbücher Du erläuterst das Worttaschenmodell am Beispiel und wendest es an Du erläuterst die Idee und den Nutzen von word2vec Du erklärst die Idee des tf-idf-Maßes
Keywords
Machine learningMerkmalsextraktionAlgorithmRepresentation (politics)Category of beingWordPhysical quantityJSONXMLComputer animation
Computer animation
LengthVector graphicsEuclidean vectorComputer animationMeeting/Interview
Vector graphicsLengthComputer animation
WordEuclidean vectorScientific modellingVersion <Informatik>MassInequality (mathematics)RandLecture/ConferenceMeeting/Interview
XMLUML
WordLengthVector graphicsEmailNullComputer animation
Vector graphicsComputer animationDiagram
Artificial neural networkSimilarity (geometry)Euclidean vectorAlgorithmEmbeddingLengthComputer animation
DistanceZusammenhang <Mathematik>BerechnungEmbeddingWordJSONUMLComputer animation
Computer animationXML
Transcript: German(auto-generated)
Wie erreiche ich eigentlich, dass mein Text von einem Machine Learning Modell verarbeitet werden kann? In diesem Video betrachten wir Repräsentationen von Texten. Bei strukturierten Daten, zum Beispiel in Tabellen, ist jede Spalte ein Feature
und der Eintrag für diese Spalte der Wert, den dieses Feature für das entsprechende Datenobjekt annimmt. Doch was sind die Features eines Textes, genannt Dokument? Intuitiv gesehen handelt es sich bei den Features eines Dokuments um dessen Sätze oder um dessen Wörter. In diesem Video beschränken wir uns auf die wortbasierte Repräsentation. Allerdings benötigen Machine Learning Algorithmen Eingaben in numerischer Form.
Bei Daten in Tabellenformen sind die Features entweder schon numerisch oder können leicht in numerische Werte umgewandelt werden. Bei kategorischen Daten können zum Beispiel die verschiedenen Kategorien durchnummeriert werden und der Kategorienname durch den entsprechenden Zahlenwert ersetzt werden.
Damit Texte für das Machine Learning Modell lesbar und verarbeitbar sind, muss der Text ebenfalls numerisch repräsentiert werden. Das Umwandeln in numerische Form bezeichnet man als Feature Extraction. Zuerst erstellen wir ein Wörterbuch, auch Vokabular genannt, bei dem jedes vorkommende Wort einen Eintrag im Wörterbuch darstellt.
Da wir wie gewohnt nicht nur mit einem einzelnen Datenobjekt, hier Dokument, sondern mit einer Sammlung an Dokumenten genannt Korpus arbeiten, erstellen wir dieses Wörterbuch natürlich über alle Dokumente unseres Korpus. Neben den Wörtern des Korpus sollte das Wörterbuch auch einen Eintrag für unbekannte Wörter enthalten.
Damit die Beispiele für dich als Mensch verständlicher sind, tue ich im Folgenden jetzt so, als ob bei unseren Dokumenten Vorverarbeitungsschritte wie zum Beispiel Stoppwortentfernung und Stemming nicht passiert sind. Angenommen, die einzigen beiden Dokumente unseres Korpus haben den Inhalt KI für alle macht Spaß für alle bzw. KI macht immer Spaß.
Das Wörterbuch sieht dann wie folgt aus. KI für alle macht Spaß immer. Am Ende steht das Spezialwort unbekannt. Ich habe die Wörter jetzt nach Erscheinen im Korpus zum Wörterbuch hinzugefügt, aber die Reihenfolge des Hinzufügens ist nicht wichtig. Für den weiteren Verlauf des Videos nehmen wir aber an, dass sich das Wörterbuch nicht mehr ändert.
Eine Möglichkeit, Dokumente mit Hilfe eines Vektors zu repräsentieren, ist das Back of Words Modell, also das Worttaschen Modell. Für ein gegebenes Dokument erstellen wir einen Vektor mit derselben Länge wie unser Wörterbuch und geben für jeden Eintrag an, wie häufig das entsprechende Wort in unserem Dokument vorkommt.
Angenommen, wir betrachten das Dokument KI macht mir Spaß, Spielen macht mir auch Spaß. Dann entsteht daraus diese Worttasche. Die Wörter für, alle und immer kommen nullmal im Dokument vor, KI einmal, macht und Spaß zweimal
und unbekannte Wörter, wie zum Beispiel mir, kommen insgesamt viermal vor. Die Reihenfolge der Häufigkeiten entspricht dabei der Reihenfolge der Wörter im Wörterbuch. Wir haben also unser Dokument erfolgreich in numerischer Form angegeben und dafür einen Vektor in Länge des Wörterbuches gebraucht. Alternativ kann für jedes Dokument auch nur angegeben werden, ob ein Wort des Wörterbuches enthalten ist oder nicht.
Vektoren enthalten dann für jedes Wort entweder eine Null für nicht enthalten oder eine Eins für enthalten. In der vorgestellten Version des Worttaschen Modells haben wir mit absoluten Häufigkeiten von Wörtern gearbeitet. Diese sogenannte Vorkommshäufigkeit im englischen Term Frequency kann auch als Maß verwendet werden,
wie relevant ein Wort für ein Dokument ist. Je häufiger ein gewisses Wort in einem Dokument vorkommt, desto relevanter ist es für dieses Dokument. Die absoluten Vorkommshäufigkeiten sind aber irreführend. Angenommen, ich möchte die Relevanz des Wortes KI für ein Dokument ermitteln.
Im schon genannten Beispiel Dokument KI für alle macht Spaß für alle, kommt genau einmal KI vor, sodass das Wort KI als irrelevanter eingestuft wird als in einem Dokument, in dem bei 100 Millionen Wörtern zweimal das Wort KI vorkommt. Allerdings kann man hier natürlich gut argumentieren, dass im kürzeren Dokument KI ein Hauptfokus ist,
während im extrem langen Dokument KI wohl nur am Rande erwähnt wird. Daher wird die Vorkommshäufigkeit normalisiert angegeben. Normalisierung bedeutet hier, dass Werte auf eine gemeinsame Skala gebracht werden, um sie besser zu vergleichen. Normalisierung kennst du aus dem Alltag. Beim Vergleichen von Lebensmittelpreisen hilft es nicht, nur die Gesamtpreise zu kennen.
Daher gibt es einen Preis pro 100 Gramm, bei dem durch Gewicht geteilt wird. Und bei der Vorkommshäufigkeit wird der Wert für ein Wort in einem Dokument normalisiert, in dem durch die maximale Vorkommshäufigkeit eines Wortes in demselben Dokument geteilt wird. In unserem Beispiel kommt im kurzen Dokument jedes Wort maximal zweimal vor,
sodass sich die sogenannte relative Vorkommshäufigkeit von KI auf ein Halb, also 0,5, beläuft. Kommt im extrem langen Dokument das Wort KI zweimal und das häufigste Wort im Dokument 2000 mal vor, dann ergibt das eine relative Vorkommshäufigkeit von zwei Zweitausendstel, also 0,001.
Allerdings enthalten bei den Vorkommshäufigkeit Wörter wie UND, HABEN und andere häufig benutzte Wörter automatisch höhere Werte als Wörter, die im Korpus selten auftreten. Die selteneren Wörter sind aber relevanter für die Dokumente, in denen sie vorkommen. Dies wird durch die sogenannte inverse Dokumentenhäufigkeit gemessen,
die die Relevanz eines Wortes in Bezug auf den Korpus misst und dabei seltenere Wörter höher bewertet. Beide Konzepte werden im TF-IDF-Maß vereint, was für Term-Frequency-Inverse-Document-Frequency steht. Dabei erhalten die Wörter einen hohen Wert, die im aktuell betrachteten Dokument häufig
und im gesamten Korpus selten vorkommen. Die Idee des TF-IDF-Maß kann im Worttaschenmodell verwendet werden, in dem jedem Wort anstelle der absoluten Häufigkeit der TF-IDF-Wert zugeordnet wird, um so einen repräsentierenden Vektor für ein Dokument zu erzeugen. Beim Worttaschenmodell ist die Länge des Wörterbuchs auch gleichzeitig die Länge des Vektors,
der das Dokument repräsentiert. Es ist also besonders wichtig, dass ein Wörterbuch nicht übermäßig lang wird. Stichwort Fluch der Dimensionalität. Es bietet sich also nicht nur an, vorher Textvorverarbeitungsschritte, wie das Entfernen von Stoppwörtern und Stemming durchzuführen, um die Länge des Wörterbuchs zu reduzieren,
sondern auch, nicht jedes vorkommende Wort in das Wörterbuch mit aufzunehmen. Zum Beispiel kann mit Hilfe des TF-IDF-Werts die Größe des Wörterbuchs verringert werden, in dem Worte mit höheren Werten bevorzugt aufgenommen werden. Aber selbst mit verkürzten Wörterbüchern handelt es sich bei den daraus entstehenden Dokumenten-Vektoren noch um Vektoren, die zum größten Teil aus Nullen bestehen,
da ein Wörterbuch hunderttausende oder sogar mehrere Millionen Einträge haben kann. Das Worttaschemodell kann zum Beispiel bei der Spam-Erkennung verwendet werden. E-Mails werden daraufhin untersucht, ob sie gewisse Wörter enthalten, die häufig in Spam-E-Mails auftauchen, wie zum Beispiel nigerianischer Prinz oder Bitcoin
und daraus eine Wahrscheinlichkeit berechnet, ob es sich bei der E-Mail um Spam handelt. Das ist auch der Grund, weshalb du bei Spam-E-Mails häufig seltsame Zeichen in den relevanten Wörtern findest, wie hier. Dadurch erhofft sich der Absender, dass der Spam-Filter das Wort nicht als typisches Spam-Wort identifiziert.
Der Nachteil an dem Worttaschemodell ist der Verlust von Kontext. So kann nicht erkannt werden, dass es sich bei den Dokumenten KI macht Spaß und KI bereitet Freude, um zwei Dokumente mit derselben Aussage handelt, da sich die verwendeten Wörter unterscheiden. Um auch den Kontext von Wörtern zu erhalten, lässt sich zum Beispiel eine etwas kompliziertere Repräsentation eines Wörterbuchs erstellen.
Wir berechnen für jedes Wort im Wörterbuch eine Einbettung, English Embedding, also ein Vektor, der den Standort dieses Wortes im Raum angibt. Zur Erinnerung, jeder Vektor beschreibt einen Punkt im Raum. Im eindimensionalen Raum beschreibt der Vektor 2 diesen Punkt, im zweidimensionalen beschreibt zum Beispiel der Vektor 1,3 diesen Punkt
und im dreidimensionalen beschreibt der Vektor 2,1,3 diesen Punkt. Sinn der Vektorwerte für die einzelnen Wörter ist es, dass Wörter, die Ähnliches bedeuten, sich auch im Vektoraum nah beieinander befinden. So sollen zum Beispiel Kaffee und Tee nah beieinander stehen, da es sich bei beiden um Heißgetränke handelt.
Algorithmen basierend auf neuronalen Netzen wie Word2Vec erstellen nach Eingabe eines Korpus eine Vektorrepräsentation aller Wörter im erstellten Wörterbuch. Diese Vektoren haben häufig eine Länge im dreistelligen Bereich, d.h. der entsprechende Vektoraum hat mehrere hundert Dimensionen. Mithilfe der Einbettung ist es sogar möglich, Analogien zu bilden wie
Welpe ist zu Hund wie Kätzchen zu Katze. Dabei muss eine Maschine die genaue Bedeutung dieser Wörter gar nicht kennen, sondern sie kann die Zusammenhänge aufgrund der Abstände der Vektoren berechnen. Wie nah gewisse Wörter aneinander liegen, kommt allerdings stark auf den Korpus an, mit dem trainiert wird.
Gibt es eine Voreingenommenheit in den Originaldaten, z.B. dass Ärztinnen häufig männlich und Pflegerinnen häufig weiblich sind, dann spiegelt sich das auch in der Entfernung dieser zwei Berufe zu den Worten Mann und Frau wider. Es ist natürlich sehr aufwendig, selbst ein Modell für das Erstellen von Einbettungen zu trainieren, nur um damit das Training für das eigentliche Ziel durchzuführen,
für das die Textrepräsentation benötigt wird. Daher gibt es bereits viele vortrainierte Einbettungen, die unter gewissen Lizenzen für die eigene Arbeit verwendet werden können. Bitte achte hier auf die rechtlichen Rahmenbedingungen bei der Nutzung. In diesem Video hast du gelernt, was ein Wörterbuch ist und wie es bei der Repräsentation von Dokumenten helfen kann.
Du kannst jetzt sowohl das Worttaschenmodell als auch Einbettungen anhand von Beispielen veranschaulichen.