Das Trainieren von Systemen wie dem gestern beschriebenen GPT-2 ist sehr aufwändig (8 Millionen Texte, wochenlange Rechenzeit). Glücklicherweise kann man das Trainings-Ergebnis (das Sprachmodell) vielseitig weiterverwerten. Ungefähr so, wie der Mensch nach seiner Schulausbildung (“Allgemeinbildung”) noch eine Spezialausbildung machen kann. Bei Bildverarbeitung gibt es das schon länger, für Texte kam der Durchbruch erst im letzten Jahr. Das heißt “Transfer Learning”, d.h. das bei der allgemeinen Aufgabenstellung Gelernte (nächstes Wort vorhersagen) kann man auf andere Aufgabenstellungen transferieren (Fragen zum Text beantworten). Das ist sehr nützlich, weil die anderen Aufgaben oft nur wenige Beispiele haben, von denen das System lernen könnte.
Ich gebe Ihnen mal einen kleinen Überblick, mit Stichworten unter denen Sie selbst nach weitergehenden Informationen suchen können (oder antworten Sie einfach auf diese Email). Das ganze Forschungsfeld heißt “Natural Language Processing” (NLP). Nicht alles, was ich hier beschreibe, wurde mit Transfer Learning gemacht.
Die Aufgabenstellungen sind nicht neu, aber die Qualität hat in den letzten Jahren immer weiter zugenommen. Wenn Sie also vor, sagen wir mal, zwei Jahren noch enttäuscht von der Leistungsfähigkeit damaliger Systeme gewesen sein sollten, lohnt es sich unbedingt, heute nochmal hinzusehen.
Texte erfinden. Aus Basisdaten eines Produktinformationssystems wie “Herren-Poloshirt”, “Gepflegte Sportivität” usw. könnte das System die gängige Katalog-Poesie weiterspinnen:
Was bei den Hemden gut aussieht, steht auch modernen Poloshirts. Das ist gepflegter Casual-Look in Bestform. Der authentische Oxford-Charakter bringt dem Herrenpolo eine ganz neue, modische Aussage. Die Farbigkeit des sportiven Polos wirkt durch den Weißanteil sanfter und erzielt die gewisse Leichtigkeit. Natürlich in wertiger Verarbeitung, sowohl in Ausstattung als auch mit der feinen Piqué-Qualität. Durch den Elasthananteil erhält dieses Poloshirt den Hi-Flex-Charakter und beweist sich als sportlicher Begleiter! (https://www.brax.com/de/de/kaufen/hi-flex-style-petter-ocean,284510,4162441,23,1,,,Cadiz_836507.html)
So etwas wird schon lange gemacht, es läuft unter Natural Language Generation (NLG). Es gibt relative einfache regelbasierte Systeme, die sicher bald von Sprachmodellen wie dem gestern zitierten GPT-2 abgelöst werden. Die Anpassung auf Mode-Vokabular (oder welche Fachsprache auch immer) sollte gut im Rahmen des heutigen Entwicklungsstandes machbar sein. Wahrscheinlich wird man immer noch einen Menschen für die abschließende Qualitätskontrolle brauchen (human in the loop).
Sentiment analysis bedeutet das Erfassen der “Stimmung” eines Texts, z.B. ob ein Kommentar über Ihr Produkt nun positiv oder negativ gemeint ist. Wenn die Kritik allzu negativ ausfällt, sollte vielleicht Ihr Social Media Team sich das mal bevorzugt ansehen. Die Sprachmodelle schneiden auch hier gut ab. Bei Filmbesprechungen hängt man an den Text einfach das Wort “positiv” oder “negativ” an, und das Modell sagt, welche Variante wahrscheinlicher ist.
Automatische Übersetzung erwähne ich nur am Rande, auch hier gab es große Fortschritte, versuchen Sie einfach mal die Online-Übersetzung des deutschen Startups DeepL.
Named Entity Recognition befasst sich damit, aus einem Text die Eigennamen herauszufinden. Hier ein, wie ich finde, spektakuläres Beispiel von Zalando Research für Texte, die von Mode handeln:
Das System erkennt aus dem Kontext, dass “navy” hier eine Farbe ist (und nicht die Marine), dass “Alexander McQueen” eine Marke (und keine Person) ist usw.
Reading comprehension, also das Verstehen von Texten, kann natürlich auch sehr nützlich sein, denken Sie nur an das Beantworten von Support-Anfragen. Hier ist ein Beispiel aus dem Jahre 2016 (Rajpurkar et al.), wo drei Fragen zu einem Text beantwortet werden.
Und schließlich die Chatbots, um die es etwas still geworden ist, weil sie für viele Anwendungen einfach noch zu dumm sind.
Wenn man aber noch ein bisschen weiterdenkt, kann man sich Chatbots vorstellen, die einem Website-Besucher gleich das Produkt verkaufen, und dabei noch selbstständig lernen, wie man das am besten macht.
Mit Reinforcement Learning lernen ein neuronales Netz anhand von “Belohnung” und “Strafe”. Es gibt Systeme, die so Schach oder Go selbstständig lernen, indem sie ganz viele Spiele spielen. Dazu brauchen sie kein Hintergrundwissen über Schach oder Go, es reicht das Feedback, ob eine Partie gewonnen oder verloren wurde. Das wurde auch für Videospiele wie Atari Breakout demonstriert, wo der Algorithmus nur die Pixel auf dem Bildschirm und den Score “sieht”, und schon nach ein paar Stunden interessante Tricks findet (schauen Sie sich dieses 2-Minuten Video ruhig mal an).
Verkaufen ist ja auch nur ein Spiel: Der Website-Besucher macht einen Zug, etwa “Haben Sie nicht noch einen Schuh, der ungefähr so aussieht, aber besonders für’s Jogging geeignet ist?”, der Chatbot macht einen Gegenzug, “Hier, was halten Sie von dem?” und zeigt ein verwandtes Produkt. Wie beim Videospiel gibt es einen Score – Anzahl Verkaufsabschlüsse, oder gesamter Umsatz. Sinnvollerweise sollten Retouren vom Score abgezogen werden, vielleicht mit einem Straf-Faktor von zwei oder drei – je nachdem, wieviel Wert Sie auf langfristige Kundenbindung legen wollen. Das System kann im Laufe von Tausenden Verkaufs-Interaktionen lernen, wie man am besten auf den jeweiligen Zug der Gegenseite reagiert. Das Sprachmodell ist auf jeden Fall in der Lage, die gesamte vorangegangene Konversation in die Bestimmung des besten nächsten Zuges einzubeziehen. Nach ein paar Wochen Lernen lautet der Gegenzug dann vielleicht “Hier, was halten Sie von dem? Der wird auch gern genommen!” oder “Hier, was halten Sie von dem? Wir haben nur noch 2 Paar auf Lager.” Ähnliches kann man sich für Support-Anfragen vorstellen, Score ist die Zufriedenheit des Kunden (“Hat Ihnen die Antwort weitergeholfen?” 1-5 Sterne).
All diese Technologien wandern ziemlich schnell aus den Forschungslabors in allgemein benutzbare APIs (etwa von Google, Rasa oder Microsoft) und Produkte. So werden auch für den “Softwareentwickler von nebenan” Dinge machbar, die vor einigen Jahren noch unmöglich schienen.
Matthias Berth