Maschinelle Lernmodelle wiederverwenden und das "No Free Lunch"-Theorem

Maschinelle Lernmodelle wiederverwenden und das "No Free Lunch"-Theorem

von James Ravenscroft, Technischer Direktor (CTO) bei Filament


Maschinelle Lernmodelle wiederverwenden: Warum?

Bei der Lösung einheitlicher Anwendungsfälle kann das Trainieren eines maschinellen Lernmodells sehr nützlich sein, zum Beispiel wenn man Emotionen aus Kunden-Chatbot-Protokollen im Voraus bestimmt und verärgerte Kunden direkt an echte Menschen übergibt. Vielleicht kann man jedoch noch mehr Nutzen aus dem Modell herausholen, indem man es in mehr als nur einem Anwendungsfall einsetzt. Man könnte ein Emotionsmodell dazu verwenden, Kundenchatsitzungen zu priorisieren, aber auch um die Beobachtung von eingehenden E-Mail-Anfragen sowie Social Media-Kanälen zu unterstützen. Ein Modell kann oft mit deutlich weniger Aufwand über mehrere Kanäle und Anwendungsfälle hinweg aufgestellt werden, als ein komplett neues Trainingsset für jedes Problem, auf das Ihr Unternehmen stößt. Es gibt allerdings ein paar Einschränkungen, derer man sich bewusst sein sollte. Insbesondere der des "No Free Lunch Theorems", das sich mit den theoretischen Nachteilen befasst, die durch den Einsatz eines Modells über mehrere Anwendungsfälle hinweg entstehen.


Kein kostenloses Mittagessen? Was hat Essen damit zu tun?

Wer mit Künstlicher Intelligenz und maschinellem Lernen vertraut ist, dem sollte das "No Free Lunch Theorem" ein Begriff sein.

No Free Lunch Theorem

Nichts ist umsonst, aber eventuell bekommt man einen gewaltigen Rabatt!

Das 1996 von David Wolpert aufgestellte Theorem basiert auf dem Spruch "Es gibt kein kostenloses Mittagessen" und bezieht sich auf die Vorstellung, dass es ungewöhnlich oder gar unmöglich ist, etwas im Leben umsonst zu bekommen. Wolperts Theorem besagt, dass ein einziges maschinelles Lernmodell nicht für alle Probleme bestens geeignet sein kann. Eine andere Sichtweise dazu ist, dass es beim maschinellen Lernen keinen "Stein der Weisen" gibt. Wird Filament zu einem Machine Learning-Problem befragt, müssen wir oftmals eine Reihe von Ansätzen in Anhängigkeit von der Art und Qualität der erhaltenen Daten ausprobieren, um das System und die Ausgabeform zu trainieren, die unser Kunde erwartet. In der traditionellen Programmierung kann man einen Algorithmus einmal schreiben und (sofern er fehlerfrei ist) auf eine beliebige Anzahl neuer Anwendungsfälle anwenden. Hypothetisch gesprochen, könnte ein guter Entwickler ein Buchhaltungstool für Banken aufbauen und es für eine Bank in Großbritannien und eine Bank in China mit minimalen Änderungen einsetzen. Dies ist beim maschinellen Lernen nicht unbedingt der Fall.

Welche tieferen Auswirkungen hat dieses Theorem also auf moderne Anwendungsfälle des maschinellen Lernens? Laut Wolpert kann nicht garantiert werden, dass ein auf Datensatz A (10.000 Produktbewertungen auf Amazon mit positivem/negativem Stimmungsbild) trainierter Algorithmus auch gut auf Datensatz B (1.000 Social Media Posts, die Ihr Unternehmen erwähnen, ebenfalls mit positivem/negativem Stimmungsbild) funktioniert. Man könnte feststellen, dass es wirklich gut funktioniert, aber genauso gut, dass es ein Flop ist. Es gibt einfach keinen theoretischen Weg, das zu wissen! Das ist beängstigend, oder? Gut, vernünftig betrachtet, bewertet und vor dem Hintergrund, dass man Ansätze nutzt, um Modelle von Anwendungsfall zu Anwendungsfall anzupassen (bekannt als „domain adaptation“), ist es in der Praxis vielleicht gar nicht so schlecht ...


Also bedeutet „No Free Lunch“, dass ich meine Modelle nicht wiederverwenden kann?

