Ein Überblick über das Natural Language Processing

Ein Überblick über die Funktionsweise, die Vorstellung einer Reihe typischer Techniken und die Herausforderungen bei der Verarbeitung natürlicher Sprache.

Veröffentlicht am 01.02.2022. Zuletzt aktualisiert am 20.04.2022. 1042 Wörter.

Natural Language Processing ist ein Bereich des maschinellen Lernens, der menschliche Sprache für Maschinen verständlich macht. NLP kombiniert die Leistungsfähigkeit der Linguistik und der Informatik, um die Regeln und die Struktur von Sprache zu untersuchen und intelligente Programme zu schaffen. Diese Systeme sind in der Lage, Text und Sprache zu verstehen, zu analysieren und Bedeutung aus ihnen zu extrahieren. Zu den größten Vorteilen von NLP gehört die Möglichkeit, eine Analyse im großen Maßstab umzusetzen. Die Verarbeitung natürlicher Sprache hilft Maschinen dabei, riesige Mengen unstrukturierter Textdaten automatisch zu verstehen und zu analysieren, z. B. Kommentare in sozialen Netzwerken, Tickets für den Kundensupport, Online-Rezensionen, Nachrichtenberichte usw.

Der Teilbereich Natural Language Understanding (NLU) beschäftigt sich insbesondere damit, die Struktur und Bedeutung der menschlichen Sprache zu verstehen. Dazu werden verschiedene Aspekte wie Syntax, Semantik, Pragmatik und Morphologie analysiert und für maschinelle Lernalgorithmen verfügbar gemacht werden.

Typische Anwendungsfelder des NLP sind dabei die Stimmungsanalyse (Sentimentanalysis), die Keyword Extraction (Schlüsselwortextraktion), die Themenklassifizierung und das Topic Modeling.

Funktionsweise des Natural Language Processing

Mit Hilfe der Textvektorisierung wandeln NLP-Tools Text um, sodass eine Maschine diesen verstehen kann. Dann werden Algorithmen für maschinelles Lernen mit Trainingsdaten und erwarteten Ergebnissen (Tags) gespeist. Maschinen werden so trainiert, dass sie Assoziationen zwischen einer bestimmten Eingabe und der entsprechenden Ausgabe herstellen. Maschinen verwenden dabei statistische Analysemethoden, um ihre eigene "Wissensbank" aufzubauen und zu erkennen, welche Merkmale die Texte am besten repräsentieren, bevor sie Vorhersagen für ungesehene Daten (neue Texte) treffen.

Letztendlich werden die Textanalysemodelle umso genauer, je mehr Daten den NLP-Algorithmen zugeführt werden. Die Stimmungsanalyse ist eine der bekanntesten NLP-Aufgaben, bei der maschinelle Lernmodelle darauf trainiert werden, Texte nach Meinungspolarität (positiv, negativ, neutral) zu klassifizieren.

Techniken des Natural Language Processing

Viele Aufgaben der Verarbeitung natürlicher Sprache beinhalten syntaktische und semantische Analysen, die dazu dienen, menschliche Sprache in maschinenlesbare Stücke zu zerlegen.

Die syntaktische Analyse, die auch als Parsing oder Syntaxanalyse bezeichnet wird, ermittelt die syntaktische Struktur eines Textes und die Abhängigkeitsbeziehungen zwischen Wörtern, die in einem als Parse-Baum bezeichneten Diagramm dargestellt werden.

Die semantische Analyse konzentriert sich auf die Erfassung der Bedeutung von Sprache. Da Sprache jedoch mehrdeutig ist, gilt die Semantik als eines der schwierigsten Gebiete des NLP. Bei semantischen Aufgaben werden die Struktur von Sätzen, Wortinteraktionen und verwandte Konzepte analysiert, wobei versucht wird, die Bedeutung von Wörtern zu erfassen und damit das Thema eines Textes zu verstehen.

Im Folgenden sind einige der wichtigsten Aufgaben sowohl der semantischen als auch der syntaktischen Analyse aufgelistet.

Tokenisierung

Die Tokenisierung ist eine wesentliche Aufgabe bei der Verarbeitung natürlicher Sprache, bei der eine Reihe von Wörtern in semantisch nützliche Einheiten, sogenannte Token, zerlegt wird. Die Satz-Tokenisierung spaltet Sätze innerhalb eines Textes auf, und die Wort-Tokenisierung spaltet Wörter innerhalb eines Satzes auf. Im Allgemeinen werden Worttoken durch Leerzeichen und Satztoken durch Punkte getrennt. Eine Tokenisierung kann auch für komplexere Strukturen durchgeführt werden, wie z.B. für zusammenhängende Wörter, auch bekannt als Kollokationen (z.B. New York).

