mindsquare.de durchsuchen

Natural Language Processing

Sie brauchen einen NLP Berater und/oder möchten, dass wir Ihnen unser Angebot in diesem Umfeld vorstellen?

Max-Ludwig Stadler
29. Juli 2021

Natural Language Processing (NLP) ist eine Technologie, die Computern dabei hilft, die menschliche Sprache zu verarbeiten. Die Maschine steht dabei vor einer großen Herausforderung, weil Sprache immer situationsbedingt genutzt wird und eine Aussage je nach Kontext viele verschiedene Bedeutungen haben kann. NLP nutzt maschinelles Lernen und ist damit ein Teil von Künstlicher Intelligenz (KI). 

Historie

Natural Language Processing ist ein Teilbereich von Künstlicher Intelligenz, welcher bereits in den 1950er-Jahren mit dem Turing-Test erste Ergebnisse messen konnte. Dort kommunizierte ein Mensch per Chat und wusste nicht, ob er mit einer Maschine oder einem anderen Menschen schreibt. Konnte er es auch danach nicht sagen, wurde die Maschine als intelligent eingestuft.

Auch in den Folgejahren gab es weitere Entwicklungen, bis letztendlich Machine Learning und Deep Learning in den 1980er-Jahren durch einen enormen Zuwachs der Rechenpower voranschritten. Heute kann die KI durch die Investitionen von großen Unternehmen (Google, Amazon, Microsoft etc.) bereits Schachweltmeister besiegen oder als persönlicher Sprachassistent – wie bei Alexa oder Siri – dienen. Vor allem bei letzterem kommt Natural Language Processing in großem Ausmaß zum Einsatz. Wenn Sie mehr über die Entwicklungsgeschichte von Künstlicher Intelligenz erfahren wollen, schauen Sie hier vorbei: mindsquare.de/historische-entwicklung-ki/.

In diesem Webinar gebe ich Ihnen einen Überblick zum Thema maschinelles Lernen.

Herausforderungen bei NLP

Natural Language Processing befasst sich damit, die menschliche Sprache zu verstehen – und genau dort liegt das große Problem. Die Sprache ist nämlich sehr komplex und nicht immer eindeutig. Zusätzlich wird das Auswerten von menschlicher Sprache durch Dinge wie Redewendungen, Ironie oder Wortspiele zusätzlich enorm erschwert.

Es reicht nicht, dass der Computer einzelne Wörter erkennt. Entscheidend sind die Sätze und Zusammenhänge, die die Maschine verstehen muss. Der Mensch hat hierbei den Vorteil, dass er auf seine Lebenserfahrung zurückblicken kann und die Sprache quasi von Geburt an lernt. Daher ist Sprache für den Menschen leicht verständlich und einzuordnen. Der Computer hingegen muss mithilfe von Algorithmen diesen Status erst erlernen.

Die Regeln, nach denen die Sprache ausgewertet wird, können dabei unterschiedlich komplex sein. Beispielsweise ist es relativ einfach durch Wortendungen zu erkennen, ob es sich um Singular oder Plural eines Begriffs handelt. Schwierig wird es hingegen, wenn Sarkasmus verwendet wird, da dieser oftmals nur durch Betonung oder den Kontext deutlich wird.

Der Prozess

Unterstützung durch Methoden wie supervised und unsupervised Learning

Das Natural Language Processing bedient sich verschiedener Methoden von Machine Learning. Dazu zählen unter anderem supervised und unsupervised Learning. Durch diese beiden Modelle werden auf der Basis von Statistiken und Vektorraumanalysen Inhalt und Struktur von gesprochener Sprache erkannt. Das heißt, das Lernen der KI kann einerseits durch überwachtes Lernen durchgeführt werden, also mit einem bereits bekannten Ergebnis, um Gesetzmäßigkeiten nachzubilden. Es ist aber andererseits auch möglich, durch unüberwachtes Lernen ohne bekanntes Ergebnis zu arbeiten, bei dem die KI selbst Eingabemuster erkennt. Zum besten Ergebnis führt in den meisten Fällen eine Mischung aus beiden Vorgehensweisen.

Datenvorbereitung durch Tokenisierung und Labeling