Nicht direkt. Das Theorem besagt, dass es keinen Zusammenhang zwischen der Leistung des Modells in seiner vorgesehenen Umgebung und seiner Leistung in einer völlig neuen Umgebung gibt. Es schließt jedoch nicht aus, dass Korrelationen möglich sind, wenn man die Art der neuen Probleme und Daten kennt. Man kann es sich in Form von menschlicher Kompetenz und Spezialisierung vorstellen. Auf ihrem Weg durch das Bildungssystem lernen Menschen sich zu spezialisieren. Ein Humanmediziner und ein Tierarzt durchlaufen eine umfangreiche Ausbildung, um medizinische Eingriffe am Menschen bzw. am Tier durchführen zu können. Ein Tierarzt kann sehr gut verschiedene Tierarten operieren. Ein Tierarzt wäre jedoch ohne zusätzliche Ausbildung nicht in der Lage, einen verletzten Menschen mit der gleichen Professionalität zu operieren wie ein Humanmediziner.

Re-using machine learning models: example doctor

Ein Arzt weiß, wie man Menschen operiert, braucht aber eine zusätzliche Ausbildung, um mit Tieren zu arbeiten.

Vom Gefühl her funktionieren Maschinen ähnlich. Ein Modell, das auf Stimmungen im Kundenanfragen-Umfeld geschult ist, lernt den Wortschatz, mit dem Kunden beschreiben, wie zufrieden sie mit dem Service sind, den sie von einem Unternehmen erhalten haben. Folglich könnte man dieses Modell über eine Reihe von Kanälen einsetzen, in denen Kunden wahrscheinlich mit dem Unternehmen kommunizieren. Andererseits ist die Sprache, die ein Filmkritiker bei einer Film-Rezension verwendet, ganz anders als die eines Kunden, der sich über sein Einkaufserlebnis beschwert. Das bedeutet, dass Ihr Kundenanfragemodell wahrscheinlich nicht ohne Evaluierung und ggf. Anpassung für eine Stimmungsanalyse in Produktbewertungen wiederverwendet werden sollte. Ein Modell, das darauf trainiert ist, das Alter einer Person anhand von hochauflösenden digitalen Bildern zu erkennen, mag in einer Telefon-App gut funktionieren, wenn das Telefon über eine entsprechend hochwertige Kamera verfügt – mit niedrig aufgelösten Bildern von Webcams dürfte es jedoch zu kämpfen haben.


Wie weiß ich, ob mein Modell bei einem neuen Problem gut funktioniert?

Der erste Schritt um zu erkennen, ob sich ein Modell für ein neues Einsatzgebiet eignet, besteht darin, zu prüfen und zu verstehen, wie gut das Modell dort ohne Änderungen funktioniert. Wir erstellen dazu eine kleine (jedoch nicht zu kleine) Testumgebung für das neue Einsatzgebiet und beobachten, wie gut das alte Modell performt.

Eine geeignete Methode um diesen Prozess zu beschleunigen ist, das Modell auf den neuen Daten zu betreiben und die Ergebnisse von Menschen bewerten zu lassen – ähnlich wie ein Lehrer Prüfungsergebnisse bewertet. Steigt die Anzahl möglicher Kennzeichnungen im Modell, steigt auch die geistige Belastung angesichts der Anmerkungen. Einen Menschen zu fragen: "Ist das richtig?" ist eine viel einfachere Aufgabe, als ihn die Daten von Grund auf kennzeichnen zu lassen. Explosion.ai hat zur Datenerhebung ein paar wirklich gute Gedanken, die eine ähnliche Sichtweise suggerieren.

Sobald man einen Datensatz im neuen Einsatzfeld hat, kann man Genauigkeit, wiederholten Abruf und Präzision messen und beurteilen, ob das alte Modell gut genug funktioniert, um es schlichtweg ohne Änderungen in der neuen Umgebung einzusetzen. Entscheidet man sich für diesen Weg, bewährt es sich in der Praxis dennoch, die Leistung des Modells von Zeit zu Zeit zu überwachen und es regelmäßig an Mustern, bei denen die Klassifizierung fehlgeschlagen ist, neu zu schulen.

Hat das Modell nicht gut funktioniert, hat  man ein weiteres Ass im Ärmel: die Anpassung des Einsatzfeldes.


Was kann die Anpassung des Einsatzfeldes für die Wiederverwendung von Modellen bewirken?

Am 23. September 1999 verglühte ein 125 Millionen Dollar teurer Mars-Lander im Orbit um den roten Planeten – zum großen Entsetzen der über alle Maßen talentierten Ingenieurteams, die daran gearbeitet hatten. Die Theorie war fehlerfrei. Sorgfältige Kontrollen wurden durchgeführt. Warum ging die Mission dann in Flammen auf? Ein Überprüfungsgremium stellte im Nachhinein fest, dass ein Missverständnis zwischen den am Projekt arbeitenden Teams die Ursache war. Ein Teil der Ingenieure drückte die physikalische Größe für Kraft in der Maßeinheit Pfund aus, das andere Team zog es vor, die Maßeinheit Newton zu verwenden. Keine der beiden Gruppen lag falsch, aber diese kleine Fehlkommunikation hatte alle Maßangaben auf die Hälfte reduziert.

