Wie man Modelle des maschinellen Lernens validiert: Ein umfassender Leitfaden

post published 14.02.2023 post modified 02.05.2023

Wie man Modelle des maschinellen Lernens validiert

Die Modellvalidierung ist eine Kernkomponente bei der Entwicklung von maschinellem Lernen oder künstlicher Intelligenz (ML/KI). Dabei wird die Fähigkeit eines ML- oder statistischen Modells so bewertet, dass man Vorhersagen mit ausreichender Genauigkeit treffen kann, um diese zum Erreichen von Geschäftszielen zu verwenden.
Die Konstruktion des Modells und die Anwendung verschiedener Tools für die Datenerfassung zur Erstellung des Modells, werden dabei eingehend untersucht, um sicherzustellen, dass das Modell effektiv funktioniert.

Bei der Modellvalidierung handelt es sich um eine Reihe von Prozessen und Aktivitäten, mit denen sichergestellt werden soll, dass ein ML- oder KI-Modell so funktioniert, wie es sollte, einschließlich seiner Designziele und seines Nutzens für den User.
Das kann durch Tests, die Prüfung der Konstruktion des Modells, und die Prüfung der zur Erstellung des Modells verwendeten Tools und Daten erfolgen. Die Validierung ist auch Teil der ML-Governance, des vollständigen Prozesses der Zugangskontrolle, der Implementierung von Richtlinien und der Verfolgung der Modellaktivität.

Inhaltsverzeichnis

Warum ist die Modellvalidierung wichtig?

Die Modellvalidierung ist ein wichtiger Schritt des Entwicklungsprozesses von Systemen des maschinellen Lernens oder der künstlichen Intelligenz, da sie dazu beiträgt sicherzustellen, dass das Modell die beabsichtigte Leistung erbringt und ungesehene Daten verarbeiten kann.

Ohne eine ordnungsgemäße Modellvalidierung kann das Vertrauen in die Fähigkeit des Modells, gut auf ungesehene Daten zu verallgemeinern, niemals hoch sein. Des Weiteren hilft die Validierung dabei, das beste Modell, die besten Parameter und die beste Genauigkeitsmetrik für die jeweilige Aufgabe zu bestimmen.

Die Modellvalidierung hilft auch, potenzielle Probleme zu erkennen, bevor sie zu großen Problemen werden. Darüber hinaus ermöglicht sie den Vergleich verschiedener Modelle, so dass wir das beste Modell für eine Aufgabe auswählen können. Überdies hilft sie dabei, die Genauigkeit des Modells zu bestimmen, wenn neue Daten vorliegen.

Die Modellvalidierung wird im Normalfall unvoreingenommen durchgeführt, oft durch eine dritte Partei oder ein unabhängiges Team, um sicherzustellen, dass das Modell den erforderlichen Vorschriften und Normen entspricht. Dies trägt dazu bei, den Usern die Vertrauenswürdigkeit und Zuverlässigkeit des Modells zu versichern.

Verschiedene Arten von Modellen des maschinellen Lernens und ihre Validierungsanforderungen

1. Modelle des überwachten Lernens

Die primäre Verwendung von Kreationen, die durch die Implementierung von Modellen des überwachten Lernens entstehen, ist die Vorhersage bestimmter Ergebnisse durch die Analyse von Daten.

Beispiele für überwachte Lernmodelle sind lineare Regression, logistische Regression, Support Vector Machines, Entscheidungsbäume und Zufallswälder sowie .

Die Validierungsanforderungen für diese Modelle variieren je nach Art des Modells. Bei der linearen und logistischen Regression muss das Modell auf Über- und Unteranpassung geprüft werden.

Bei Support Vector Machines müssen die Daten in einen Trainings- und einen Testsatz aufgeteilt werden, um das Modell anschließend auf dem Trainingssatz zu trainieren und auf dem Testsatz zu testen.

Bei Entscheidungsbäumen und Zufallswäldern müssen die Daten in eine Trainings- und eine Testmenge aufgeteilt werden. Das Modell wird dann auf der Trainingsmenge trainiert und auf der Testmenge getestet.

Bei künstlichen neuronalen Netzen muss ein Validierungssatz in das Modell aufgenommen werden, das zum Vergleich der Leistung verschiedener Modelle verwendet wird.

Tipp:

Beschriftete und unbeschriftete Daten, mit denen Sie Ihr ML-Modell optimal trainieren können, erhalten Sie bei clickworker in der gewünschten Menge und in hoher Qualität zu geringen Kosten.

Mehr über Trainingsdaten für maschinelles Lernen

