Vernetzen Sie sich mit uns

Künstliche Intelligenz

LightAutoML: AutoML-Lösung für ein großes Finanzdienstleistungs-Ökosystem

mm
Aktualisiert on

Obwohl AutoML erst vor einigen Jahren populär wurde, AutoML stammt aus den frühen 90er Jahren als Wissenschaftler die ersten Arbeiten zur Hyperparameteroptimierung veröffentlichten. Erst 2014, als ICML den ersten AutoML-Workshop organisierte, erlangte AutoML die Aufmerksamkeit der ML-Entwickler. Einer der Hauptschwerpunkte von AutoML im Laufe der Jahre ist das Problem der Hyperparametersuche, bei dem das Modell eine Reihe von Optimierungsmethoden implementiert, um die Hyperparameter mit der besten Leistung in einem großen Hyperparameterraum für ein bestimmtes maschinelles Lernmodell zu bestimmen. Eine andere Methode, die häufig von AutoML-Modellen implementiert wird, besteht darin, die Wahrscheinlichkeit abzuschätzen, dass ein bestimmter Hyperparameter der optimale Hyperparameter für ein bestimmtes maschinelles Lernmodell ist. Das Modell erreicht dies durch die Implementierung Bayesscher Methoden, die traditionell historische Daten aus zuvor geschätzten Modellen und andere Datensätze verwenden. Neben der Hyperparameteroptimierung versuchen andere Methoden, die besten Modelle aus einem Raum von Modellierungsalternativen auszuwählen. 

In diesem Artikel behandeln wir LightAutoML, ein AutoML-System, das hauptsächlich für ein europäisches Unternehmen im Finanzsektor und dessen Ökosystem entwickelt wurde. Das LightAutoML-Framework wird in verschiedenen Anwendungen eingesetzt und die Ergebnisse zeigten eine überlegene Leistung, die mit dem Niveau von Datenwissenschaftlern vergleichbar ist, selbst beim Erstellen hochwertiger Modelle für maschinelles Lernen. Das LightAutoML-Framework versucht, die folgenden Beiträge zu leisten. Erstens wurde das LightAutoML-Framework hauptsächlich für das Ökosystem eines großen europäischen Finanz- und Bankinstituts entwickelt. Dank seines Frameworks und seiner Architektur ist das LightAutoML-Framework in der Lage, hochmoderne AutoML-Frameworks in mehreren offenen Benchmarks sowie Ökosystemanwendungen zu übertreffen. Die Leistung des LightAutoML-Frameworks wird auch mit Modellen verglichen, die manuell von Datenwissenschaftlern optimiert werden, und die Ergebnisse wiesen auf eine stärkere Leistung des LightAutoML-Frameworks hin. 

Dieser Artikel soll das LightAutoML-Framework ausführlich behandeln. Wir untersuchen den Mechanismus, die Methodik und die Architektur des Frameworks und vergleichen es mit den neuesten Frameworks. Also, legen wir los. 

LightAutoML: Ein AutoML-Framework für Finanzdienstleistungen

Obwohl Forscher erst Mitte und Anfang der 90er Jahre mit der Arbeit an AutoML begannen, hat AutoML in den letzten Jahren einen großen Teil der Aufmerksamkeit auf sich gezogen. Einige der bekanntesten Industrielösungen, die automatisch erstellte Machine-Learning-Modelle implementieren, sind Amazons AutoGluon, DarwinAI, H20.ai, IBM Watson AI, Microsoft AzureML und viele mehr. Die meisten dieser Frameworks implementieren eine allgemeine AutoML-Lösung, die ML-basierte Modelle automatisch für verschiedene Anwendungsklassen in den Bereichen Finanzdienstleistungen, Gesundheitswesen, Bildung und mehr entwickelt. Die wichtigste Annahme hinter diesem horizontalen generischen Ansatz ist, dass der Prozess der Entwicklung automatischer Modelle für alle Anwendungen identisch bleibt. Das LightAutoML-Framework implementiert jedoch einen vertikalen Ansatz, um eine AutoML-Lösung zu entwickeln, die nicht generisch ist, sondern auf die Anforderungen einzelner Anwendungen zugeschnitten ist, in diesem Fall eines großen Finanzinstituts. Das LightAutoML-Framework ist eine vertikale AutoML-Lösung, die sich auf die Anforderungen des komplexen Ökosystems und seine Eigenschaften konzentriert. Erstens bietet das LightAutoML-Framework eine schnelle und nahezu optimale Hyperparametersuche. Obwohl das Modell diese Hyperparameter nicht direkt optimiert, liefert es zufriedenstellende Ergebnisse. Darüber hinaus hält das Modell die Balance zwischen Geschwindigkeit und Hyperparameteroptimierung dynamisch, um sicherzustellen, dass das Modell bei kleinen Problemen optimal und bei größeren schnell genug ist. Zweitens beschränkt das LightAutoML-Framework die Palette der Modelle für maschinelles Lernen absichtlich auf nur zwei Typen: lineare Modelle und GBMs oder gradientenverstärkte Entscheidungsbäume, anstatt große Ensembles verschiedener Algorithmen zu implementieren. Der Hauptgrund für die Beschränkung der Palette der Modelle für maschinelles Lernen besteht darin, die Ausführungszeit des LightAutoML-Frameworks zu beschleunigen, ohne die Leistung für die gegebene Art von Problem und Daten negativ zu beeinflussen. Drittens stellt das LightAutoML-Framework eine einzigartige Methode dar, um Vorverarbeitungsschemata für verschiedene in den Modellen verwendete Features auf der Grundlage bestimmter Auswahlregeln und Metastatistiken auszuwählen. Das LightAutoML-Framework wird anhand einer breiten Palette offener Datenquellen in einer breiten Palette von Anwendungen evaluiert. 

