Blog
Artificial Intelligence, Machine Learning, Deep Learning und Natural Language Processing – Als Nicht-Entwickler schaltet man schnell ab, wenn das heutzutage allgegenwärtige Buzzword-Bingo rund um das Thema künstliche Intelligenz beginnt. Die Begriffe werden gerne inflationär, synonym oder sogar falsch verwendet. Um etwas Licht ins Dunkel zu bringen und einen erfolgreichen Umgang mit Anwendungen künstlicher Intelligenz zu ermöglichen, möchten wir einmal mit den relevanten Begriffen aufräumen.
Damit beginnen wir am besten ganz vorne – also, alles auf Anfang:
Künstliche Intelligenz (auch: KI, Artificial Intelligence, AI) dient als Oberbegriff für alle Forschungsbereiche, die sich damit beschäftigen, wie Maschinen eine Leistung menschlicher Intelligenz erbringen können.
Oft fallen auch die Begriffe starke und schwache künstliche Intelligenz zur weiteren Kategorisierung: Während die (aktuell anwendbare) schwache künstliche Intelligenz eine effiziente Simulation einzelner, menschlicher Fähigkeiten ermöglicht, kann die (noch realitätsferne) starke künstliche Intelligenz so eigenständig denken, verknüpfen und handeln wie der Mensch.
Machine Learning (auch: Maschinelles Lernen, ML) wird oft synonym mit dem Begriff Künstliche Intelligenz genutzt wie verstanden, ist der KI tatsächlich aber als Unterbegriff zuzuordnen.
Der Teilbereich ML zeichnet sich durch die Fähigkeit des selbständigen Lernens aus und bedeutet damit nicht nur eine Imitation von Prozessen (bzw. Intelligenz), sondern aus Erfahrungen Wissen zu generieren.
Im Falle des Machine Learnings meint das ein Lernen von statistischen Mustern aus möglichst repräsentativen, historischen Daten. Dadurch können heute Prozesse (teil-) automatisiert und somit optimiert werden, die bislang komplett manuell durchgeführt werden mussten.
Beispielsweise braucht ein modernes, auf Machine Learning basierendes Bilderkennungssystem für eine zuverlässige Bilderkennung nur Beispiele, die zuvor mit der richtigen Antwort getaggt wurden. Aus diesen repräsentativen Daten kann der Machine Learning Algorithmus lernen, spezifische Objekte zu unterscheiden. Da es zu kompliziert wäre, allgemeingültige Wenn-Dann-Regeln auf Pixelebene zu schreiben, die das Aussehen eines Objekts genau definieren, würde ein regelbasiertes Expertensystem wahrscheinlich nie dieselbe Performance erreichen.
Auch sind solche regelbasierten Systeme im Gegensatz zu Machine Learning Algorithmen nicht übertragbar. Ein System, das anhand von manuell geschriebenen Regeln deutsche Texte klassifiziert, ist für chinesische Texte wahrscheinlich nicht anwendbar. Liegen allerdings Daten für Deutsch und Chinesisch vor, bestehen gute Chancen, dass nach einer sprachspezifischen Vorverarbeitung der gleiche Machine Learning Algorithmus verwendet werden kann, um die gewünschte Klassifikation von deutschen als auch chinesischen Texten zu lernen.
Als Folge dessen erfordert ein regelbasiertes Expertensystem bei komplexen Problemen initial eine lange und kostspielige Entwicklungszeit. Die entstehenden Systeme sind daraufhin ebenso komplex, wie das ursprüngliche Problem, was auch die Pflege und Weiterentwicklung aufwändig macht. Ein auf Machine Learning basierendes System hat hingegen typischerweise deutlich weniger Code, da die Logik nicht explizit niedergeschrieben werden muss, und schafft damit Kosten- wie Performance-Vorteile.
Wenn davon auszugehen ist, dass zukünftige Entscheidungen auf Basis der Erkenntnisse historischer Daten getroffen werden können, bietet sich Machine Learning als Werkzeug zur (Teil-)Automatisierung von Prozessen an – gesetzt den Fall, dass zu dem konkreten Problem entweder bereits Daten vorliegen oder einfach erstellt werden können.
Deep Learning (auch: DL, Tiefgehendes Lernen) wiederum ist ein Teilbereich des Machine Learning. Hier “spinnen” entsprechende Systeme das durch ML Gelernte weiter: Sie agieren und optimieren sich auf Basis von großen Mengen historischer Daten eigenständig, also ohne, dass Vorkenntnisse einprogrammiert werden mussten.
Möglich wird das durch die an den neuronalen Netzen des menschlichen Gehirns inspirierte Funktionsweise: Durch seinen vielschichtigen (ergo tiefergehenden) Aufbau lernt das System aus relevanten Trainingsdaten grundlegende Muster und leitet selbständig komplexere Muster ab. Dabei können die Deep-Learning-Modelle so komplex werden, dass weder steuer- noch nachvollziehbar ist, was genau eigentlich erlernt wird. Und auch DL ist auf die Problemstellungen der eingespielten Daten begrenzt, kann unter den richtigen Bedingungen aber wesentlich bessere Ergebnisse liefern, als einfachere ML Algorithmen.
Unwahrscheinlich große Datenmengen, die nach solchen Mustern untersucht werden können, sind Voraussetzung für das tiefgehende Lernen. Anwendung findet DL heutzutage daher typischerweise in der Gesichts-, Objekt- oder Spracherkennung.
Das macht Machine Learning und Deep Learning zu Werkzeugen zur Automatisierung von Systemen. Werkzeuge, die auch wir für die Entwicklung unserer Produkte nutzen – zumindest das Machine Learning. Um das finale Zusammenspiel zu verdeutlichen, ist eine Einordnung unserer Technologien in das Gesamtbild sinnvoll.
Als Kombination von Linguistik und Künstlicher Intelligenz geht es beim Natural Language Processing (auch: NLP) um die maschinelle Verarbeitung natürlicher Sprache.
NLP wiederum ist ein Oberbegriff für die beiden Technologien Natural Language Understanding (auch: NLU) und die Natural Language Generation (auch: NLG, Automatische Textgenerierung), also für das Verstehen und das automatische Generieren natürlich sprachlicher Texte.
Oder kurz: Text zu Daten und Daten zu Text.
Wir nutzen Machine Learning quasi in all unseren semantischen Anwendungen zum automatisierten Verstehen von Inhalten, beispielsweise zur Kategorisierung von Texten, zum Clustering von News-Artikeln oder zum Verstehen der Eingabe des Nutzers bei Chatbots. Auch bei unserer für mysimpleshow entwickelten Explainer Engine nutzen wir Machine Learning, um passende Visualisierungen für die relevanten Keywords vorzuschlagen. Bei der automatischen Textgenerierung mit unserer SaaS-Lösung textengine.io unterstützt Machine Learning den User mit einer automatischen, linguistischen Analyse der von ihm geschriebenen Templates.
Um es schlussendlich noch einmal zusammenzufassen: Künstliche Intelligenz ist als Oberbegriff zu sehen. Machine Learning und Deep Learning sind demnach Teilbereiche der künstlichen Intelligenz, die Methoden zur Automatisierung von Prozessen beschreiben. Diese werden für das Natural Language Processing, der Kombination von künstlicher Intelligenz mit der Linguistik und damit zur maschinellen Verarbeitung der menschlichen Sprache, genutzt.