2. Unüberwachte Lernmodelle

Unüberwachte Lernmodelle werden verwendet, um Muster in Daten zu erkennen, ohne dass diese durch externe Kennzeichnungen gesteuert werden. Einige Beispiele hierfür sind Clustering, Anomalie Erkennung, neuronale Netze und selbstorganisierende Karten.

Die Validierungsanforderungen für diese Modelle variieren je nach Aufgabe. Clustering-Modelle benötigen beispielsweise Maße wie den Silhouetten-Koeffizienten oder den Davies-Bouldin-Index, um ihre Leistung zu bewerten.

Modelle zur Erkennung von Anomalien erfordern häufig Präzisions-Wiedererkennungskurven und ROC-Kurven zur Leistungsmessung. Neuronale Netze können mit Hold-out-Validierung und k-facher Kreuzvalidierung überprüft werden. Für selbstorganisierende Karten schließlich sind Messgrößen wie topografische Fehler oder eine Quantisierung erforderlich.

3. Hybride Modelle

Ein Hybridmodell ist ein maschinelles Lernmodell, das mehrere Ansätze kombiniert, um die beste Vorhersageleistung zu erzielen. Es ist wichtig, Hybridmodelle zu validieren, da die Kombination von Modellen zu einer verbesserten Genauigkeit und Leistung führen kann.

Die Validierung von Hybridmodellen ist ebenfalls wichtig, um sicherzustellen, dass die Modelle zuverlässig und ihre Ergebnisse konsistent sind. Bei der Validierung dieses ML-Modells wird das anhand ungesehener Daten getestet, und die Genauigkeit und Leistung des Modells werden bewertet.

Die Validierung ist von entscheidender Bedeutung, um das Potenzial des maschinellen Lernens zu verstehen und sicherzustellen, dass die hybriden Modelle keine Über- oder Unteranpassung der Daten abbilden.

Darüber hinaus kann die Validierung dazu beitragen, potenzielle Verzerrungen und Datenverluste im Modell zu ermitteln und etwaige Änderungen vorzunehmen, die zur Verbesserung des Modells erforderlich sind.

4. Deep-Learning-Modelle

Deep-Learning-Modelle sind eine leistungsstarke Art der künstlichen Intelligenz, die für eine Vielzahl von Aufgaben verwendet werden kann, die unter anderem Folgendes umfassen:

  • Bilderkennung
  • natürliche Sprachverarbeitung
  • autonome Fahrzeuge

Damit diese Modelle ordnungsgemäß funktionieren, müssen sie validiert werden, vor allem weil dieser Prozess dazu beiträgt, sicherzustellen, dass das Modell Objekte genau identifizieren, Daten klassifizieren und Ergebnisse vorhersagen kann.

Eines der gebräuchlichsten Deep-Learning-Modelle wird als „faltendes neuronales Netzwerk“ (engl. convolutional neural network, CNN) bezeichnet und wird für die Bildklassifizierung verwendet. Bei der Validierung muss das CNN-Modell anhand von Datensätzen mit bekannten Objekten getestet werden, um sicherzustellen, dass es das richtige Objekt korrekt identifizieren kann.

Eine andere Art von Deep-Learning-Modell ist das „rekurrente neuronale Netz“ (engl. recurrent neural network, RNN), das für die Verarbeitung natürlicher Sprache verwendet wird. Zur Validierung muss das RNN anhand eines Textkorpus getestet werden, um sicherzustellen, dass es den Text korrekt analysiert, und genaue Ergebnisse erzielen kann.

Ein weiteres Beispiel stellt ein Reinforcement-Learning-Modell für autonome Fahrzeuge dar, welches in einem Fahrsimulator getestet wird, um sicherzustellen, dass es die Umgebung korrekt verarbeiten und auf sie reagieren kann.

5. Random-Forest-Modelle

Ein Random-Forest-Modell ist ein maschinelles Lernverfahren, das mehrere Entscheidungsbäume kombiniert, um ein genaueres und robusteres Modell zu erstellen. Es wird bei der Modellvalidierung eingesetzt, da es das Risiko einer Überanpassung verringert und eine genauere Vorhersage der Modellleistung ermöglicht.

Es wählt nach dem Zufallsprinzip Stichproben aus dem Trainingsdatensatz aus, um mehrere Entscheidungsbäume zu erstellen, wobei jeder Baum eine Vorhersage erstellt. Die endgültige Vorhersage entsteht durch den Durchschnitt der Vorhersagen aller Bäume, was ein genaueres Ergebnis liefert, als es ein einzelner Baum könnte.