LightAutoML: Methodik und Architektur

Das LightAutoML-Framework besteht aus Modulen, die als Presets bezeichnet werden und für die End-to-End-Modellentwicklung für typische Aufgaben des maschinellen Lernens vorgesehen sind. Derzeit unterstützt das LightAutoML-Framework Preset-Module. Erstens konzentriert sich das TabularAutoML-Preset auf die Lösung klassischer Probleme des maschinellen Lernens, die auf tabellarischen Datensätzen definiert sind. Zweitens implementiert das White-Box-Preset einfache interpretierbare Algorithmen wie logistische Regression anstelle von WoE oder Weight of Evidence-Kodierung und diskretisierten Funktionen, um binäre Klassifizierungsaufgaben für tabellarische Daten zu lösen. Die Implementierung einfacher interpretierbarer Algorithmen ist aufgrund der durch verschiedene Faktoren bedingten Interpretierbarkeitsbeschränkungen eine gängige Praxis, um die Wahrscheinlichkeit einer Anwendung zu modellieren. Drittens ist das NLP-Preset in der Lage, tabellarische Daten mit NLP zu kombinieren oder Verarbeitung natürlicher Sprache Tools, darunter vorab trainierte Deep-Learning-Modelle und spezielle Feature-Extraktoren. Schließlich arbeitet das CV-Preset mithilfe einiger grundlegender Tools mit Bilddaten. Es ist wichtig zu beachten, dass das LightAutoML-Modell zwar alle vier Presets unterstützt, das Framework im Produktionssystem jedoch nur TabularAutoML verwendet. 

Die typische Pipeline des LightAutoML-Frameworks ist im folgenden Bild enthalten. 

Jede Pipeline enthält drei Komponenten. Zunächst Reader, ein Objekt, das Aufgabentyp und Rohdaten als Eingabe empfängt, wichtige Metadatenberechnungen durchführt, die ursprünglichen Daten bereinigt und die Datenmanipulationen ermittelt, die vor dem Anpassen verschiedener Modelle durchgeführt werden müssen. Als nächstes enthalten die inneren Datensätze von LightAutoML CV-Iteratoren und Metadaten, die Validierungsschemata für die Datensätze implementieren. Die dritte Komponente sind die mehreren Pipelines für maschinelles Lernen, die gestapelt und/oder gemischt werden, um eine einzige Vorhersage zu erhalten. Eine Pipeline für maschinelles Lernen innerhalb der Architektur des LightAutoML-Frameworks ist eines von mehreren Modellen für maschinelles Lernen, die ein einziges Datenvalidierungs- und Vorverarbeitungsschema gemeinsam nutzen. Der Vorverarbeitungsschritt kann bis zu zwei Schritte zur Merkmalsauswahl oder einen Schritt zur Merkmalsentwicklung umfassen oder leer sein, wenn keine Vorverarbeitung erforderlich ist. Die ML-Pipelines können unabhängig voneinander auf denselben Datensätzen berechnet und dann mithilfe von Mittelwertbildung (oder gewichteter Mittelwertbildung) zusammengeführt werden. Alternativ kann ein Stapelensembleschema verwendet werden, um mehrstufige Ensemblearchitekturen zu erstellen. 

Tabellarische Vorgabe für LightAutoML

