


Die Bedeutung der Kreuzvalidierung kann nicht ignoriert werden!
Um die ursprüngliche Bedeutung nicht zu ändern, muss Folgendes neu ausgedrückt werden: Zuerst müssen wir herausfinden, warum eine Kreuzvalidierung erforderlich ist.
Kreuzvalidierung ist eine Technik, die häufig im maschinellen Lernen und in der Statistik verwendet wird, um die Leistung und Generalisierungsfähigkeit eines Vorhersagemodells zu bewerten, insbesondere wenn die Daten begrenzt sind, oder um die Fähigkeit des Modells zur Generalisierung auf neue, unsichtbare Daten zu bewerten.
Unter welchen Umständen wird eine Kreuzvalidierung verwendet?
- Bewertung der Modellleistung: Die Kreuzvalidierung hilft dabei, die Leistung des Modells anhand unsichtbarer Daten abzuschätzen. Durch das Training und die Auswertung des Modells anhand mehrerer Teilmengen der Daten liefert die Kreuzvalidierung eine robustere Schätzung der Modellleistung als eine einzelne Zugtestaufteilung.
- Dateneffizienz: Wenn die Daten begrenzt sind, nutzt die Kreuzvalidierung alle verfügbaren Proben vollständig aus und ermöglicht eine zuverlässigere Bewertung der Modellleistung, indem alle Daten gleichzeitig für Training und Bewertung verwendet werden.
- Hyperparameter-Tuning: Kreuzvalidierung wird häufig verwendet, um die besten Hyperparameter für ein Modell auszuwählen. Indem Sie die Leistung Ihres Modells mithilfe verschiedener Hyperparametereinstellungen für verschiedene Teilmengen der Daten bewerten, können Sie die Hyperparameterwerte identifizieren, die im Hinblick auf die Gesamtleistung am besten abschneiden.
- Überanpassung erkennen: Mithilfe der Kreuzvalidierung können Sie erkennen, ob das Modell eine Überanpassung an die Trainingsdaten durchführt. Wenn das Modell im Trainingssatz deutlich besser abschneidet als im Validierungssatz, deutet dies möglicherweise auf eine Überanpassung hin und erfordert Anpassungen wie eine Regularisierung oder die Auswahl eines einfacheren Modells.
- Bewertung der Generalisierungsfähigkeit: Die Kreuzvalidierung bietet eine Bewertung der Fähigkeit des Modells, auf unsichtbare Daten zu generalisieren. Durch die Auswertung des Modells anhand mehrerer Datenaufteilungen hilft es dabei, die Fähigkeit des Modells zu bewerten, zugrunde liegende Muster in den Daten zu erfassen, ohne sich auf Zufälligkeit oder eine bestimmte Zugtestaufteilung zu verlassen.
Die allgemeine Idee der Kreuzvalidierung kann in Abbildung 5-fach-Kreuz dargestellt werden. In jeder Iteration wird das neue Modell an vier Unterdatensätzen trainiert und am letzten beibehaltenen Unterdatensatz getestet, um sicherzustellen, dass alle Daten vorhanden sind werden genutzt. Durch Indikatoren wie durchschnittliche Punktzahl und Standardabweichung wird ein echtes Maß für die Modellleistung bereitgestellt
Alles muss mit dem K-Fold-Crossover beginnen.
KFold
Die K-Fold-Kreuzvalidierung wurde in Sklearn integriert. Hier ist ein 7-faches Beispiel:
from sklearn.datasets import make_regressionfrom sklearn.model_selection import KFoldx, y = make_regression(n_samples=100)# Init the splittercross_validation = KFold(n_splits=7)
Eine weitere häufige Operation besteht darin, Shuffle vor der Aufteilung durchzuführen, wodurch die ursprüngliche Reihenfolge der Proben weiter zerstört wird Minimiert das Risiko einer Überanpassung:
cross_validation = KFold(n_splits=7, shuffle=True)
Auf diese Weise kann eine einfache k-fache Kreuzvalidierung durchgeführt werden. Bitte überprüfen Sie unbedingt den Quellcode! Schauen Sie sich unbedingt den Quellcode an! Schauen Sie sich unbedingt den Quellcode an!
StratifiedKFold
StratifiedKFold wurde speziell für Klassifizierungsprobleme entwickelt.
Bei einigen Klassifizierungsproblemen sollte die Zielverteilung unverändert bleiben, selbst wenn die Daten in mehrere Sätze unterteilt sind. In den meisten Fällen sollte beispielsweise ein binäres Ziel mit einem Klassenverhältnis von 30 zu 70 im Trainingssatz und im Testsatz immer noch das gleiche Verhältnis beibehalten. In gewöhnlichem KFold wird diese Regel verletzt, da die Daten vor der Aufteilung gemischt werden Die Proportionen der Kategorien werden nicht beibehalten.
Um dieses Problem zu lösen, wird in Sklearn eine weitere Splitterklasse speziell für die Klassifizierung verwendet – StratifiedKFold:
from sklearn.datasets import make_classificationfrom sklearn.model_selection import StratifiedKFoldx, y = make_classification(n_samples=100, n_classes=2)cross_validation = StratifiedKFold(n_splits=7, shuffle=True, random_state=1121218)
Obwohl sie KFold ähnelt, bleiben die Klassenproportionen jetzt in allen Teilungen und Iterationen konsistent
ShuffleSplit
Manchmal Der Prozess der Aufteilung des Trainings-/Testsatzes wird einfach mehrmals wiederholt, ganz ähnlich wie bei der Kreuzvalidierung. Validierungsprozess in genügend Iterationen. Die entsprechende Schnittstelle wird auch in der Scikit-learn-Bibliothek bereitgestellt:
from sklearn.model_selection import ShuffleSplitcross_validation = ShuffleSplit(n_splits=7, train_size=0.75, test_size=0.25)
Wenn es sich bei dem Datensatz um eine Zeitreihe handelt, kann die herkömmliche Kreuzvalidierung nicht verwendet werden, was zu einer vollständigen Störung führt Um dieses Problem zu lösen, finden Sie in Sklearn einen weiteren Splitter-TimeSeriesSplit. Dies liegt daran, dass es sich bei dem Index um ein Datum handelt, was bedeutet, dass wir nicht versehentlich ein Zeitreihenmodell auf ein zukünftiges Datum trainieren und eine Vorhersage für ein früheres Datum treffen können
Kreuzvalidierung nicht unabhängiger und identisch verteilter (Nicht-IID-)Daten
Die obige Methode wird für unabhängige und identisch verteilte Datensätze verarbeitet, d. h. der Prozess der Datengenerierung wird durch andere Stichproben nicht beeinflusst
Allerdings In einigen Fällen erfüllen die Daten nicht die Bedingung der unabhängigen und identischen Verteilung (IID), d. h. zwischen einigen Stichproben besteht eine Abhängigkeitsbeziehung. Diese Situation tritt auch bei Kaggle-Wettbewerben auf, beispielsweise beim Google Brain Ventilator Pressure-Wettbewerb. Diese Daten erfassen die Luftdruckwerte der künstlichen Lunge während Tausender Atemzüge (Ein- und Ausatmen) und werden zu jedem Zeitpunkt jedes Atemzugs aufgezeichnet. Für jeden Atemvorgang gibt es etwa 80 Datenzeilen, die miteinander verknüpft sind. In diesem Fall können herkömmliche Kreuzvalidierungsmethoden nicht verwendet werden, da die Partitionierung der Daten „mitten im Atemprozess“ erfolgen kann
Dies kann als die Notwendigkeit verstanden werden, diese Daten aufgrund der internen Daten zu „gruppieren“. Gruppendaten Es hängt zusammen. Wenn beispielsweise medizinische Daten von mehreren Patienten erfasst werden, verfügt jeder Patient über mehrere Proben. Diese Daten werden jedoch wahrscheinlich durch individuelle Unterschiede zwischen Patienten beeinflusst und müssen daher auch gruppiert werden
Oft hoffen wir, dass sich ein auf eine bestimmte Gruppe trainiertes Modell gut auf andere unbekannte Gruppen übertragen lässt. Bei der Durchführung einer Kreuzvalidierung Geben Sie diesen Datengruppen „Tags“ und sagen Sie ihnen, wie sie sie unterscheiden können.
In Sklearn stehen mehrere Schnittstellen zur Verfügung, um diese Situationen zu bewältigen:
- GroupKFold
- StratifiedGroupKFold
- LeaveOneGroupOut
- LeavePGroupsOut
- GroupShuffleSplit
Es wird dringend empfohlen, die Idee von Cross- zu verstehen. Validierung und wie es geht Um es umzusetzen, schauen Sie sich den Sklearn-Quellcode an: Keine schlechte Möglichkeit, Ihren Darm zu mästen. Darüber hinaus benötigen Sie eine klare Definition Ihres eigenen Datensatzes, und die Datenvorverarbeitung ist wirklich wichtig.
Das obige ist der detaillierte Inhalt vonDie Bedeutung der Kreuzvalidierung kann nicht ignoriert werden!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Bei der Bildanmerkung handelt es sich um das Verknüpfen von Beschriftungen oder beschreibenden Informationen mit Bildern, um dem Bildinhalt eine tiefere Bedeutung und Erklärung zu verleihen. Dieser Prozess ist entscheidend für maschinelles Lernen, das dabei hilft, Sehmodelle zu trainieren, um einzelne Elemente in Bildern genauer zu identifizieren. Durch das Hinzufügen von Anmerkungen zu Bildern kann der Computer die Semantik und den Kontext hinter den Bildern verstehen und so den Bildinhalt besser verstehen und analysieren. Die Bildanmerkung hat ein breites Anwendungsspektrum und deckt viele Bereiche ab, z. B. Computer Vision, Verarbeitung natürlicher Sprache und Diagramm-Vision-Modelle. Sie verfügt über ein breites Anwendungsspektrum, z. B. zur Unterstützung von Fahrzeugen bei der Identifizierung von Hindernissen auf der Straße und bei der Erkennung und Diagnose von Krankheiten durch medizinische Bilderkennung. In diesem Artikel werden hauptsächlich einige bessere Open-Source- und kostenlose Bildanmerkungstools empfohlen. 1.Makesens