Dies ist besonders bei der Modellvalidierung nützlich, da das Modell dadurch verallgemeinert werden kann und bei der Anwendung auf neuen Daten mit größerer Wahrscheinlichkeit ein genaues Ergebnis liefert.

6. Support Vector Machine

Eine Support Vector Machine (SVM) ist ein beliebtes Modell des maschinellen Lernens, das aufgrund seiner Fähigkeit die Spanne zwischen Datenpunkten verschiedener Klassen zu maximieren zur Validierung verwendet wird.

Es kann die optimale Hyperebene finden die Datenpunkte verschiedener Klassen voneinander trennt, und ermöglicht so eine präzise und zuverlässige Klassifizierung von Datenpunkten.

Darüber hinaus kann SVM auch zur Identifizierung von Ausreißern, zur Erkennung nichtlinearer Beziehungen in Daten sowie für Regressions- und Klassifizierungsprobleme verwendet werden, was sie zu einem vielseitigen und beliebten Modell für die Validierung macht.

7. Neuronale Netzmodelle

Neuronale Netzmodelle sind eine Art von maschinellen Lernmodellen, die auf künstlichen neuronalen Netzen beruhen. Sie können selbstständig lernen und Entscheidungen treffen, ohne sich auf vorgegebene Parameter oder Vorwissen zu stützen. Neuronale Netzmodelle haben bestimmte Eigenschaften und Validierungsanforderungen, damit sie möglichst genau sind und Daten effektiv analysieren können.

Erstens benötigen sie eine große Menge an Trainingsdaten, um genaue Entscheidungen zu treffen und Verbindungen zwischen dem unterschiedlichen Input und Output herzustellen. Diese Daten sollten die in der Produktion anfallenden Daten repräsentieren, da Abweichungen zwischen den Trainings- und Produktionsdaten zu ungenauen Ergebnissen führen können.

Zweitens sollten die Daten normalisiert werden, um sicherzustellen, dass alle Variablen auf der gleichen Skala liegen, da dies die Leistung des Modells beeinflussen kann.

Darüber hinaus sollte das Modell mit verschiedenen Parametern und Datentypen getestet werden, um eine Verarbeitung einer Reihe von Input- und Output-Daten sicherzustellen.

Es sollte ebenfalls mit verschiedenen Metriken getestet werden, um sicherzustellen, dass es mit dem gewünschten Genauigkeitsgrad funktioniert.

Diese Metriken können Präzision, Rückrufquote, Genauigkeit, F1-Werte und mehr umfassen. Durch das Testen des Modells mit verschiedenen Metriken kann festgestellt werden, ob das Modell die erwartete Leistung erbringt und ob Änderungen am Modell vorgenommen werden sollten, um seine Leistung zu verbessern.

8. k-Nächste-Nachbarn-Modell

Das k-Nächste-Nachbarn-Modell (KNN) ist ein überwachter Lernalgorithmus, der für Klassifizierungs- und Regressionsprobleme verwendet wird. Es ist ein beliebtes maschinelles Lernmodell für die Validierung, weil es relativ einfach zu verstehen und zu implementieren ist.

KNN arbeitet, indem es die k-nächsten Nachbarn (d.h. die k-nahen Datenpunkte) einer Eingabeprobe findet und dann die Probe auf Grundlage der Mehrheitsbezeichnung der k-nächsten Nachbarn klassifiziert, so dass dieses Modell Vorhersagen machen kann, ohne dass ein vorheriges Datentraining erforderlich ist.

Außerdem ist die Komplexität des Modells im Vergleich zu anderen Modellen relativ gering, was es zu einer guten Wahl für den Validierungsprozess macht.

Es handelt sich überdies um ein nicht-parametrisches Modell, d. h. es wird nicht von der Anzahl der Merkmale oder der Größe des Datensatzes beeinflusst, so dass sich KNN besonders gut für die Validierung eignet, da es die Leistung eines Modells bei ungesehenen Daten genau vorhersagen kann.

9. Bayessche Modelle

Bayessche Modelle sind probabilistische Modelle, die das Bayessche Theorem verwenden, um die Wahrscheinlichkeit einer Hypothese angesichts einer Reihe von Daten zu quantifizieren. Diese Modelle erfordern die Verwendung von Vorabinformationen und hängen normalerweise von den Vorannahmen des Datenwissenschaftlers ab. Bayessche Modelle werden verwendet, um die Vorhersageverteilungen von ungesehenen Variablen abzuleiten und zu approximieren.