Innerhalb des LightAutoML-Frameworks ist TabularAutoML die Standard-Pipeline und wird im Modell implementiert, um drei Arten von Aufgaben für tabellarische Daten zu lösen: binäre Klassifikation, Regression und Multi-Class-Klassifizierung für eine breite Palette von Leistungsmetriken und Verlustfunktionen. Eine Tabelle mit den folgenden vier Spalten: kategorische Merkmale, numerische Merkmale, Zeitstempel und eine einzelne Zielspalte mit Klassenbezeichnungen oder kontinuierlichem Wert wird der TabularAutoML-Komponente als Eingabe zugeführt. Eines der Hauptziele beim Entwurf des LightAutoML-Frameworks war die Entwicklung eines Tools für schnelle Hypothesentests. Dies ist ein Hauptgrund dafür, warum das Framework die Verwendung von Brute-Force-Methoden zur Pipeline-Optimierung vermeidet und sich nur auf Effizienztechniken und -modelle konzentriert, die für eine breite Palette von Datensätzen funktionieren. 

Automatische Typisierung und Datenvorverarbeitung

Um verschiedene Featuretypen auf unterschiedliche Weise zu verarbeiten, muss das Modell jeden Featuretyp kennen. In Situationen, in denen es sich um eine einzelne Aufgabe mit einem kleinen Datensatz handelt, kann der Benutzer jeden Featuretyp manuell angeben. Die manuelle Angabe jedes Featuretyps ist jedoch keine praktikable Option mehr, wenn Hunderte von Aufgaben mit Datensätzen mit Tausenden von Features enthalten sind. Für die TabularAutoML-Vorgabe muss das LightAutoML-Framework Features in drei Klassen zuordnen: numerisch, Kategorie und Datum/Uhrzeit. Eine einfache und naheliegende Lösung besteht darin, Spaltenarray-Datentypen als tatsächliche Featuretypen zu verwenden, d. h. Float-/Int-Spalten numerischen Features, Zeitstempeln oder Zeichenfolgen zuzuordnen, die als Zeitstempel analysiert werden könnten – zu Datum/Uhrzeit und andere zu Kategorien. Diese Zuordnung ist jedoch nicht die beste, da numerische Datentypen häufig in Kategoriespalten vorkommen. 

Validierungsschemata

Validierungsschemata sind eine wichtige Komponente von AutoML-Frameworks, da sich Daten in der Branche im Laufe der Zeit ändern können und dieses Element der Änderung IID- oder unabhängig identisch verteilte Annahmen bei der Entwicklung des Modells irrelevant macht. AutoML-Modelle verwenden Validierungsschemata, um ihre Leistung abzuschätzen, nach Hyperparametern zu suchen und Out-of-Fold-Vorhersagen zu generieren. Die TabularAutoML-Pipeline implementiert drei Validierungsschemata:

  • KFold-Kreuzvalidierung: KFold Cross Validation ist das Standardvalidierungsschema für die TabularAutoML-Pipeline, einschließlich GroupKFold für Verhaltensmodelle und stratifiziertes KFold für Klassifizierungsaufgaben. 
  • Holdout-Validierung: Das Holdout-Validierungsschema wird implementiert, wenn der Holdout-Satz angegeben ist. 
  • Benutzerdefinierte Validierungsschemata: Benutzer können benutzerdefinierte Validierungsschemata je nach ihren individuellen Anforderungen erstellen. Zu den benutzerdefinierten Validierungsschemata gehören Kreuzvalidierung und Zeitreihenaufteilungsschemata. 

Merkmalsauswahl

Obwohl die Merkmalsauswahl ein entscheidender Aspekt bei der Entwicklung von Modellen gemäß Industriestandards ist, da sie die Reduzierung der Inferenz- und Modellimplementierungskosten erleichtert, konzentrieren sich die meisten AutoML-Lösungen nicht besonders auf dieses Problem. Im Gegenteil, die TabularAutoML-Pipeline implementiert drei Merkmalsauswahlstrategien: Keine Auswahl, Wichtigkeits-Cut-off-Auswahl und wichtigkeitsbasierte Vorwärtsauswahl. Von den drei ist die Merkmalsauswahlstrategie mit Wichtigkeits-Cut-off-Auswahl die Standardstrategie. Darüber hinaus gibt es zwei primäre Möglichkeiten, die Merkmalswichtigkeit abzuschätzen: Split-basierte Baumwichtigkeit und Permutationswichtigkeit des GBM-Modells oder Gradient Boosted Entscheidungsbäume. Das Hauptziel der Auswahl von Wichtigkeits-Cutoffs besteht darin, Merkmale abzulehnen, die für das Modell nicht hilfreich sind. Dadurch kann das Modell die Anzahl der Merkmale reduzieren, ohne die Leistung negativ zu beeinflussen. Dieser Ansatz könnte die Modellinferenz und das Training beschleunigen. 

Das obige Bild vergleicht verschiedene Auswahlstrategien für binäre Bankdatensätze. 

Hyperparameter-Tuning