In den Bereichen maschinelles Lernen und Datenwissenschaft stand die Interpretierbarkeit von Modellen schon immer im Fokus von Forschern und Praktikern. Mit der weit verbreiteten Anwendung komplexer Modelle wie Deep Learning und Ensemble-Methoden ist das Verständnis des Entscheidungsprozesses des Modells besonders wichtig geworden. Explainable AI|XAI trägt dazu bei, Vertrauen in maschinelle Lernmodelle aufzubauen, indem es die Transparenz des Modells erhöht. Eine Verbesserung der Modelltransparenz kann durch Methoden wie den weit verbreiteten Einsatz mehrerer komplexer Modelle sowie der Entscheidungsprozesse zur Erläuterung der Modelle erreicht werden. Zu diesen Methoden gehören die Analyse der Merkmalsbedeutung, die Schätzung des Modellvorhersageintervalls, lokale Interpretierbarkeitsalgorithmen usw. Die Merkmalswichtigkeitsanalyse kann den Entscheidungsprozess des Modells erklären, indem sie den Grad des Einflusses des Modells auf die Eingabemerkmale bewertet. Schätzung des Modellvorhersageintervalls

Laienhaft ausgedrückt ist ein Modell für maschinelles Lernen eine mathematische Funktion, die Eingabedaten einer vorhergesagten Ausgabe zuordnet. Genauer gesagt ist ein Modell für maschinelles Lernen eine mathematische Funktion, die Modellparameter anpasst, indem sie aus Trainingsdaten lernt, um den Fehler zwischen der vorhergesagten Ausgabe und der wahren Bezeichnung zu minimieren. Beim maschinellen Lernen gibt es viele Modelle, z. B. logistische Regressionsmodelle, Entscheidungsbaummodelle, Support-Vektor-Maschinenmodelle usw. Jedes Modell verfügt über seine anwendbaren Datentypen und Problemtypen. Gleichzeitig gibt es viele Gemeinsamkeiten zwischen verschiedenen Modellen oder es gibt einen verborgenen Weg für die Modellentwicklung. Am Beispiel des konnektionistischen Perzeptrons können wir es durch Erhöhen der Anzahl verborgener Schichten des Perzeptrons in ein tiefes neuronales Netzwerk umwandeln. Wenn dem Perzeptron eine Kernelfunktion hinzugefügt wird, kann es in eine SVM umgewandelt werden. Dieses hier