Bayessche Modelle können in drei Haupttypen unterteilt werden: Bayessche Parameterschätzungsmodelle, Bayessche Netzwerkmodelle und Bayessche nichtparametrische Modelle.

Bayessche Parameterschätzungsmodelle werden verwendet, um die Parameter eines probabilistischen Modells zu schätzen, die unbekannt oder unsicher sind. Diese Modelle werden verwendet, um die Posterior-Verteilung eines Satzes von Parametern in einem probabilistischen Modell anhand beobachteter Daten abzuleiten.

Bayessche Netzwerkmodelle sind probabilistische grafische Modelle, die Beziehungen zwischen verschiedenen Variablen darstellen. Diese Modelle werden verwendet, um den Wert einer Variablen in Abhängigkeit von den Werten der anderen Variablen im System vorherzusagen.

Nicht-parametrische Bayessche Modelle sind probabilistische Modelle, die keine Annahmen über die zugrundeliegende Verteilung der Daten machen und hauptsächlich zur Schätzung der Wahrscheinlichkeit einer Hypothese verwendet werden, ohne die Parameter der Verteilung definieren zu müssen.

Insgesamt sind Bayessche Modelle nützlich für die Modellierung komplexer Systeme und die Vorhersage des Verhaltens eines Systems auf der Grundlage beobachteter Daten. Diese Modelle werden in großem Umfang für maschinelles Lernen und KI-Anwendungen sowie in der medizinischen Forschung und anderen Bereichen eingesetzt.

10. Clustering-Modelle

Clustering-Modelle müssen validiert werden, um sicherzustellen, dass die erstellten Cluster aussagekräftig sind und das Modell zuverlässig ist.

Wenn Sie mit dieser Technik arbeiten, müssen einige Voraussetzungen erfüllt sein, unter anderem:

  • Bewertung der Qualität der erstellten Cluster
  • Vergleich der von verschiedenen Algorithmen erzeugten Cluster
  • Bewertung der Stabilität der Cluster über mehrere Durchläufe
  • Prüfung der Skalierbarkeit des Clustering-Modells
  • Prüfung der Ergebnisse des Clustering-Modells, um sicherzustellen, dass sie aussagekräftig und zuverlässig sind und die zugrunde liegenden Daten widerspiegeln.

Wie man Modelle des maschinellen Lernens validiert

Schritt 1: Laden Sie die erforderlichen Bibliotheken und Module

Für die Validierung eines Modells des maschinellen Lernens ist eine Liste verschiedener Module und Bibliotheken erforderlich, darunter:

  • Pandas
  • Numpy
  • Matplotlib
  • Sklearn
  • train_test_split
  • mittlere_quadratische Abweichung
  • sqrt, model_selection
  • Logistische Regression
  • KFold, LeaveOneOut
  • LeavePOut
  • ShuffleSplit
  • StratifiedKFold

Darüber hinaus sind grundlegende Kenntnisse über Apache Beam, und ein Verständnis für die Funktionsweise von Modellen des maschinellen Lernens erforderlich. Schließlich werden ein Google Colab-Notebook und ein Github-Konto benötigt, um den Python-Code auszuführen.

What is Machine Learning Model Validation ? | ML Course Part: 19 |

Validierung von Machine Learning-Modellen durch Machine Learning Plus (06m:17s)

Schritt 2: Lesen Sie die Daten und führen Sie grundlegende Datenprüfungen durch

  1. Laden Sie die erforderlichen Bibliotheken und Module.
  2. Lesen Sie die Daten und führen Sie grundlegende Datenprüfungen durch. Dazu gehört die Überprüfung der Datentypen, die Überprüfung auf ungültige oder fehlende Werte und das Verstehen der Verteilungen der einzelnen Merkmale.
  3. Erstellen Sie Arrays für die Merkmale und die Antwortvariable. Dadurch wird sichergestellt, dass die Daten das richtige Format für das Modell haben.
  4. Führen Sie Modellvalidierungstechniken durch. Dazu gehört die Aufteilung der Daten in Trainings- und Testsätze, die Anwendung verschiedener Validierungstechniken wie Kreuzvalidierung und k-fache Kreuzvalidierung, und der Vergleich der Modellergebnisse mit ähnlichen Modellen.
Cross Validation In Machine Learning | Cross Validation | Machine Learning Tutorial | Simplilearn

Kreuzvalidierung im maschinellen Lernen von Simplilearn (25m:58s)

