Machine-Learning: So verstehen Sie die Black-Box

Künstliche Neuronale Netze sind momentan in aller Munde. Auch wir haben uns in einem vorherigen Artikel zum Thema Data Science bereits mit der Absatzplanung als konkretem Anwendungsbeispiel beschäftigt.

Aber

  • können wir Modellen vertrauen, die viel zu komplex sind, um sie zu verstehen?
  • Wie können wir sicherstellen, dass unsere maschinenunterstützten Entscheidungen nicht auf unethischer Basis getroffen werden?
  • Wie können wir feststellen, welche Faktoren einen wesentlichen Einfluss auf den Output haben?

Ein Ansatz, um diese Fragen zu beantworten, sind Methoden zur Interpretation von Machine-Learning-Modellen.

Verschiedene Modellansätze für Maschinelles Lernen

Im Maschinellen Lernen wird ein Modell bzw. ein Algorithmus mit Daten dazu trainiert, Vorhersagen treffen zu können. Es geht also darum, dass ein Modell aus der Datengrundlage Erfahrungen zieht, die danach auf neue Daten angewandt werden können. Das Modell lernt demnach Strukturen in den Daten zu erkennen.

Ein Beispiel für solch ein Modell ist eine Klassifizierung. Das kann eine Einteilung von Kunden in Käuferprofile sein, Objekterkennung auf Bildern oder eine Themeneinteilung von Artikeln. Dabei ist es z.B. nicht immer nur interessant, in welches Käuferprofil ein Kunde eingeteilt wird, sondern auch die Kausalitäten zu verstehen, um vorhersehende Maßnahmen zu treffen.

Ein Datensatz besteht meist aus vielen Merkmalen mit unterschiedlicher Ausprägung. Das können numerische Werte sein (Zeitangaben, Absatzzahlen …) oder kategorische Merkmale (Länder, Branchen …).

Von einigen Machine-Learning-Modellen lässt sich direkt ablesen, welchen Einfluss ein Merkmal auf die Vorhersage hat. Das gilt u.a. für Regressionsmodelle und Entscheidungsbäume (siehe Grafik). Wenn die Anzahl der Merkmale, die in das Modell einfließen, gering ist, können die Modelle visualisiert werden und dadurch Kausalitäten erkannt werden.

Eintscheidungsbaum für eine Kaufentscheidung
Ein Entscheidungsbaum, der bestimmen soll, ob ein Kunde das Produkt kaufen wird anhand bestimmter Merkmale. In diesem Beispiel scheint das Alter der entscheidende Faktor für die Kaufentscheidung zu sein.

Auf der anderen Seite gibt es viele Machine-Learning-Modelle, die sehr gute Ergebnisse liefern, aber zu komplex sind, um die Einflussfaktoren abzulesen. Hierzu gehören Support Vector Machines, die unterschiedliche Klassen durch Ebenen unterteilen, Ensemble-Methoden, in denen mehrere Machine-Learning-Modelle demokratisch abstimmen und Künstliche Neuronale Netze, die als viele lineare Regressionen in Ebenen verstanden werden können.

Die Performance dieser Modelle ist in der Regel am besten, wenn die Datenmenge groß genug ist. Aber wie kann man einem Modell im produktiven Einsatz trauen, das man nicht verstehen kann?

Beurteilung des Outputs der Modelle nach der Trainingsphase

Normalerweise werden Machine-Learning-Modelle auf Trainingsdaten trainiert, gegebenenfalls werden Validierungsdaten zum Modell-Tuning verwendet. Die Performance wird an Testdaten gemessen, also Daten, bei denen das Ergebnis bereits bekannt ist. Hierbei ist es wichtig, dass das Modell diese Testdaten nicht kennt, also nicht mit diesen trainiert wurde. Der Output des Modells für diese Daten wird dann mit den tatsächlich beobachteten Ergebnissen verglichen. Nur so erhält man ein realistisches Bild der Performance.

Es gibt unterschiedliche Qualitätsmaße, die bei Performancetests zum Einsatz kommen: Genauigkeit / Trefferquote, unterschiedliche Abstandsmaße etc. Diese sind ein Ausdruck für die quantitative Performance des Modells, aber nicht (unbedingt) für die Qualität des Modells.

Dies zeigt sich z.B. bei einer Textklassifikation von Artikeln in die Klassen „Christentum“ und „Atheismus“ wie dies Marco Tulio Ribeiro in „Why should I trust you? Explaining the Predictions of any Classifier“ beschreibt. In dem genannten Beispiel geht es darum zu erkennen, ob ein Artikel vom Christentum oder vom Atheismus handelt. Mit 94% Genauigkeit werden die Artikel den Themen zugeordnet. Auf den ersten Blick schein das Modell also die Inhalte der Texte sehr gut zu analysieren. Eine qualitative Untersuchung des Modells zeigt jedoch, dass Wörter wie „Posting“, „Host“ und „Re“ für einen Text über Atheismus sprechen. Diese Wörter haben aber nichts mit dem Inhalt zu tun und können die Modellergebnisse bei neuen Inputdaten verfälschen.

Qualitative Beurteilung durch lokale Vereinfachung

Ein Ansatz, um komplexe Modelle qualitativ bzw. inhaltlich beurteilen zu können, sind Approximationen der Modelle durch interprätierbare (simplere) Modelle, von denen die Einflussfaktoren abgelesen werden können.

LIME (Locally Interpretable Model-Agnostic Interpretations) ist eine Variante. Hier wird jegliches Machine-Learning-Modell lokal durch ein lineares Modell approximiert. Insgesamt gibt es mehrere Varianten dieser Modelle, die unterschiedliche Stärken aufweisen (vgl. Shap, breakDown, Anchors, ICE / PDP).

Wenn ein Datenpunkt zur Vorhersage in das Modell gefüttert wird, werden gleichzeitig auch Vorhersagen mit ähnlichen Punkten durchgeführt. Diese Punkte werden verwendet, um das lineare Modell zu trainieren. Für die Vorhersagen wird das originale Black-Box-Modell verwendet. Ergebnis des linearen Modells ist es, die wichtigsten Einflussfaktoren auf die Vorhersage des tatsächlichen Modells zu bestimmen.

Greifen wir nochmal das Textklassifikationsbeispiel von vorher auf, so lässt sich feststellen, welche Wörter den größten Einfluss auf die Klassifikation als Artikel über Atheismus haben.

Bessere Verifizierung durch besseres Verständnis

Je besser wir die trainierten Machine-Learning-Modelle verstehen, desto besser können wir sie verifizieren. Methoden wie LIME helfen, undurchsichtige Modelle zu durchleuchten, zeigen mögliche Inkonsistenzen auf und geben uns sogar die Ursachen für bestimmte Vorhersagen. Außerdem eröffnen sie die Möglichkeit, dass auch Mitarbeiter aus Fachabteilungen Machine-Learning-Modelle teilweise nachvollziehen können und in die Validierung miteinbezogen werden können.

Bildnachweise

© CNStock – Shutterstock.com – #1052128307

Teilen Sie diesen Beitrag