Grundsätzlich lässt sich der Prozess in 2 Phasen unterteilen: Die Datenverarbeitung und die Textanalyse. Es beginnt mit der Datenbereitstellung, die erfolgt, indem ein Text vorliegt, der aus mehreren Sätzen besteht. Dieser wird dann in seine einzelnen Teile zerlegt, sodass die einzelnen Wörter für sich stehen und bereits Wortgruppen gebildet werden. Diese Unterteilung nennt man auch Tokenisierung, da der Satz in einzelne Tokens aufgeteilt wird. Im nächsten Schritt der Datenvorbereitung werden die Token dann mit Attributen oder Labels versehen. Das heißt beispielsweise, dass alle Wörter in Nomen, Verben, Adverben etc. aufgeteilt werden.

Syntaktische und semantische Textanalyse

Nach dieser Aufteilung folgt dann die Textanalyse, also die syntaktische Analyse des Textes. Es wird festgestellt, wie die Bezüge der einzelnen Wörter zueinander sind. Wie der Name schon sagt, wird also der grammatikalische Sinn eines Satzes ermittelt. Als letzter Schritt wird dann eine semantische Analyse vorgenommen, was zum schwierigsten Teil beim NLP gehört. Hier geht es darum, dass der Computer durch Algorithmen den Sinn von Wörtern versteht und Sätze interpretiert. Darunter fällt auch, Entitäten – also Eigennamen von Personen, Orten oder Plätzen – zu erkennen. Das funktioniert durch die sogenannte Named-entity recognition (NER).

Tools für NLP

Für die Umsetzung gibt es verschiedene Tools und Bibliotheken, die verschiedene Programmiersprachen unterstützen. Eine sehr beliebte NLP-Bibliothek ist das Natural Language Toolkit (NLTK), welche auf der Programmiersprache Python basiert. Es dient als guter Einstieg in Natural Language Processing und ist aufgrund der simplen Programmiersprache leicht zu bedienen. Es ist vor allem für die Bereiche Industrie, Forschung und Bildung geeignet, weil es eine Vielzahl von verschiedenen Algorithmen unterstützt. Das NLTK unterstützt die Tokenisierung, Named-entity recognition und das Stemming, bei dem Wörter auf ihren Wortstamm zurückgeführt werden.

Natural Language Processing: mittels Machine Learning menschliche Sprache verstehen.

Eine Alternative dazu bietet die NLP-Bibliothek spaCy, die sich ebenfalls hoher Beliebtheit erfreut und auf der Programmiersprache Python basiert. spaCy ist quasi der nächste Schritt vom NLTK und lässt sich für komplexere Fälle nutzen. Außerdem ist es schneller und präziser als das NLTK. Zwar unterstützt es weniger verschiedene Algorithmen, allerdings verfügt es über die größte Vielzahl an europäischen Sprachen und die Zahl steigt stetig.

Für eine Java-basierte NLP-Bibliothek eignet sich vor allem CoreNLP, welches von der University of Stanford entwickelt wurde. Ähnlich wie die NTLK ist CoreNLP für sehr viele verschiedene Bereiche anwendbar. Allerdings können damit eine höhere Anzahl an Daten verarbeitet und komplexere Probleme gelöst werden. Ein Nachteil ist, dass nur wenige Sprachen unterstützt werden, Deutsch zählt allerdings dazu. CoreNLP ist vor allem für den Bereich Social Media und Chatbots geeignet.

Anwendungsbeispiele

Ein Unternehmen, das Natural Language Processing sehr ausgiebig einsetzt, ist Google. Das bekannteste Beispiel ist wohl die klassische Funktion des Google Übersetzers. Zu Beginn wurde diese Funktion noch belächelt. Zwar konnten einzelne Wörter bereits gut übersetzt werden, Sätze und Zusammenhänge ergaben allerdings oft keinen Sinn, da die KI noch nicht weit genug entwickelt war. Heutzutage ist das Programm in der Lage, ganze Texte weitgehend fehlerfrei zu übersetzen und selbst gesprochene Sprache in verschiedenen Sprachen zu verarbeiten.