Schritt 3: Erstellen Sie Arrays für die Merkmale und die Antwortvariable

  1. Laden Sie die erforderlichen Bibliotheken und Module.
  2. Lesen Sie die Daten und führen Sie grundlegende Datenprüfungen durch.
  3. Erstellen Sie eine Variable, um die Daten in einer Form zu speichern, die das Modell verwenden kann.
  4. Erstellen Sie Arrays für die Merkmale und die Antwortvariable. Bestimmen Sie zunächst die Spalten oder Merkmale, die Sie als Teil des Modells verwenden möchten. Verwenden Sie dann die ‚drop‘-Methode, um ein Array mit den Merkmalen zu erstellen. Als Beispiel: x1 = dat.drop(‚diabetes‘, axis=1).values. Erstellen Sie schließlich ein Array für die Antwortvariable unter Verwendung des Spaltennamens. Beispiel: y1 = dat[‚diabetes‘].values.
  5. Verwenden Sie die Arrays zum Trainieren und Testen des Modells.

Schritt 4: Probieren Sie verschiedene Validierungstechniken aus

Neben den Standardmodellen „Train and Test Split“ und „K-Fold Cross-Validation“ können verschiedene andere Techniken zur Validierung von Modellen des maschinellen Lernens verwendet werden. Dazu gehören:

Leave One Out Cross-Validation (LOOCV): Bei dieser Technik wird ein Datenpunkt als Testsatz und alle anderen Punkte als Schulungssatz verwendet. Dieser Vorgang wird für jeden Punkt des Datensatzes wiederholt.

Stratifizierte K-fache-Kreuzvalidierung (engl. K-Fold Cross-Validation): Bei dieser Technik werden die Daten in Faltungen (Folds) gleicher Größe aufgeteilt, wobei jede Falte verschiedene Schichten der Daten repräsentiert. Dadurch wird sichergestellt, dass jede Falte die Verteilung der Daten genau widerspiegelt.

Wiederholte zufällige Test-Train-Splits: Bei dieser Technik werden die Daten mehrfach in Trainings- und Testgruppen aufgeteilt, wobei die Daten jedes Mal zufällig gemischt werden. Dies trägt dazu bei, Verzerrungen zu verringern und ein genaueres Maß für die Generalisierungsleistung zu erhalten.

Gewinn/Verlust-Diagramme: Ein Gewinn/Verlust-Diagramm zeigt die mit einem Modell verbundenen Kosten für einen bestimmten Satz von Eingaben und Vorhersagen. Das kann helfen, etwaige Verzerrungen oder Fehler im Modell zu erkennen und angemessene Kosten zu bestimmen.

Klassifizierungsmatrizen: Eine Klassifizierungsmatrix hilft bei der Visualisierung der Genauigkeit eines Modells durch eine Matrix von wahr-positiven, wahr-negativen, falsch-positiven und falsch-negativen Ergebnissen. Auch dies kann helfen, etwaige Verzerrungen in den Daten oder im Modell zu erkennen.

Streudiagramme: Streudiagramme helfen bei der Visualisierung der Beziehung zwischen Input und Output eines Modells. Das Verfahren ermöglicht es Fehler oder Verzerrungen im Modell zu erkennen.

Schritt 5: Richten Sie TFMA mit Keras ein und führen Sie es aus

  1. Importieren Sie die TensorFlow Model Analysis Bibliothek in Ihr Google Colab Notizbuch.
  2. Erstellen Sie eine Instanz von tfma.EvalConfig mit Einstellungen für Modellinformationen und Metriken.
  3. Erstellen Sie ein tfma.EvalSharedModel, das auf das Keras-Modell verweist.
  4. Richten Sie einen Ausgabepfad für die Auswertungsergebnisse ein.
  5. Starten Sie TFMA mit der Funktion tfma.run_model_analysis.
  6. Betrachten Sie die Bewertungsergebnisse mit tfma.view.render_slicing_metrics oder tfma.view.render_time_series.

Schritt 6: Visualisieren Sie die Metriken und Diagramme

Visualisierungen können bei der Validierung von Modellen des maschinellen Lernens helfen, indem sie zeigen, wie das Modell in verschiedenen Szenarien abschneidet. Dazu gehört die Betrachtung verschiedener Input-Merkmale und Kombinationen dieser Merkmale sowie die Feststellung, wie sich der Modelloutput ändert.

Durch den Vergleich des Modelloutputs mit einem ähnlichen Modell, historisches Backtesting und Versionskontrolle können Datenwissenschaftler Bereiche identifizieren, in denen das Modell verbessert werden muss oder einen falschen Output liefert.