In diesem Artikel wird vorgestellt, wie Überanpassung und Unteranpassung in Modellen für maschinelles Lernen mithilfe von Lernkurven effektiv identifiziert werden können. Unteranpassung und Überanpassung 1. Überanpassung Wenn ein Modell mit den Daten übertrainiert ist, sodass es daraus Rauschen lernt, spricht man von einer Überanpassung des Modells. Ein überangepasstes Modell lernt jedes Beispiel so perfekt, dass es ein unsichtbares/neues Beispiel falsch klassifiziert. Für ein überangepasstes Modell erhalten wir einen perfekten/nahezu perfekten Trainingssatzwert und einen schrecklichen Validierungssatz-/Testwert. Leicht geändert: „Ursache der Überanpassung: Verwenden Sie ein komplexes Modell, um ein einfaches Problem zu lösen und Rauschen aus den Daten zu extrahieren. Weil ein kleiner Datensatz als Trainingssatz möglicherweise nicht die korrekte Darstellung aller Daten darstellt. 2. Unteranpassung Heru.“

In den 1950er Jahren wurde die künstliche Intelligenz (KI) geboren. Damals entdeckten Forscher, dass Maschinen menschenähnliche Aufgaben wie das Denken ausführen können. Später, in den 1960er Jahren, finanzierte das US-Verteidigungsministerium künstliche Intelligenz und richtete Labore für die weitere Entwicklung ein. Forscher finden Anwendungen für künstliche Intelligenz in vielen Bereichen, etwa bei der Erforschung des Weltraums und beim Überleben in extremen Umgebungen. Unter Weltraumforschung versteht man die Erforschung des Universums, das das gesamte Universum außerhalb der Erde umfasst. Der Weltraum wird als extreme Umgebung eingestuft, da sich seine Bedingungen von denen auf der Erde unterscheiden. Um im Weltraum zu überleben, müssen viele Faktoren berücksichtigt und Vorkehrungen getroffen werden. Wissenschaftler und Forscher glauben, dass die Erforschung des Weltraums und das Verständnis des aktuellen Zustands aller Dinge dazu beitragen können, die Funktionsweise des Universums zu verstehen und sich auf mögliche Umweltkrisen vorzubereiten

