Natural Language Processing – Intro für das heißeste Thema in der KI-Forschung - Definition des Begriffs und Einführung in die Unterkategorien (Teil 1)

December 27, 2020
5 min
NLP
Credits to Nino Carè from pixabay.com

Wir alle nutzen es mehrmals täglich, doch die wenigsten wissen wie es funktioniert. Es hat in den letzten Jahren einiges verändert, vieles leichter gemacht und die Programme werden immer besser und besser. Die Rede ist von Natural Language Processing oder kurz NLP. In vielen Apps und Anwendungen, die wir täglich benutzen, steckt in irgendeiner Form NLP. Sei es der Übersetzer DeepL, um Texte aus einer Fremdsprache ins deutsche zu übersetzen. Oder die Interaktionen mit Alexa und Siri, die uns sagen wie das Wetter wird oder das Licht anmachen. Oder die Funktion von WhatsApp, die kurze automatische Antworten auf Fragen generiert. Oder natürlich jede Google Suchanfrage. All das ist NLP. Und gleichzeitig merkt man, wie schnell hierbei die Entwicklung voranschreitet. Haben wir zu unseren Abiturzeiten (2012/2013) den Übersetzer von Google für die französisch Hausaufgaben verwendet und Texte von deutsch nach französisch übersetzt, war das Ergebnis nicht besser (oder sogar schlechter) als wir es selbst mit wenig Wissen gekonnt hätten. Übersetzen wir heute mit DeepL eine Veröffentlichung vom englischen ins deutsche oder umgekehrt, ist das Ergebnis meistens so gut, dass kaum jemand sagen kann, ob es mit einem Übersetzer oder selbst gemacht wurde. Diese rasante Entwicklung basiert auf der Entwicklung neuer Methoden, die 2012 begonnen hat. Was das für Methoden sind, erläutern wir in anderen Artikeln. Dieser Artikel beschreibt kurz was NLP ist und was die Teilgebiete von NLP sind.

Der Begriff des Natural Language Processing

Zunächst ordnen wir den Bereich NLP in den Forschungskontext ein.

Begriffe die rund um Natural Language Processing auftauchen
Begriffe rund um NLP

Ein Synonym für den Begriff NLP ist Computerlinguistik (computational linguistics). Da der Begriff NLP jedoch inzwischen häufiger verwendet wird, benutzen wir diesen ebenfalls. Der Begriff Computerlinguistik erfasst jedoch gut, welche Forschungsbereiche einfließen: Die Informatik und die Linguistik. Wie diese beiden zusammenkommen und was das Ziel von NLP ist, beschreibt folgende Definition von Dan Jurafsky gut: „Das Ziel dieses neuen Bereichs ist es, Computer dazu zu bringen, nützliche Aufgaben auszuführen, die menschliche Sprache erfordern…“ (The goal of this new field is to get computers to perform useful tasks involving human language [1]). Das übergeordnete Ziel von NLP ist es also, Computer in die Lage zu versetzen, menschliche Sprache zu verstehen, diese zu verarbeiten, und darauf basierend Aufgaben zu erfüllen. NLP ist ebenfalls ein Teilgebiet der Künstlichen Intelligenz, da Methoden aus diesem Bereich eingesetzt werden, um Computer in die Lage zu versetzen, Sprache zu verstehen. Da Sprache eines der zentralen Elemente unseres Alltags ist, und parallel die Interaktion mit Computern oder im weiteren Sinne Technologie immer mehr zunimmt, liegt es nahe, dass der Bereich NLP immer relevanter wird. Parallel waren Ideen des NLP schon früher von Bedeutung. Beispielsweise war die Grundlage des bekannten Turing Tests, beschrieben in diesem Artikel, die Verarbeitung menschlicher Sprache.

Da die menschliche Sprache jedoch ein sehr komplexes Gebiet ist, steht im Zentrum von NLP die Frage, wie Computer diese verstehen und verarbeiten können. Hierfür kann NLP in weitere Unterkategorien unterteilt werden, von denen wir im Folgenden einige vorstellen. Der Fokus liegt hierbei auf Bereichen, die uns häufig begegnen und ist nicht vollständig. Genau wie beim Begriff NLP verwenden wir auch hier die englischen Begriffe, da diese in dem Bereich geläufiger sind.

Unterkategorien Natural Language Processing

Die Unterkategorien sind in der Reihenfolge aufgelistet, wie sie auch bei dem Prozess der Verarbeitung von Sprache durchlaufen werden könnten und in der folgenden Abbildung dargestellt.

Natural Language Processing und Unterkategorien/ Teilgebiete
Unterkategorien von NLP

Automatic Speech Recognition (ASR)