Visualisierungen können auch zum Vergleich der Modellleistung über verschiedene Zeiträume, geografische Gebiete und Benutzergruppen hinweg verwendet werden. Das hilft bei der Ermittlung von Ursache-Wirkungs-Beziehungen zwischen den Ergebnissen des Modells und den Input-Merkmalen, und kann dazu beitragen Bereiche zu identifizieren, in denen das Modell weiter verfeinert werden muss.

Schritt 7: Verfolgen Sie die Leistung Ihres Modells im Laufe der Zeit

Die Verfolgung der Modellleistung im Laufe der Zeit kann zur Validierung von Modellen des maschinellen Lernens beitragen, da sie eine Möglichkeit bietet, die Modellgenauigkeit und -leistung genau zu messen.

Es ermöglicht den Vergleich verschiedener Modelle, um das beste Modell für eine bestimmte Aufgabe zu ermitteln. Darüber hinaus kann eine sukzessive Verfolgung der Leistung einen Einblick in die Fortschritte des Modells in Bezug auf seine anfängliche Leistung geben.

Auf diese Weise können Änderungen am Modell, die sich auf die Genauigkeit oder die Leistung des Modells auswirken könnten, ermittelt und sichergestellt werden, dass das Modell wie gewünscht funktioniert.

Vorteile der Implementierung einer angemessenen ML-Modellvalidierung

Modelle des maschinellen Lernens und ihre Validierung erfordern einen hohen Arbeits- und Ressourcenaufwand während der Implementierungsphase. Dennoch entscheiden sich viele Organisationen und Unternehmen aufgrund der Vorteile die ein Validierungsprozess mit sich bringt für deren Einsatz.

Denn sobald  solche Prozesse in der gesamten Pipeline implementiert sind, können sie sicherstellen, dass die maschinellen Lernsysteme qualitativ hochwertige Ergebnisse produzieren und verwalten.

Darüber hinaus handelt es sich um eine Reihe von organisierten Prozessen, die die Sicherheit der Maschinen und die Einhaltung der Vorschriften gewährleisten. Und nicht nur das: Die Implementierung einer ordnungsgemäßen Validierung ermöglicht auch Transparenz, um den Beteiligten Sicherheit zu geben.

Einer der wichtigsten Vorteile eines solchen Prozesses für die gesamte Pipeline besteht darin, dass es den Unternehmen die Gewissheit gibt, dass ihre Systeme eine große Anzahl von Werten produzieren.

Viele Unternehmen haben spezielle Data-Science-Abteilungen eingerichtet, die die Systeme überwachen. Die Implementierung einer effizienten Validierungsrichtlinie hilft ihnen dabei, die Tests des maschinellen Lernens zu kontrollieren, um sicherzustellen, dass das Modell die Anforderungen erfüllt und in der Produktionsphase verbleiben kann.

Und nicht nur das: Die Ergebnisse dieses Prozesses beruhigen auch die externen Adressaten und die am Unternehmen beteiligten Interessengruppen, da sie wissen, dass die Maschinen all diese Werte berechnen und genaue Ergebnisse liefern.

FAQs zur Validierung von Modellen des maschinellen Lernens

Was bedeutet Modellvalidierung im maschinellen Lernen?

Die Validierung eines Modells des maschinellen Lernens ist der Prozess der Bewertung der Leistung eines trainierten ML- oder statistischen Modells, das zuverlässige Vorhersagen und Ergebnisse zur Erreichung von Geschäftszielen liefert. Sie erfolgt anhand eines Datensatzes, der von dem für das Training des Modells verwendeten Datensatz getrennt ist. Hierzu können verschiedene Ansätze verwendet werden, z. B. die Aufteilung in Trainieren/Validieren/Testen, die k-fache Kreuzvalidierung und die zeitbasierte Aufteilung. Die Leistung des Modells wird anhand von Metriken wie Genauigkeit, Präzision, Wiedererkennung, mittlerer absoluter Fehler (MAE) und mittlerer quadratischer Fehler (RMSE) bewertet. Die Modellvalidierung sollte während des gesamten Data-Science-Lebenszyklus durchgeführt werden, und ist von entscheidender Bedeutung um sicherzustellen, dass das Modell gut auf ungesehene Daten verallgemeinert werden kann. So wird das beste Modell ausgewählt, die Parameter und Genauigkeitsmetriken richtig eingestellt, und eine Anpassung an neue Umstände ermöglicht.

Welche verschiedenen Techniken werden zur Validierung von Modellen des maschinellen Lernens eingesetzt?

