Die Verarbeitung natürlicher Sprache ermöglicht es Computern, gesprochene oder geschriebene Sprache zu verstehen und in ausführbare Befehle umzusetzen. Entdecken Sie die Funktionsweise und wie diese Technologie unser Leben verbessert.
Was ist Verarbeitung natürlicher Sprache (NLP)?
Ob Alexa, Siri, Google Assistant oder andere sprachgesteuerte Assistenten – viele Smartphone- oder Smart-Speaker-Nutzer verwenden heutzutage diese Technologie. Jedes Jahr scheinen diese Assistenten besser darin zu werden, unsere Anweisungen zu verstehen und auszuführen. Aber wie verarbeiten diese Assistenten das, was wir sagen? Die Antwort liegt in der Verarbeitung natürlicher Sprache, kurz NLP.
Früher war Software meist auf einen festen Satz spezifischer Befehle beschränkt. Eine Datei wird geöffnet, nachdem man auf „Öffnen“ geklickt hat, oder eine Tabelle berechnet eine Formel basierend auf bestimmten Symbolen und Formelnamen. Ein Programm kommuniziert über seine eigene Programmiersprache und erzeugt eine Ausgabe, wenn es eine erkennbare Eingabe erhält. In diesem Kontext sind Wörter wie mechanische Hebel, die stets die gewünschte Reaktion hervorrufen.
Im Gegensatz dazu sind menschliche Sprachen komplex, unstrukturiert und vieldeutig, wobei die Bedeutung von Satzbau, Tonfall, Akzent, Timing, Interpunktion und Kontext abhängt. NLP ist ein Teilbereich der künstlichen Intelligenz, der versucht, die Kluft zwischen der maschinellen Erkennung von Eingaben und der menschlichen Sprache zu überbrücken. So kann eine Maschine, wenn wir normal sprechen oder schreiben, eine Ausgabe generieren, die unseren Äußerungen entspricht.
Dieser Prozess nutzt riesige Datenmengen, um die Bedeutung verschiedener Elemente der menschlichen Sprache zu ermitteln, einschließlich der Bedeutung der Wörter selbst. NLP ist eng mit dem maschinellen Lernen verbunden, das es Computern ermöglicht, mit zunehmender Datenmenge zu lernen. Dies erklärt, warum die meisten NLP-Anwendungen, mit denen wir interagieren, im Laufe der Zeit immer besser werden.
Um das Konzept zu verdeutlichen, betrachten wir zwei Schlüsseltechniken der NLP zur Verarbeitung von Sprache und Informationen.
Tokenisierung
Tokenisierung bezeichnet die Aufteilung von Sprache in Wörter oder Phrasen. Jedes Sprachelement wird als Token bezeichnet, und diese Token werden bei der Sprachverarbeitung identifiziert. Das klingt einfach, ist aber in der Praxis ein anspruchsvoller Vorgang.
Nehmen wir an, Sie verwenden eine Text-to-Speech-Software, wie z.B. die Google-Tastatur, um eine Nachricht an einen Freund zu senden. Sie möchten „Wir treffen uns im Park“ senden. Wenn Ihr Smartphone die Sprache aufnimmt und durch den Text-to-Speech-Algorithmus von Google verarbeitet, muss Google das Gesprochene in Token aufteilen. Diese Token wären „wir“, „treffen“, „uns“, „im“, „Park“.
Menschen machen unterschiedlich lange Pausen zwischen Wörtern, und andere Sprachen haben möglicherweise kaum hörbare Pausen zwischen Wörtern. Der Tokenisierungsprozess variiert erheblich zwischen Sprachen und Dialekten.
Stemming und Lemmatisierung
Sowohl Stemming als auch Lemmatisierung dienen der Reduktion von Wörtern auf ihre Grundform. Dadurch soll eine konsistente Sprachinterpretation erreicht werden, selbst wenn verschiedene Wörter im Wesentlichen die gleiche Bedeutung haben. Dies beschleunigt die NLP-Verarbeitung.
Beim Stemming, einem schnellen Prozess, werden Affixe (Prä- und Suffixe) von Wörtern entfernt. So wird ein Wort auf seine einfachste Form reduziert. Zum Beispiel:
„Gehen“ wird zu „geh“
„Schneller“ wird zu „schnell“
„Schwierigkeit“ wird zu „schwierig“
Wie man sieht, kann Stemming die Bedeutung eines Wortes verändern. „Schwierigkeit“ und „schwierig“ haben unterschiedliche Bedeutungen, aber die Endung „-keit“ wurde beim Stemming entfernt.
Die Lemmatisierung ist komplexer und reduziert Wörter auf ihre Basisform (Lemma), unter Berücksichtigung des Kontexts und der Verwendung in einem Satz. Sie greift auf Datenbanken mit Wörtern und ihren jeweiligen Lemmata zurück. Zum Beispiel:
„Sind“ wird zu „sein“
„Bedienen“ wird zu „bedienen“
„Schwierigkeit“ wird zu „schwierig“
In diesem Fall konnte die Lemmatisierung „Schwierigkeit“ korrekt zu „schwierig“ reduzieren, was die Lemma- und Grundform ist.
NLP-Anwendungsfälle und Zukunft
Die genannten Beispiele zeigen nur einen Teil der Möglichkeiten der Verarbeitung natürlicher Sprache. NLP umfasst eine Vielzahl von Praktiken und Anwendungsszenarien, von denen viele in unserem täglichen Leben genutzt werden. Hier einige Beispiele für den aktuellen Einsatz von NLP:
Textvorhersage: Bei der Eingabe von Nachrichten auf dem Smartphone werden automatisch Wörter vorgeschlagen, die in den Satz passen oder die man bereits verwendet hat.
Maschinelle Übersetzung: Weit verbreitete Übersetzungsdienste wie Google Translate nutzen NLP für die Verarbeitung und Übersetzung von Sprache.
Chatbots: NLP bildet die Grundlage für intelligente Chatbots, insbesondere im Kundenservice, wo sie Anfragen bearbeiten können, bevor ein Mitarbeiter hinzugezogen wird.
Es gibt noch weitere Anwendungen: NLP wird in Bereichen wie Nachrichtenmedien, Medizintechnik, Arbeitsplatzmanagement und Finanzen weiterentwickelt und eingesetzt. Es ist nicht ausgeschlossen, dass wir eines Tages eine vollständige und anspruchsvolle Konversation mit einem Roboter führen können.
Wenn Sie mehr über NLP erfahren möchten, finden Sie ausgezeichnete Ressourcen im Blog „Towards Data Science“ oder bei der Stanford Natural Language Processing Group.