Die TabularAutoML-Pipeline implementiert verschiedene Ansätze zum Optimieren von Hyperparametern auf der Grundlage der Optimierung. 

  • Frühzeitiges Stoppen der Hyperparameteroptimierung Wählt die Anzahl der Iterationen für alle Modelle während der Trainingsphase aus. 
  • Expertensystem-Hyperparameter-Tuning ist eine einfache Möglichkeit, Hyperparameter für Modelle auf zufriedenstellende Weise festzulegen. Es verhindert, dass das endgültige Modell im Vergleich zu hart abgestimmten Modellen einen starken Punkteverlust erleidet.
  • Baumstrukturierte Parzen-Schätzung oder TPE für GBM- oder Gradient Boosted Decision Tree-Modelle. TPE ist eine gemischte Tuning-Strategie, die in der LightAutoML-Pipeline die Standardauswahl ist. Für jedes GMB-Framework trainiert das LightAutoML-Framework zwei Modelle: Das erste erhält Experten-Hyperparameter, das zweite wird feinabgestimmt, um in das Zeitbudget zu passen. 
  • Grid-Search-Hyperparameter-Optimierung wird in der TabularAutoML-Pipeline implementiert, um die Regularisierungsparameter eines linearen Modells neben frühzeitigem Stoppen und Warmstart zu optimieren. 

Das Modell optimiert alle Parameter, indem es die Metrikfunktion maximiert, die entweder vom Benutzer definiert wurde oder für die gelöste Aufgabe standardmäßig verwendet wird. 

LightAutoML: Experiment und Leistung

Um die Leistung zu bewerten, wird das TabularAutoML-Preset im LightAutoML-Framework mit bereits vorhandenen Open-Source-Lösungen für verschiedene Aufgaben verglichen und die überlegene Leistung des LightAutoML-Frameworks untermauert. Zunächst wird der Vergleich anhand des OpenML-Benchmarks durchgeführt, der anhand von 35 binären und mehrklassigen Klassifizierungsaufgaben-Datensätzen bewertet wird. Die folgende Tabelle fasst den Vergleich des LightAutoML-Frameworks mit vorhandenen AutoML-Systemen zusammen. 

Wie man sehen kann, übertrifft das LightAutoML-Framework alle anderen AutoML-Systeme bei 20 Datensätzen innerhalb des Benchmarks. Die folgende Tabelle enthält den detaillierten Vergleich im Datensatzkontext und zeigt, dass LightAutoML bei verschiedenen Aufgabenklassen unterschiedliche Leistungen erbringt. Bei binären Klassifizierungsaufgaben schneidet LightAutoML nicht gut ab, während das LightAutoML-Framework bei Aufgaben mit einer großen Datenmenge eine bessere Leistung erbringt.

Die folgende Tabelle vergleicht die Leistung des LightAutoML-Frameworks mit AutoML-Systemen anhand von 15 Bankdatensätzen, die eine Reihe verschiedener binärer Klassifizierungsaufgaben enthalten. Wie man sehen kann, übertrifft LightAutoML alle AutoML-Lösungen bei 12 von 15 Datensätzen, ein Gewinnprozentsatz von 80 %. 

Abschließende Überlegungen

In diesem Artikel haben wir über LightAutoML gesprochen, ein AutoML-System, das hauptsächlich für ein europäisches Unternehmen im Finanzsektor und dessen Ökosystem entwickelt wurde. Das LightAutoML-Framework wird in verschiedenen Anwendungen eingesetzt und die Ergebnisse zeigten eine überlegene Leistung, die mit dem Niveau von Datenwissenschaftlern vergleichbar ist, selbst beim Erstellen hochwertiger Modelle für maschinelles Lernen. Das LightAutoML-Framework versucht, die folgenden Beiträge zu leisten. Erstens wurde das LightAutoML-Framework hauptsächlich für das Ökosystem eines großen europäischen Finanz- und Bankinstituts entwickelt. Dank seines Frameworks und seiner Architektur ist das LightAutoML-Framework in der Lage, hochmoderne AutoML-Frameworks in mehreren offenen Benchmarks sowie Ökosystemanwendungen zu übertreffen. Die Leistung des LightAutoML-Frameworks wird auch mit Modellen verglichen, die manuell von Datenwissenschaftlern optimiert werden, und die Ergebnisse wiesen auf eine stärkere Leistung des LightAutoML-Frameworks hin. 

„Von Beruf Ingenieur, von Herzen Schriftsteller“. Kunal ist ein technischer Autor mit einer tiefen Liebe und einem tiefen Verständnis für KI und ML, der sich der Vereinfachung komplexer Konzepte in diesen Bereichen durch seine ansprechende und informative Dokumentation widmet.