Zu den verschiedenen Techniken, die zur Validierung von Modellen des maschinellen Lernens verwendet werden, gehören die Aufteilung in Trainings- und Testdaten, die Kreuzvalidierung, die k-fache Kreuzvalidierung, die Leave-One-Out-Kreuzvalidierung, das Bootstrapping, die Monte-Carlo-Kreuzvalidierung, die Holdout-Validierung und die Shuffle-Aufteilung. Ein Train-and-Test-Split ist die grundlegendste Art der Validierungstechnik, bei der die Daten in zwei Gruppen aufgeteilt werden: Trainingsdaten und Testdaten. Die Kreuzvalidierung ist eine Technik zur Modellvalidierung, mit der beurteilt wird, wie die Ergebnisse einer statistischen Analyse auf einen unabhängigen Datensatz verallgemeinert werden können. Die k-fache Kreuzvalidierung ist eine Modellvalidierungstechnik, bei der die Daten in k Gruppen oder Falten von ungefähr gleicher Größe aufgeteilt werden. Die Leave-One-Out-Kreuzvalidierung ist eine Modellvalidierungstechnik, mit der die Genauigkeit eines Vorhersagemodells getestet wird. Bootstrapping ist eine Modellvalidierungstechnik, die es ermöglicht, die Genauigkeit eines Vorhersagemodells durch erneutes Sampling des Datensatzes zu messen. Die Monte-Carlo-Kreuzvalidierung ist ein Verfahren zur Modellvalidierung, mit dem die Genauigkeit eines Modells gemessen wird, indem die Daten mehrmals in einen Trainings- und einen Testsatz aufgeteilt werden. Die Holdout-Validierung ist eine Modellvalidierungstechnik, bei der der Datensatz in zwei Gruppen aufgeteilt wird: eine Trainingsgruppe und eine Testgruppe. Shuffle Split ist eine Modellvalidierungstechnik, bei der die Daten in eine Reihe von Foldings aufgeteilt werden und dann jedes Fold zufällig gemischt wird, um einen Trainings- und einen Testsatz zu erstellen.

Wie funktioniert die Kreuzvalidierung?

Die Kreuzvalidierung ist eine Technik zur Bewertung und Prüfung der Leistung eines Modells des maschinellen Lernens. Der Algorithmus der Kreuzvalidierung kann in folgende Schritte unterteilt werden:

  1. Teilen Sie den Datensatz in zwei Teile auf: einen zum Trainieren und einen zum Testen.
  2. Trainieren Sie das Modell mit der Trainingsmenge.
  3. Validieren Sie das Modell anhand des Testsatzes.
  4. Wiederholen Sie die Schritte 1-3 einige Male. Die Anzahl der Wiederholungen hängt von der verwendeten Kreuzvalidierungstechnik ab.
  5. Die Ergebnisse der verschiedenen Kreuzvalidierungsverfahren werden verwendet, um die Effizienz des Modells zu messen.
  6. Die Ergebnisse werden gemittelt, um eine Gesamtleistungsbewertung zu erhalten.
  7. Das Modell mit dem besten Ergebnis wird ausgewählt.
Die Kreuzvalidierung kann mit verschiedenen Techniken durchgeführt werden, z. B. Hold-Out, K-Folds, Leave-One-Out, Leave-P-Out, Stratified K-Folds, Repeated K-Folds, Nested K-Folds und Time Series CV. Für Zeitreihendaten sind die am häufigsten verwendeten Ansätze die Rolling Cross-Validation und die Blocked Cross-Validation.

Was ist der Zweck der Validierung?

Mit der Modellvalidierung soll sichergestellt werden, dass ein trainiertes Modell so funktioniert, wie es beabsichtigt war, und dass es das Problem löst, für das es entwickelt wurde. Die Modellvalidierung wird durchgeführt, um ein optimales Modell mit der besten Leistung zu finden und um die Leistung zu quantifizieren, die von einem bestimmten Modell für maschinelles Lernen bei ungesehenen Daten erwartet werden kann. Die Modellvalidierung ist ein integraler Bestandteil des Modellrisikomanagements und soll sicherstellen, dass das Modell nicht mehr Probleme schafft als es löst und den Anforderungen der Unternehmensführung entspricht. Sie umfasst das Testen des Modells und die Untersuchung der Konstruktion des Modells. Die Modellvalidierung testet auch die für die Erstellung verwendeten Tools, und die verwendeten Daten, um sicherzustellen, dass das Modell effektiv funktioniert.

Wie misst man die Leistung eines maschinellen Lernmodells?