Doch auch für nicht direkt erkennbare Prozesse nutzt Google NLP. So hat das Unternehmen den Algorithmus „RankBrain“ entwickelt, der Suchanfragen einordnen soll. Bei Google gehen täglich mehrere Milliarden Suchanfragen ein. Etwa 15 Prozent davon sind neu und müssen daher eingeordnet sowie beantwortet werden. „RankBrain“ ist dabei der drittwichtigste Faktor im Ranking einer Suche. Dadurch wird das Ergebnis der einzelnen Suchanfragen optimiert. Das System entwickelt sich durch den Prozess des maschinellen Lernens ebenfalls immer weiter.

Unser E-Book zum Thema Wie Ihr Unternehmen von Künstlicher Intelligenz (KI) profitieren kann

E-Book: Wie Ihr Unternehmen von Künstlicher Intelligenz (KI) profitieren kann

In unserem E-Book erfahren Sie die wichtigsten Inhalte rund um das Thema künstliche Intelligenz & wie Sie davon profitieren können!

Ein weiteres praktisches Beispiel, mit dem man häufig in direkte Verbindung tritt, sind Chatbots, die sich auf Internetseiten bereits vollautomatisiert mit Kunden unterhalten. Zum Beispiel bietet Facebook für Unternehmensseiten eine solche Funktion an. Manche Unternehmen haben aber auch auf der eigenen Webseite den First Level Support so eingerichtet, dass Anfragen in einem Chatfenster über einen Chatbot laufen. Diese können übliche Fragen direkt beantworten und müssen den Anwender nur in Ausnahmefällen an einen menschlichen Agenten verweisen.

Als letztes Beispiel sind hier nochmal die heute allgegenwärtigen Sprachassistenten zu nennen: Siri von Apple, Alexa von Amazon und Cortana von Microsoft sind die prominentesten Beispiele. Sie alle nutzen Natural Language Processing, um die eingesprochene Sprache auszuwerten und mittels Text-To-Speech-Verfahren passende Antworten zu formulieren. Das führt inzwischen so weit, dass man sich mit den Geräten unterhalten kann und die Dienste zu persönlichen Assistenten im Alltag werden.

Fazit zu Natural Language Processing

Natural Language Processing ist also eine Technologie, die beim Verständnis von menschlicher Sprache hilft. Es geht dabei sowohl um die syntaktische als auch um die semantische Analyse von Texten. Das geschieht, indem ein Text in seine Einzelteile zerlegt und daraus Zusammenhänge erkannt werden. Es gibt verschiedene Tools mit unterschiedlichen Eigenschaften, die bei der Umsetzung helfen. Für den Nutzer ist das vor allem bei Google sichtbar, die NLP beim Übersetzer und bei der Einordnung von Suchanfragen nutzen.

Verwandte Know-Hows

Marketing Automation (deutsch Marketingautomatisierung), ist eine softwaregestützte Methode zur Verbesserung und Effizienzsteigerung von Prozessen im Marketing und Vertrieb. Grundlage ist der Einsatz einer einzelnen Automatisierungsplattform, die es ermöglicht, alle Aspekte […]
Deep Learning bedeutet auf Deutsch „tiefgehendes Lernen“ und bezeichnet einen Teilbereich des maschinellen Lernens (Machine Learning). Die Lernmethode basiert auf großen Datenmengen, die durch künstliche, neuronale Netze verarbeitet werden und so der Informationsgewinnung dienen. Deep Learning ist z. […]
Der SAP CoPilot ist ein digitaler Assistent in der Form eines Chatbots. Der Anwender kann durch Chatten und Sprachbefehle mit diesem interagieren. CoPilot basiert auf Machine Learning und nutzt NLP, […]

Passende Angebote zum Thema

Sie suchen nach einer Möglichkeit FAQs effizient und innovativ zu beantworten? Sie wollen Ihren Kunden oder Mitarbeitern eine neue Dimension von Userexperience bieten?
Unkomplizierter Einstieg in viele wichtige SAP Themen Unsere eLearning Kurse sind praxisbezogen und professionell gestaltet. Sie erhalten Knowhow zu wichtigen Themen im SAP für Einsteiger und Fortgeschrittene. Für unser Angebot […]
Ein wichtiger Schritt in Richtung des neuen SAP Frameworks for Digital Business ist die in-memory Datenbank SAP HANA. Für bestehende SAP Kunden ist vor allem wichtig: Wie schaffe ich das […]
Kontakt aufnehmen
Ansprechpartner
Laura Feldkamp mindsquare Kundenservice
Laura Feldkamp Kundenservice