Part-of-Speech Tagging (PoS-Tagging)

Beim Part-of-Speech-Tagging wird jedem Token innerhalb eines Textes ein Teil der Sprachkategorie hinzugefügt. Einige gebräuchliche PoS-Tags sind u.a. Nomen, Verb, Adjektiv, Pronomen, Konjunktion und Präposition. PoS-Tagging ist nützlich, um Beziehungen zwischen Wörtern zu verstehen.

Dependency Parsing

Die Abhängigkeitsgrammatik bezieht sich auf die Art und Weise, wie die Wörter in einem Satz miteinander verbunden sind. Ein Abhängigkeitsparser analysiert daher, welchen Bezug Wörter untereinander haben und wie sie sich gegenseitig beeinflussen.

Lemmatization und Stemming

Natürliche Sprache nutzt Flexionen, um die Beziehung von Wörtern explizit zu machen. Dabei werden Wörter in verschiedenen grammatikalischen Formen je nach Kontext gebracht. Um diese Wörter für Computer leichter verständlich zu machen, verwendet NLP entweder das Verfahren des Stemming oder der Lemmatisierung, um sie in eine Ursprungsform zurückzuführen. Das Wort, wie es im Wörterbuch erscheint - seine Stammform - wird als Lemma bezeichnet. Beispielsweise werden die Begriffe "bin", "ist" und "sind" unter dem Lemma "sein" gruppiert.
Beim Stemming hingegen werden Wörter auf eine Art Wortstamm zurück geführt, die jedoch nicht grammatikalisch korrekt sein muss. Beide Techniken dienen der Reduktion der Wortvariabilität durch Entfernung der Flexionen. Während die Lemmatisierung wörterbuchbasiert ist und das geeignete Lemma auf der Grundlage des Kontexts auswählt wird (dies benötigt die Kentniss des Part-of-Speech), operiert das Stemming ohne den Kontext. Stemming führt zu grammatikalisch inkorrekten Ergebnissen, reduziert Wörter jedoch über Flexionen hinaus, was beim Topic Modeling sinnvoll sein kann. Es kommt zusätzlich ohne Kontextinformationen aus. Lemmatisierung ist immer dann vorzuziehen, wenn grammatikalisch korrekte Ergebnisse benötigt werden.

Stopword Removal

Das Entfernen von Stopwords ist ein wesentlicher Schritt in der NLP-Textverarbeitung. Dabei geht es darum, häufig genutzte Wörter herauszufiltern, die einem Satz wenig oder keinen semantischen Wert hinzufügen. Weil viele Verfahren Wörter lediglich isoliert betrachten und etliche Wörter für sich genommen keine Bedeutung haben, sollten sie entfernt um das Rauschen zu verringern.

Word Sense Disambiguation

Je nach Kontext können Wörter unterschiedliche Bedeutungen haben. Es gibt zwei Haupttechniken, die für die Disambiguierung des Wortsinns (Word Sense Disambiguation) verwendet werden können: wissensbasierter (oder Wörterbuch-Ansatz) oder maschinelles Lernen. Bei der ersten wird versucht, bei mehrdeutigen Begriffen durch Betrachtung der Wörterbuchdefinitionen auf die Bedeutung zu schließen, während letztere auf überwachten Lernverfahren basiert, die aus Trainingsdaten lernen.

Named Entity Recognition (NER)

Die Erkennung von benannten Entitäten ist ein häufig genutzter Ansatz in der semantischen Analyse und beinhaltet das Extrahieren von Entitäten aus einem Text. Beispiele für solche Entitäten sind unter anderem Namen, Orte, Organisationen und Zeitangaben sein.

Offene Herausforderungen

Beim Verfahren des Natural Language Processing treten aufgrund der Mehrdeutigkeit natürlicher Sprache zahlreiche Herausforderungen auf. Menschen selbst haben Schwierigkeiten beim Einordnen von Aussagen, beispielsweise im Fall von Ironie oder Sarkasmus. Um natürliche Sprache zu verstehen, müssen NLP-Tools so konstruiert werden, dass sie - über Definitionen und Wortreihenfolge hinausgehend - Kontext, Mehrdeutigkeiten und andere komplexe Konzepte im Zusammenhang mit den Aussagen verstehen. Zusätzlich müssen auch Aspekte wie Kultur, Hintergrund und Geschlecht berücksichtigt werden.