ASR beschreibt die Aufgabe von Computern menschliche Sprache zu erkennen und so darzustellen, dass sie weiterverarbeitet werden kann. Hier geht es noch nicht darum, den Inhalt zu verstehen, sondern zunächst darum die gesprochene Sprache in eine textuelle Darstellung umzuwandeln [2]. Was für einen Menschen zunächst einfach klingt, bedeutet für einen Computer einige Hürden. Eine zentrale Aufgabe besteht darin kontinuierliche Sprache zu erkennen und zu verarbeiten. Kontinuierliche Sprache (continuous speech) bedeutet, dass Wörter und Sätze vom Menschen natürlich ausgesprochen werden – also ohne künstliche Pausen zwischen Wörtern und Sätzen [3]. Dass dies früher für Computer ein großes Problem dargestellt hat, weiß auch fast jeder aus eigener Erfahrung: Wer vor ein paar Jahren mit Siri oder dem Navi im Auto gesprochen hat, erinnert sich bestimmt noch heute daran, wie deutlich und unnatürlich man oft sprechen musste, um verstanden zu werden. Andere Probleme, die bei ASR häufig auftreten, sind Dialekte, die in verschiedenen Sprachen vorkommen (Kölsch, Bayrisch, Provençal etc.), Umgebungsgeräusche (in der Bahn oder auf der Straße) oder Phoneme (Wörter die gleich klingen, aber eine andere Bedeutung haben z.B. mehr und Meer).

Natural Language Understanding (NLU)

Das Gebiet NLU ist das am breitest gefächerte Teilgebiet von NLP, da es auch die umfassendste Aufgabe repräsentiert: Die inhaltliche Verarbeitung menschlicher Sprache. Hier geht es also um den Kern von NLP, wie Computer natürliche Sprache verstehen können. Da dies jedoch ein sehr großer Bereich ist, wird er in mehrere kleine Teilgebiete unterteilt.

Text Classification

Der Bereich Text Classification befasst sich mit der, der Name verrät es schon, Klassifizierung von Texten. Es geht darum Texte zu verstehen und diese vorher definierten Klassen zuzuordnen. Hierbei handelt es sich um einen typischen Anwendungsfall von Supervised Learning. Es werden also Texte mit zugeordneten Labels als Trainingsdaten benötigt, an Hand derer der verwendete Algorithmus erlernt, was für Arten Text welchem Label zugeordnet werden. Ein Anwendungsgebiet ist bspw. Sentiment Analysis und kann eingesetzt werden, um zu klassifizieren, ob Tweets einen positiven oder negativen Ton haben.

Paraphrase Identification

Paraphrase Identification (Detection) bezeichnet die Fähigkeit zu erkennen, ob zwei Sätze die gleiche Bedeutung haben [4]. Ein Beispiel für eine solche Anwendung ist der Quora Question Pairs Datensatz, bei dem vorhergesagt werden soll, ob Fragen die gleiche Bedeutung haben oder nicht [5]. So soll verhindert werden, dass die gleiche Frage in dem Forum mehrmals gestellt werden kann. Es geht also darum, semantisch gleiche Sätze zu erkennen, obwohl sie unterschiedlich aufgebaut sind, z.B.: „Sind Machine Learning und Künstliche Intelligenz das gleiche?“ und „Gibt es einen Unterschied zwischen KI und ML?“. Auf diese Frage geben wir übrigens hier eine Antwort.

Entity Linking

Entity Linking wird verwendet, um Entitäten innerhalb eines Textes zu erkennen und diese mit der passenden Entität in einer Ontologie (Knowledge Base) zu verlinken [6]. Ein Synonym für Entity Linking ist der Begriff Named Entity Recognition. Neben einem Text wird hierfür eine Ontologie benötigt. Was eine Ontologie ist, erklären wir in Artikeln der Kategorie Semantic Web. Ein Beispiel für den Einsatz des Entity Linking dieses Textes wären die Verknüpfungen der genannten Entitäten (DeepL, WhatsApp, Siri etc.) mit ihren passenden Entitäten in einer Ontologie.

Summarization

Die Aufgabe der Summarization (Zusammensetzung) besteht darin ganze Texte oder Passagen zusammen zu fassen. Hierfür muss der Computer also den Inhalt eines Textes verstehen und so zusammenfassen, dass dieser Inhalt in gekürzter Form wiedergegeben wird [7]. Ein Beispiel für ein solches Tool ist der Demonstrator des amerikanischen Labors AI2, welcher wissenschaftliche Texte in einem Satz zusammenfasst. Das Tool wird als TLDR (To Long Didn’t Read) bezeichnet und fasst Paper auf Basis des Abstracts, der Einleitung und des Fazits zusammen.

Dies waren einige der gängigen Unterkategorien, die einem im NLP Bereich begegnen. Weitere Teilgebiete des Bereichs findet ihr hier in unserem nächsten Artikel. Außerdem geht es in dem Artikel darum, wieso die NLP Anwendungen in den letzten Jahren so schnell viel besser geworden sind.

Referenzen
Portrait of Blogger
Maximilian Both
<  Previous
Next  >
Natural Language Processing – Intro für das heißeste Thema in der KI-Forschung - Einführung in die Unterkategorien und Gründe für die rasante Entwicklung (Teil 2)

Kommentare