von Dr. Dieter Hierl, Dr. Roland Onderka, Dr. Pouya Kazemi und Dr. Simon Dentinger
Liebe Leserinnen und Leser, wir freuen uns, Ihnen unseren neuen Newsletter zu präsentieren, der an unseren letzten Beitrag über erklärbare künstliche Intelligenz (Explainable Artificial Intelligence, XAI) anknüpft.
Seit dem letzten Artikel, in dem wir einen allgemeinen Überblick über die Bedeutung und Notwendigkeit von XAI gegeben haben, ist viel passiert. Von besonderem Interesse sind für uns die Entwicklungen im Bereich der Large Language Models (LLMs) und der generativen KI. Obwohl LLMs und generative KI immer bessere Benchmarks erreichen und in Anführungszeichen intelligenter werden, ist ihr Einfluss auf die Industrie, außer in einigen spezifischen Bereichen, nicht so schnell oder grundlegend gewesen, wie es gehyped wurde [Link]. Etwa 70% der Unternehmen hatten im Februar 2024 keine oder nur eine begrenzte Nutzung von KI in ihren Unternehmen. Herausforderungen sind Probleme wie Halluzinationen, Kosten, Bias und ethische Bedenken sowie die Schlüsselfaktoren Erklärbarkeit und Regulierung. Aufgrund der zunehmenden Bedeutung der Erklärbarkeit, insbesondere aus regulatorischer Sicht, werden wir in diesem Artikel zeigen, wie man KI erklärbar macht. Konkret werden wir ein Finanzmodell zur Vorhersage steigender Assetpreise mithilfe von AI als Spielwiese verwenden. Insbesondere werden wir die gängigsten XAI-Methoden, SHAP (Shapley Additive exPlanations) und LIME (Local Interpretable Model-agnostic Explanations), darauf anwenden und unsere Erfahrungen sowie die Herausforderungen, denen wir begegnet sind, teilen.
Lassen Sie uns gemeinsam erkunden, wie diese Methoden uns helfen können, die wichtigsten Inputparameter zu identifizieren und somit die Transparenz und Vertrauenswürdigkeit unserer Vorhersagemodelle zu erhöhen.
Überblick über das Finanzmodell
Unser Modell zur Vorhersage von steigenden Assetpreisen basiert auf einem umfassenden Ansatz, der Datenvorverarbeitung, Feature Engineering, Modellentwicklung und Performance- Evaluierung kombiniert. Hier ist eine Zusammenfassung der wesentlichen Schritte und Komponenten des Modells:
Datenbasis und Aufgabenstellung
Wir verwenden Daten von Infineon Technologies AG, einem führenden deutschen Halbleiterhersteller. Die Daten umfassen tägliche OHLC (Open, High, Low, Close) Werte von 2000 bis 2022. Ziel ist es, mit einem LSTM-Modell (Long Short-Term Memory) positive Kursbewegungen am nächsten Tag vorherzusagen und eine Buy-and-Hold-Strategie zu übertreffen.
Datenbeschaffung
Neben den Daten von Infineon beziehen wir auch tägliche OHLC-Daten anderer Halbleiterunternehmen und makroökonomische Indikatoren für Deutschland. Diese zusätzlichen Daten sollen helfen, makroökonomische Trends zu erkennen.
Feature Engineering
Zeitreihen-Features: Hinzufügen von zeitlichen Merkmalen (Monat, Quartal, Wochentag usw.) und deren Fourier- Repräsentationen.
Technische Indikatoren: Integration von Volatilitäts-, Momentum- und Trendindikatoren (z.B. ATR, BBANDS, RSI, DPO).
K-Means Clustering: Gruppierung ähnlicher Zeitreihen und Reduktion der Features auf ein Zehntel der ursprünglichen Anzahl.
Varianzinflationsfaktor (VIF): Berechnung der Multikollinearität und Beibehaltung von Features mit einem VIF unter 1000.
Feature Transformation: Nutzung dieser Methoden zur Identifikation der wichtigsten Features. Das Boruta Python Package verwendet einen Random Forest, SHAP Python Package einen Gradient Boosting Classifier.
Insgesamt wurden 190 wesentliche Features identifiziert.
Modellaufbau und Training
Normalisierung und Datenaufbereitung: Verwendung des gen_scaler zur Normalisierung und des TimeseriesGenerators zur Datengenerierung.
Baseline-Modell: Initiales Modelltraining mit anschließender Hyperparameteroptimierung mittels Bayes'scher Optimierung.
Finales Modell (siehe Abbildung 1): Das finale Modell weist eine Testgenauigkeit von 60.27% auf und ist für eine Long/ Short-Strategie geeignet.
Performance-Evaluation und Backtesting
Performance-Metriken (siehe Abbildung 2): Bewertung des Modells mittels ROC-Kurve, Konfusionsmatrix und weiteren Metriken wie Precision und Recall.
Handelsstrategie: Anwendung des Modells auf Handelsstrategien, die im Vergleich zu einer Buy-and-Hold-Strategie signifikante Gewinne erzielte.
Das Modell zeigt vielversprechende Ergebnisse bei der Vorhersage von Kursbewegungen und übertrifft eine einfache Buy-and-Hold-Strategie deutlich. Weitere Optimierungen und die Erweiterung auf andere Finanzinstrumente könnten das Potenzial dieses Ansatzes weiter steigern. Diese umfassende Vorgehensweise stellt sicher, dass unser Modell nicht nur genaue Vorhersagen trifft, sondern auch in der Praxis umsetzbare Handelsstrategien ermöglicht.
Einführung in SHAP und LIME
SHAP (Shapley Additive exPlanations)
SHAP ist eine auf der Spieltheorie basierende Methode, die dazu verwendet wird, die Beiträge einzelner Merkmale zu den Vorhersagen eines Modells zu erklären. Die Methode basiert auf den Shapley-Werten, einem Konzept aus der kooperativen Spieltheorie, welches die faire Verteilung von Gewinnen oder Kosten unter den Beteiligten sicherstellt. Bei der Anwendung auf Machine Learning-Modelle berechnet SHAP den durchschnittlichen Beitrag jedes Merkmals zur Vorhersage, indem es alle möglichen Kombinationen von Merkmalswerten berücksichtigt. Diese Methode ist modellagnostisch, das heißt, sie kann unabhängig von der Art des zugrunde liegenden Modells angewandt werden.
LIME ist eine Methode, die lokale Ersatzmodelle verwendet, um die Vorhersagen eines komplexen Modells zu erklären. Dabei wird ein einfaches, interpretierbares Modell (z. B. lineare Regression) in der Nähe der zu erklärenden Vorhersage trainiert. LIME approximiert das Verhalten des komplexen Modells lokal um die Vorhersage, indem es kleine Veränderungen an den Eingabedaten vornimmt und die Auswirkungen auf die Vorhersage analysiert.
Vergleich von SHAP und LIME
Anwendungsbereich:
SHAP: Bietet sowohl globale als auch lokale Erklärungen und ist daher vielseitig einsetzbar.
LIME: Konzentriert sich auf lokale Erklärungen und eignet sich gut für die Analyse individueller Vorhersagen.
Rechenaufwand:
SHAP: Sehr rechenintensiv, insbesondere für große Datensätze und komplexe Modelle.
LIME: Weniger rechenintensiv als SHAP, aber die Genauigkeit kann darunter leiden.
Interpretierbarkeit:
SHAP: Liefert intuitive und konsistente Erklärungen basierend auf einem mathematisch fundierten Ansatz.
LIME: Bietet einfache und verständliche lokale Erklärungen, die leicht zu implementieren sind.
Robustheit:
SHAP: Robust und konsistent aufgrund der Verwendung von Shapley-Werten.
LIME: Kann instabiler sein, da die Ergebnisse stark von der Auswahl der lokalen Datenpunkte abhängen. Beide Methoden haben ihre Stärken und Schwächen und können je nach Anwendungsfall und Zielsetzung ergänzend eingesetzt werden. Während SHAP eine umfassendere und robustere Methode darstellt, bietet LIME eine schnellere und einfachere Möglichkeit, lokale Erklärungen für spezifische Vorhersagen zu liefern.
Vorarbeiten für SHAP und LIME
In unserem Finanzmodell verwenden wir Zeitreihen-Generatoren, um in einer kompakten Art und Weise Trainings-, Validierungs- und Testdaten zusammen mit ihren abhängigen Variablen zur Verfügung zu haben. Diese Datenstruktur muss für den Einsatz in SHAP oder LIME wieder aufgebrochen werden.
Des Weiteren sind unsere unabhängigen Inputvariablen prinzipiell ebenfalls Zeitreihen, die eine gewisse Anzahl von Tagen zurückschauen. SHAP und LIME können aber nicht mit Zeitreihen arbeiten, so dass man die Zeitreihen- und Feature-Dimensionen zunächst in eine gemeinsame Dimension zusammenführen muss, ohne das jeweilige Tracking auf die Feature zu verlieren.
Anwendung von SHAP im Finanzmodell
Die aufbereiteten Inputvariablen werden dem SamplingExplainer des shap Python Pakets übergeben. Der Explainer hat eine Methode zur Berechnung der shap Werte1. Dies ist eine sehr Speicher aufwendige und Rechenzeit intensive Aufgabe. Daher haben wir uns auf 10 unserer 112 Batches beschränkt. Als Ergebnis bekommt man im summary_plot von shap folgende Auswertung (in Abbildung 5).
1Die Werte werden nach folgender Formel bestimmt:
Der Summary Plot für SHAP bietet eine visuelle Darstellung der wichtigsten Merkmale eines Modells und deren Einfluss auf die Vorhersagen. Hier sind die wesentlichen Schritte zur Interpretation des Summary Plots aus Abbildung 5:
Merkmalsbedeutung (Feature Importance)
Vertikale Achse: Listet die Merkmale (Features) nach ihrer Bedeutung auf. Die Merkmale in der Liste haben den größten Einfluss auf das Modell.
Horizontale Achse: Zeigt die SHAP-Werte an. Diese Werte repräsentieren den Einfluss des jeweiligen Merkmals auf die Modellvorhersage. Ein positiver SHAP-Wert (SHAP value) bedeutet, dass das Merkmal die Vorhersage erhöht, während ein negativer SHAP-Wert die Vorhersage verringert.
Einflussrichtung (Impact Direction)
Farben: Die Punkte sind farbcodiert und repräsentieren die Merkmalswerte. Typischerweise steht Rot für hohe Werte und Blau für niedrige Werte. Diese Farbcodierung hilft zu verstehen, ob hohe oder niedrige Werte eines Merkmals die Vorhersage erhöhen oder verringern.
Dichte der Punkte (Density of Points)
Punkte-Wolken: Die Dichte der Punkte entlang der horizontalen Achse gibt an, wie oft verschiedene SHAPWerte auftreten. Eine breite vertikale Punktewolke zeigt eine hohe Variabilität im Einfluss des Merkmals an, während eine schmale Punktewolke auf einen gleichmäßigeren Einfluss hindeutet.
Interpretation der Merkmalswerte
Hohe Werte (rote Punkte): Wenn die roten Punkte auf der Seite mit den positiven SHAP-Werten des Plots konzentriert sind, bedeutet dies, dass hohe Werte dieses Merkmals die Vorhersage erhöhen. Sind sie auf der linken Seite, verringern hohe Werte die Vorhersage.
Niedrige Werte (blaue Punkte): Entsprechend bedeuten blaue Punkte auf der Seite mit positiven SHAP-Werten, dass niedrige Werte die Vorhersage erhöhen, und auf der linken Seite, dass sie die Vorhersage verringern.
Anwendung von LIME im Finanzmodell
Die aufbereiteten Inputvariablen werden dem LimeTabularExplainer des lime Python Pakets übergeben. Da unsere Daten bereits für das Finanzmodell normalisiert wurden, entfällt dieser Aufarbeitungsschritt. LIME analysiert immer nur einen Batch. Dabei wird mit der Methode explain_instance eine instance erzeugt und mit der Methode show_in_notebook lässt sich die Ausgabe in Abb. 6 erzeugen.
Die show_in_notebook-Ausgabe von LIME bietet eine visuelle und detaillierte Darstellung, wie einzelne Merkmale eine spezifische Vorhersage eines Modells beeinflussen. Hier ist eine Anleitung zur Interpretation der show_in_notebook-Ausgabe:
Globale vs. Lokale Erklärungen
Globale Erklärung: Betrachtet das gesamte Modell und zeigt, welche Merkmale generell am wichtigsten sind.
Lokale Erklärung: Konzentriert sich auf eine einzelne Vorhersage und zeigt, wie die Merkmale diese spezifische Vorhersage beeinflussen.
Interpretation der einzelnen Komponenten der LIME-Erklärung
Vorhersageinformation (Links)
Modellvorhersage: Zeigt die genaue Vorhersage des Modells für das betrachtete Beispiel an (in Abbildung 6 sind das die Instances 4 und 9).
Wahrscheinlichkeit: Wenn das Modell probabilistisch wäre, zeigt es die Wahrscheinlichkeiten für die verschiedenen Klassen an.
Wichtige Merkmale und ihre Einflüsse (Mitte)
Merkmalsliste: Eine Liste der wichtigsten Merkmale, die die Vorhersage beeinflusst haben.
Balkendiagramm: Jedes Merkmal ist mit einem Balken dargestellt, der die Richtung und Stärke seines Einflusses auf die Vorhersage zeigt.
Positive Balken: Merkmale, die die Wahrscheinlichkeit der vorhergesagten Klasse erhöhen.
Negative Balken: Merkmale, die die Wahrscheinlichkeit der vorhergesagten Klasse verringern.
Balkenlänge: Die Länge des Balkens entspricht der Stärke des Einflusses des Merkmals auf die Vorhersage.
Merkmalswerte (Rechts)
Merkmalswerte: Zeigt die tatsächlichen Werte der Merkmale für das betrachtete Beispiel. Grenzwerte und Intervalle: Wenn ein Merkmal kategorisch oder binär ist, zeigt LIME die spezifische Kategorie oder den Zustand. Wenn ein Merkmal kontinuierlich ist, zeigt LIME standardmäßig einen Wertebereich oder einen Mittelwert an.
Erfahrungen und Erkenntnisse
Verbesserte Modelltransparenz:
Sowohl SHAP als auch LIME haben dazu beigetragen, die Entscheidungsprozesse unserer AI-Modelle transparenter und nachvollziehbarer zu machen. Dies ist besonders wichtig im Finanzsektor, wo Vertrauen und Nachvollziehbarkeit der Modellvorhersagen von großer Bedeutung sind.
Identifikation der wichtigsten Inputparameter:
Mit Hilfe von SHAP konnten wir die wichtigsten Einflussfak toren für unsere Modellvorhersagen auf globaler Ebene identifizieren. Dies hat uns ermöglicht, ein besseres Verständnis für die Haupttreiber der Assetpreise zu entwickeln.
LIME hat uns wiederum detaillierte lokale Erklärungen für einzelne Vorhersagen geliefert, was besonders nützlich war, um spezifische Anomalien oder besondere Fälle zu analysieren.
Herausforderungen und Lösungen:
Eine der größten Herausforderungen bei der Anwendung von SHAP war der hohe Rechenaufwand, insbesondere bei großen Datensätzen und komplexen Modellen. Durch Optimierungen und den Einsatz spezialisierter Software konnten wir jedoch diese Hürde überwinden.
Bei LIME stellten wir fest, dass die Stabilität der Erklärungen variieren kann. Durch sorgfältige Auswahl der lokalen Datenpunkte und Validierung der Ergebnisse konnten wir jedoch zuverlässigere Erklärungen erzielen.
Schlussfolgerung
In diesem Newsletter haben wir uns intensiv mit der Anwendung von erklärbarer Künstlicher Intelligenz (XAI) im Bereich der Finanzmodellierung zur Vorhersage von steigenden Assetpreisen beschäftigt. Durch den Einsatz von SHAP und LIME konnten wir wertvolle Einblicke gewinnen und sowohl die Stärken als auch die Herausforderungen dieser Methoden in der Praxis identifizieren.
Bei Interesse an einem Austausch zu diesem oder ähnlichen Themen rund um die Themen Regulatory Reporting sowie Risiko können Sie sich gerne jederzeit bei den Autoren dieses Artikels melden.
Literaturverzeichnis
Kazemi, Dentinger, Onderka, Hierl (2023), Explainable Artificial Intelligence: Licht in die Black Box bringen, NC Relevant Nr. 31, September 2023
Kursa, M. B., & Rudnicki, W. R. (2010), Feature Selection with the Boruta Package, Journal of Statistical Software, 36(11), 1–13, https://doi.org/10.18637/jss.v036.i11
Strumbelj, Erik, and Igor Kononenko (2014), Shapley sampling values, "Explaining prediction models and individual predictions with feature contributions.", Knowledge and information systems 41.3: 647-665
Lipovetsky, Stan, and Michael Conklin (2001), Shapley regression values, "Analysis of regression in game theory approach.", Applied Stochastic Models in Business and Industry 17.4: 319-330
Ribeiro, Marco Tulio, Sameer Singh, and Carlos Guestrin (2016), “"Why should I trust you?": Explaining the Predictions of Any Classifier.”, In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Kdd San Francisco, ca, 1135–44, New York, NY: Association for Computing Machinery