Abb. 2–1Dieses Venn-Diagramm unterscheidet die traditionelle Machine-Learning-Familie von der Representation-Learning-Familie der Machine-Learning-Techniken.
Ein entscheidender Vorteil des Deep Learning besteht darin, dass damit die Erfordernis nach Expertenwissen sinkt. Statt manuell Rohdaten zu Eingabemerkmalen zu kuratieren, kann man die Daten direkt in das Deep-Learning-Modell eingeben. Im Laufe vieler Beispiele, die man dem Deep-Learning-Modell anbietet, lernen die künstlichen Neuronen der ersten Schicht des Netzes, wie sie einfache Abstraktionen dieser Daten repräsentieren können, während jede nachfolgende Schicht lernt, immer komplexere, nichtlineare Abstraktionen der vorhergehenden Schicht darzustellen. Wie Sie in diesem Kapitel erfahren werden, ist dies nicht nur eine Frage der Bequemlichkeit, sondern das automatische Lernen von Features bringt noch weitere Vorteile mit sich. Features, die von Menschen entwickelt werden, sind oft nicht umfassend genug. Häufig sind sie übermäßig speziell und erfordern langwierige Zyklen aus Feature-Findung, -Entwurf und -Validierung, die sich über Jahre hinziehen können. Representation-Learning-Modelle hingegen generieren die Features sehr schnell (üblicherweise in Stunden oder Tagen des Modelltrainings), passen sich einfach an Änderungen in den Daten an (wie z.B. an neue Wörter, Bedeutungen oder Arten der Anwendung von Sprache) und stellen sich automatisch auf Verschiebungen in dem zu lösenden Problem ein.
2.1.2Natural Language Processing
Natural Language Processing (NLP), also die Verarbeitung natürlicher Sprache, ist ein Forschungsfeld an der Schnittstelle zwischen Informatik, Linguistik und künstlicher Intelligenz (Abbildung 2–2). Bei NLP wird die natürlich gesprochene oder geschriebene menschliche Sprache – wie etwa der Satz, den Sie gerade lesen – mit Maschinen verarbeitet, um automatisch eine Aufgabe zu erledigen oder die Erledigung einer Aufgabe für Menschen zu erleichtern. Sprachnutzungen, die nicht unter das Dach der natürlichen Sprachen passen, könnten Codes in einer Programmiersprache oder kurze Strings aus Zeichen in einer Tabellenkalkulation sein.
Beispiele für NLP in der Industrie sind:
Klassifikation von Dokumenten:Die Sprache innerhalb eines Dokuments (z.B. einer E-Mail, eines Tweets oder einer Filmkritik) wird genutzt, um dieses in eine bestimmte Kategorie einzuordnen (z.B. »dringend«, »positive Aussage« oder »vorhergesagte Richtung des Preises für die Aktien eines Unternehmens«).
Maschinelle Übersetzungen:Übersetzungsfirmen werden durch maschinengenerierte Vorschläge bei der Übersetzung aus einer Quellsprache (z.B. Englisch) in eine Zielsprache (z.B. Mandarin oder Deutsch) unterstützt; inzwischen gibt es immer mehr vollautomatische – wenn auch nicht immer perfekte – Übersetzungen zwischen Sprachen.
Suchmaschinen:Automatische Vervollständigung der Suchbegriffe der Benutzer und Vorhersage, welche Informationen oder Websites gesucht werden.
Spracherkennung:Das Interpretieren von Sprachbefehlen zum Bereitstellen von Informationen oder Durchführen von Handlungen, wie bei den virtuellen Assistenten von Amazon, von Apple oder von Microsoft.
Chatbots:Das Führen eines natürlichen Gesprächs über einen längeren Zeitraum. Obwohl das bisher noch nicht völlig überzeugend erfolgt, sind solche Systeme dennoch sehr hilfreich für relativ lineare Konversationen über eng begrenzte Themenfelder, wie etwa für die Routinegespräche an Kunden-Hotlines von Unternehmen.
Abb. 2–2NLP sitzt an der Schnittstelle zwischen Informatik, Linguistik und künstlicher Intelligenz.
Zu den NLP-Anwendungen, die sich am einfachsten bauen lassen, gehören Rechtschreibprüfungen, Programme, die Synonyme vorschlagen, und Werkzeuge zur Stichwortsuche. Diese einfachen Aufgaben können relativ direkt mit deterministischem, regelbasiertem Code erledigt werden, der zum Beispiel Referenzwörterbücher oder Thesauri verwendet. Deep-Learning-Modelle sind für solche Anwendungen unnötig komplex, und deshalb werden solche Modelle in diesem Buch nicht weiter diskutiert.
Zu NLP-Aufgaben mit mittlerer Komplexität gehören das Zuweisen einer Lesefunktion auf Schülerniveau zu einem Dokument, das Vorhersagen der am wahrscheinlichsten folgenden Wörter bei einer Abfrage in einer Suchmaschine, das Klassifizieren von Dokumenten (siehe die oben gezeigte Liste) und das Extrahieren von Informationen wie Preisen oder benannten Objekten2 aus Dokumenten oder Websites. Diese mittelschweren NLP-Anwendungen lassen sich recht gut mit Deep-Learning-Modellen umsetzen. In Kapitel 11 werden Sie z.B. eine Vielzahl von Deep-Learning-Architekturen nutzen, um die Stimmung einer Filmkritik vorherzusagen.
Die am höchsten entwickelten NLP-Implementierungen sind für das maschinelle Übersetzen (siehe die oben gezeigte Liste), das automatisierte Beantworten von Fragen sowie für Chatbots erforderlich. Solche Anwendungen sind kompliziert, da sie in der Lage sein müssen, mit einsatzspezifischen Nuancen zurechtzukommen (Humor ist z.B. besonders wandelbar): Eine Antwort auf eine Frage kann von den bereits erteilten Antworten auf zuvor gestellte Fragen abhängen, und ein Sinn kann sich über eine längere Textpassage ergeben, die sich über mehrere Sätze erstreckt. Solche komplexen NLP-Aufgaben würden den Rahmen und Umfang dieses Buches überschreiten. Allerdings liefert der hier behandelte Stoff Ihnen zumindest eine hervorragende Grundlage für deren Entwicklung.
2.1.3Eine kurze Geschichte des Deep Learning für NLP
Abb. 2–3 Meilensteine bei der Anwendung des Deep Learning auf die Verarbeitung natürlicher Sprache
Der Zeitstrahl in Abbildung 2–3 hebt aktuelle Meilensteine bei der Anwendung von Deep Learning auf NLP hervor. Er beginnt im Jahre 2011, als der Informatiker George Dahl von der University of Toronto und seine Kollegen von Microsoft Research den ersten großen Durchbruch beim Einsatz eines Deep-Learning-Algorithmus auf einen großen Datensatz präsentierten.3 Bei diesem Durchbruch kamen Daten aus natürlicher Sprache zum Einsatz. Dahl und sein Team trainierten ein tiefes neuronales Netzwerk darauf, ein beträchtliches Vokabular an Wörtern aus Sprachaufzeichnungen zu erkennen. Ein Jahr später kam, wie bereits in Kapitel 1 ausgeführt wurde, der nächste entscheidende Durchbruch auf dem Gebiet des Deep Learning ebenfalls aus Toronto: AlexNet fegte die Konkurrenz aus traditionellen Machine-Learning-Systemen beim ImageNet Large Scale Visual Recognition Challenge (Abbildung 1–16) aus dem Rennen. Die erstaunliche Leistung dieses Systems sorgte dafür, dass sich der Fokus eine Zeitlang nun auf Anwendungen zum maschinellen Sehen (Machine Vision) richtete.
Ab 2015 begann der Fortschritt beim Deep Learning sich vom maschinellen Sehen auf NLP-Wettbewerbe auszuweiten, wie etwa denen, die die Genauigkeit von maschinellen Übersetzungen bewerten. Diese Deep-Learning-Modelle