Explainable AI Methoden wie LIME, ermöglichen es, die Vorhersagen von Machine Learning Modellen zu erklären und zu interpretieren. Sie bieten eine Lösung für den Trade-Off zwischen Nachvollziehbarkeit und Performance, bzw. zwischen komplexen Modellen, die große und vielseitige Datensätze stemmen können, und weniger komplexen Modellen, die deutlich leichter interpretierbar, allerdings in der Regel auch weniger performant sind.
Kurz gesagt ermöglichen sie Einblick in die Kriterien hinter Vorhersagen von Machine Learning-Modellen.
Dadurch kann man gezielt an Schwachstellen arbeiten und diesen beim Training des Modells gegensteuern.
Viele Machine Learning-Anwendungen setzen Vertrauen in diese voraus, damit die Anwendung bei einer Entscheidung helfen kann und deren Rat nicht mangels Vertrauens einfach ignoriert wird. Kennt man dank explainable AI Methoden wie LIME die Gründe einer Vorhersage, fällt die Entscheidung leichter, der Anwendung zu vertrauen.
Die Anzahl an Machine Learning-basierten Anwendungen im alltäglichen Leben steigt rasant. Wo früher statisch programmierte Regeln für die Funktion eines Programms verantwortlich waren, setzt man heutzutage vermehrt auf dynamische Modelle. Deren Ausgabe steht nicht von vornherein fest, sondern hängt sehr stark von den Trainingsdaten ab. Daher ist es bei der Entwicklung dieser Modelle entscheidend, diese nicht nur anhand von Metriken wie der erzielten Genauigkeit auf Testdaten zu evaluieren, sondern auch die Interpretierbarkeit dieser Modelle miteinzubeziehen. Interpretierbarkeit bedeutet in diesem Zusammenhang, zu verstehen, warum bestimmte Vorhersagen von einem Modell getroffen werden. Diese Gründe zu kennen, erhöht die Akzeptanz und das Vertrauen in Machine Learning-basierte Anwendungen.
Für bestmögliche Ergebnisse mit großen und vielseitigen Datensätzen muss man häufig auf komplexe Modelle zurückgreifen. Allerdings ist deren Interpretierbarkeit durch die Anwender in der Regel gering, daher muss man teilweise Abstriche bei der Modell Performance in Kauf nehmen. Um also die Interpretierbarkeit auch von komplexen Modellen aus dem Deep Learning zu steigern, wurden Toolkits entwickelt, die die Ursachen der Modell-Vorhersagen veranschaulichen.
Beispielsweise kann ein solches Modell dann in der Medizin bei der Krebsdetektion anhand von CT oder MRT Bildern helfen. Explainable Artificial Intelligence (XAI) Tools heben die für die Klassifizierung entscheidenden Bereiche in Aufnahmen einfach und schnell hervor und unterstützen somit den behandelnden Arzt bei der Entscheidungsfindung maßgeblich.
Sogar bei komplexen Modellen, die im Bereich des Deep Learning, z.B. bei der Bildklassifikation, ihre Anwendung finden, wurden Lösungen für bessere Interpretierbarkeit entwickelt.
Die explainable AI Methode LIME (Local Interpretable Model-agnostic Explanations) hilft dabei, ein Machine Learning-Modell zu durchleuchten und dessen Vorhersagen individuell verständlich zu machen. Die Methode erklärt die Entscheidung eines Klassifikators für eine bestimmte einzelne Instanz, ist also für lokale Betrachtung geeignet.
Vereinfacht gesagt manipuliert LIME die Input-Daten und erstellt daraus eine Reihe künstlicher Daten, die nur einen Teil der ursprünglichen Attribute enthalten. So werden beispielsweise bei Textdaten verschiedene Versionen des Ursprungstextes erzeugt, bei denen eine bestimmte Anzahl von verschiedenen, zufällig gewählten Worten entfernt wurden. Diese neuen künstlichen Daten werden anschließend verschiedenen Kategorien zugeordnet (klassifiziert). So können wir durch die An- bzw. Abwesenheit bestimmter Schlüsselworte deren Einfluss auf die Klassifizierung des gewählten Textes erkennen.
Prinzipiell ist die explainable AI Methode LIME mit vielen verschiedenen Klassifikatoren kompatibel und kann mit Text-, Bild-, und tabellarischen Daten verwendet werden. So können wir das gleiche Muster auch bei der Bildklassifizierung anwenden, wobei die künstlichen Daten dann nicht einen Teil der ursprünglichen Worte enthalten, sondern Bildausschnitte (Pixel) eines Bildes.
Anhand von unserem folgenden Beispiel zeigen wir dies und trainieren ein Natural Language Processing (NLP) Modell, das Nachrichtentexte verschiedenen Kategorien wie z.B. Hockey, Autos oder Baseball zuordnet.
Für das Beispiel verwenden wir folgende Kategorien aus dem öffentlich zugängigen 20 Newsgroup Datensatz des Scikit-Learn Pakets:
Ein Eintrag aus den Daten sieht wie folgt aus:
Um die Nachrichten klassifizieren zu können, verwenden wir eine einfache Pipeline, welche die rohen Textdaten zuerst über einen Tf-idf-Vectorizer zunächst in Vektorform transformiert, die mit Machine Learning-Modellen kompatibel ist. Anschließend setzen wir ein multinomiales Naive Bayes Modell zur Klassifikation der transformierten Daten ein.
Die Überprüfung der Klassifikationsgenauigkeit unter Verwendung eines zurückgehaltenen Testdatensatzes ergibt einen guten Wert von 91,9%.
Um zu untersuchen, ob das NLP Modell auch sinnvolle Worte (Attribute) für die Klassifizierung heranzieht, verwenden wir den LIME Text Explainer. Dazu können wir dem Explainer einzelne Text-Instanzen zuführen. Die Rückgabe liefert eine Übersicht, wie groß der Beitrag der einzelnen Attribute (Worte) dazu war, die getestete Text-Instanz einer bestimmen Klasse zuzuordnen. Um die Ausgabe übersichtlich und verständlich zu halten, beschränken wir sie auf die 6 einflussreichsten Attribute bei der Klassifizierung.
In unserem Fall wurde der oben gezeigte Text der Kategorie Hockey mit einer Wahrscheinlichkeit von 85% zugeordnet. Ausschlaggebend waren hier der Kanadische Eishockeyverein Oilers, die National Hockey League (NHL), aber auch die National Basketball Association (NBA). Während die ersten beiden Schlüsselattribute sinnvoll und richtig erscheinen, lässt die Wahl des Wortes NBA für die Klasse Hockey bereits erste Zweifel an der Korrektheit unseres Modells aufkommen.
Warum hat also das Modell das Wort NBA als eines der charakteristischen Attribute für die Kategorie Hockey gelernt? Eine mögliche Erklärung ist, dass NBA in unseren Trainingsdaten häufig in dieser, aber nur vereinzelt oder gar nicht in den anderen Kategorien vorkommt. Dennoch stellt sich die Frage, ob es sich hierbei um ein passendes Attribut für den Use Case des Modells handelt. Falls dies nicht der Fall ist, sollte durch gezieltes Feature Engineering und Datenpreprocessing beim Training des Modells gegengesteuert werden.
Noch offensichtlicher wird der Optimierungsbedarf an unserem Modell, wenn wir folgenden Text betrachten:
Dieser wird fälschlicherweise der Kategorie Baseball zugeordnet. Die grün hinterlegten Worte tragen positiv zur Klassifizierung in die Kategorie Baseball bei, wohingegen die rot hinterlegten Worte gegen diese Kategorie sprechen. Hier wird ersichtlich, dass in diesem Fall die Wahl der Schlüsselworte und deren Gewichtung größtenteils nicht geeignet sind, um den Text der richtigen Kategorie zuzuordnen, sondern eher zufällig in Teilen des Trainingsdatensatzes - und vermutlich nur dort - funktionieren.
Anhand dieser einfachen Beispiele wird bereits deutlich, dass unser Modell trotz der guten Performance auf dem Testdatensatz nicht zwangsläufig geeignete Attribute verwendet, um eine Vorhersage zu machen. Diese Tatsache kann nach einem Deployment in einer Produktivumgebung schnell zu fragwürdigen Ergebnissen führen.
Mithilfe von der explainable AI Methode LIME können diese Fehler erkannt und korrigiert werden. Für eine bessere Benutzerfreundlichkeit stellt die von uns verwendete LIME Bibliothek auch eine Methode bereit, mit der sich einfach eine repräsentative Stichprobe mit konfigurierbarer Anzahl an Probenelementen und zugehörigen Attributen ausgeben lässt. Somit lässt sich schnell ein globalerer Einblick in das untersuchte Modell erzeugen.
Neben LIME gibt es noch weitere explainable AI Tools wie IBM AIX 360, What-if Tool und Shap, die dabei behilflich sein können, die Interpretierbarkeit und die Erklärbarkeit verwendeter Datensätze und Machine Learning-Modelle zu steigern. Die so erlangten Informationen ermöglichen die Entwicklung robusterer Modelle und eine gezielte Adaption an neue Daten. Abgesehen davon können die gewonnen Erkenntnisse dabei hilfreich sein, die Akzeptanz und das Vertrauen in Machine Learning-Anwendungen zu erhöhen.