Zu den häufigsten Herausforderungen, mit denen Algorithmen für maschinelles Lernen in C++ konfrontiert sind, gehören Speicherverwaltung, Multithreading, Leistungsoptimierung und Wartbarkeit. Zu den Lösungen gehören die Verwendung intelligenter Zeiger, moderner Threading-Bibliotheken, SIMD-Anweisungen und Bibliotheken von Drittanbietern sowie die Einhaltung von Codierungsstilrichtlinien und die Verwendung von Automatisierungstools. Praktische Fälle zeigen, wie man die Eigen-Bibliothek nutzt, um lineare Regressionsalgorithmen zu implementieren, den Speicher effektiv zu verwalten und leistungsstarke Matrixoperationen zu nutzen.

Übersetzer |. Rezensiert von Li Rui |. Chonglou Modelle für künstliche Intelligenz (KI) und maschinelles Lernen (ML) werden heutzutage immer komplexer, und die von diesen Modellen erzeugten Ergebnisse sind eine Blackbox, die den Stakeholdern nicht erklärt werden kann. Explainable AI (XAI) zielt darauf ab, dieses Problem zu lösen, indem es Stakeholdern ermöglicht, die Funktionsweise dieser Modelle zu verstehen, sicherzustellen, dass sie verstehen, wie diese Modelle tatsächlich Entscheidungen treffen, und Transparenz in KI-Systemen, Vertrauen und Verantwortlichkeit zur Lösung dieses Problems gewährleistet. In diesem Artikel werden verschiedene Techniken der erklärbaren künstlichen Intelligenz (XAI) untersucht, um ihre zugrunde liegenden Prinzipien zu veranschaulichen. Mehrere Gründe, warum erklärbare KI von entscheidender Bedeutung ist. Vertrauen und Transparenz: Damit KI-Systeme allgemein akzeptiert und vertrauenswürdig sind, müssen Benutzer verstehen, wie Entscheidungen getroffen werden

MetaFAIR hat sich mit Harvard zusammengetan, um einen neuen Forschungsrahmen zur Optimierung der Datenverzerrung bereitzustellen, die bei der Durchführung groß angelegten maschinellen Lernens entsteht. Es ist bekannt, dass das Training großer Sprachmodelle oft Monate dauert und Hunderte oder sogar Tausende von GPUs verwendet. Am Beispiel des Modells LLaMA270B erfordert das Training insgesamt 1.720.320 GPU-Stunden. Das Training großer Modelle stellt aufgrund des Umfangs und der Komplexität dieser Arbeitsbelastungen einzigartige systemische Herausforderungen dar. In letzter Zeit haben viele Institutionen über Instabilität im Trainingsprozess beim Training generativer SOTA-KI-Modelle berichtet. Diese treten normalerweise in Form von Verlustspitzen auf. Beim PaLM-Modell von Google kam es beispielsweise während des Trainingsprozesses zu Instabilitäten. Numerische Voreingenommenheit ist die Hauptursache für diese Trainingsungenauigkeit.