Re-using machine learning models: example rocket
Ein Missverständnis zwischen Teams, die im anglo-amerikanischen bzw. metrischen Maßsystem arbeiteten, verursachte einen teuren Unfall. Manchmal, wenn die Wissenschaft die Richtige, doch die Sprache falsch ist, braucht man nur einen gemeinsamen Dialekt.

Der springende Punkt ist, dass das maschinelle Lern-Modell, das man für Stimmungserkennung in einem bestimmten Umfeld trainiert hat, davon vielleicht gar nicht so weit weg ist. Eventuell muss es nur noch "optimiert" werden, damit es in einem neuen Einsatzgebiet gut funktioniert. Bei dieser, als "domain adaptation" bezeichneten Aufgabe geht es darum, Merkmale (Wörter) abzubilden, die dem Klassifikator helfen, Stimmungen in einem Einsatzbereich auf Merkmale (Wörter) zu übertragen, die ihm helfen, den anderen Einsatzbereich zu verstehen. Ein Modell, das auf Kritiken zu Mobiltelefonen trainiert wurde, könnte beispielsweise lernen, negative Wörter wie "unempfindlich, langsam, veraltet" zu verwenden, während bei Film-Rezensionen eher negative Wörter wie "klischeehaft, langweilig, langsam" verwenden werden. Das Zuordnen von Eigenschaften ist keine exakte Wissenschaft – indem man jedoch Ansätze wie die von Glorot, Bordes and Bengio (2011) verwendet, können gute Zuordnungen gefunden werden.


Fazit

Der Aufbau maschineller Lernmodelle ist eine wertvolle, aber zeitraubende Tätigkeit. Wenn möglich, ist es sinnvoll, Modelle zu erstellen und wiederzuverwenden. Es ist jedoch wichtig, sich der Tatsache bewusst zu sein, dass sich Modelle ggf. auf die Aufgabe spezialisieren, auf die sie trainiert werden und dass eventuell einige Anpassungen notwendig sind, um sie in neuen Umgebungen einsetzen zu können. Wir haben Ihnen einige Tipps zur Leistungsbewertung eines Modells bei neuen Aufgaben gegeben, sowie Hinweise, wann die Wiederverwendung eines Modells in einer neuen Umgebung angemessen ist. Zudem haben wir das Konzept „domain adaptation“ vorgestellt (manchmal auch als "Transfer-Learning" bezeichnet), das es dem bestehenden Modell ermöglicht, die "Sprache" des neuen Problemraums zu lernen.

Das „No Free Lunch“-Theorem kann ziemlich beängstigend klingen, wenn es um die Wiederverwendung von Modellen geht. Das Wissen über die Leistungsfähigkeit eines Modells bei einer bestehenden Aufgabe garantiert nicht, dass es auch in einem neuen Raum funktioniert. Mit einigen der oben genannten Kenntnisse und Techniken bekommt man jedoch ein gewisses Maß an Sicherheit, dass ein Modell bei einer neuen Aufgabenstellung funktionieren wird, und man kann es jederzeit "anpassen", um es zu verbessern. Letztendlich liegt der Beweis, dass diese Techniken effektiv sind, bei Anbietern wie IBM, Microsoft und Google. Diese Technik-Titanen haben weit verbreitete, anerkannte allgemeine Modelle für Aufgabenfamilien entwickelt, die in vielen Bereichen für NLP, Spracherkennung und Bildverarbeitung relevant sind. Einige von ihnen sind statisch, andere trainierbar (obwohl "trainierbar" oft eine Anpassung des Einsatzbereichs bedeutet), die meisten von ihnen funktionieren jedoch in einer Vielzahl von Anwendungsfällen sehr gut mit wenig bis gar keiner Änderung. Das Wichtigste ist, gebührende Sorgfalt walten zu lassen, um zu prüfen, ob die Modelle für Sie und Ihr Geschäft funktionieren.

Kommentare
Einen Kommentar schreiben
Entschuldigung

Ihr Browser ist leider nicht aktuell genug.
Um diese Webseite zu benutzen, benötigen Sie einen aktuellen Browser
Wir empfehlen einen der folgenden Browser in der aktuellsten Version zu installieren.

Auf iOS Geräten sollte mindestens die Betriebssystem Version iOS 9 installiert sein.

Mozilla Firefox Google Chrome Microsoft Edge Internet Explorer