Schritt 1: Messen Sie die Leistung Ihres Modells, indem Sie relevante Metriken zur Bewertung des Modells verwenden. Bei Regressionsmodellen verwenden Sie das bereinigte R-Quadrat, um die Leistung des Modells im Vergleich zu einer Benchmark zu messen. Für die Klassifizierung verwenden Sie die AUC (Area Under the Curve) einer ROC-Kurve (Receiver Operating Characteristics).
Schritt 2: Validieren Sie das Modell, indem Sie seinen Bias-Fehler, Varianzfehler, die Modellanpassung und die Modelldimensionen überwachen. Verwenden Sie auch die Kreuzvalidierung, um die Verzerrung zu überprüfen.
Schritt 3: Bewerten Sie das Modell anhand historischer Daten (offline) oder anhand aktueller Daten. Wenn Sie historische Daten verwenden, verwenden Sie ein Jupyter-Notebook und entweder das AWS SDK für Python (Boto) oder die von SageMaker bereitgestellte High-Level-Python-Bibliothek. Wenn Sie Live-Daten verwenden, nutzen Sie die A/B-Tests von SageMaker für Modelle in der Produktion und setzen Produktionsvarianten ein.
Schritt 4: Vergleichen Sie die Ergebnisse anhand der relevanten Metriken und stellen Sie fest, ob Sie mit der Leistung und Genauigkeit des Modells Ihre Geschäftsziele erreichen können.

Was ist Überanpassung und wie kann sie bei Modellen des maschinellen Lernens vermieden werden?

Überanpassung ist ein Problem, das bei Modellen des maschinellen Lernens auftritt, wenn das Modell zu gut trainiert ist und die Details und das Rauschen im Trainingsdatensatz anstelle der wahren zugrunde liegenden Muster lernt. Dies führt dazu, dass das Modell nicht in der Lage ist, auf ungesehene Daten zu verallgemeinern und keine genauen Vorhersagen zu treffen. Um eine Überanpassung zu vermeiden, sollte man eine Kreuzvalidierung verwenden und einen zusätzlichen Holdout-Satz erstellen. Dieser Holdout-Satz sollte 10 % des ursprünglichen Datensatzes betragen und wird zur Validierung der Leistung des Modells verwendet. Darüber hinaus ist es wichtig, die Verteilungen der Trainings- und Testdatensätze zu vergleichen, um sicherzustellen, dass sie sich nicht drastisch unterscheiden.

Wie lässt sich feststellen, ob ein Modell des maschinellen Lernens valide ist?

Schritt 1: Wählen Sie die richtige Validierungstechnik: Die richtige Validierungstechnik sollte je nach Art des entwickelten Modells und der verwendeten Daten gewählt werden. Berücksichtigen Sie unbedingt die Größe und Komplexität des Datensatzes sowie die Art der verwendeten Daten, z. B. gruppen- oder zeitindizierte Daten.
Schritt 2: Testen Sie das Modell: Sobald Sie die richtige Validierungstechnik gewählt haben, ist es an der Zeit, das Modell zu testen. Dabei wird das Modell auf eine Teilmenge von Daten angewendet und die Ergebnisse mit den erwarteten Ergebnissen verglichen. Auf diese Weise lässt sich feststellen, wie genau das Modell ist und wie gut es die Ergebnisse vorhersagt.
Schritt 3: Bewertung der Ergebnisse: Nach dem Testen des Modells werden die Ergebnisse ausgewertet, um festzustellen, wie genau das Modell ist und um mögliche Probleme zu ermitteln, die behoben werden müssen. Dies geschieht anhand des mittleren absoluten Fehlers, des mittleren quadratischen Fehlers, des Prozentsatzes der korrekt klassifizierten Stichproben und anderer Messgrößen, die Aufschluss über die Modellgenauigkeit geben können.
Schritt 4: Anpassen des Modells: Wenn die Ergebnisse der Modelltests nicht wie erwartet ausfallen, müssen möglicherweise Anpassungen vorgenommen werden, um die Leistung des Modells zu verbessern. Dies kann die Anpassung der Parameter des Modells oder das Hinzufügen weiterer Daten zum Trainingssatz beinhalten.
Schritt 5: Erneutes Testen des Modells: Nachdem alle Anpassungen am Modell vorgenommen wurden, muss es erneut getestet werden, um festzustellen, ob das Modell die Ergebnisse nun korrekt vorhersagt. Das sollte so lange wiederholt werden, bis das Modell die Ergebnisse korrekt vorhersagt und als gültig erachtet wird.

avatar

Robert Koch