Heim > Backend-Entwicklung > Python-Tutorial > Erklärung des Python-äquivalenten Codes für automatisches maschinelles Lernen

Erklärung des Python-äquivalenten Codes für automatisches maschinelles Lernen

PHPz
Freigeben: 2023-08-22 20:25:10
nach vorne
1176 Leute haben es durchsucht

Erklärung des Python-äquivalenten Codes für automatisches maschinelles Lernen

Einführung

Maschinelles Lernen ist ein sich schnell entwickelndes Feld und es entstehen ständig neue Technologien und Algorithmen. Allerdings kann die Erstellung und Verbesserung von Modellen für maschinelles Lernen eine zeitaufwändige und herausfordernde Aufgabe sein, die ein hohes Maß an Fachwissen erfordert. Automatisiertes maschinelles Lernen, oft auch als AutoML bezeichnet, zielt darauf ab, den Prozess der Erstellung und Optimierung von Modellen für maschinelles Lernen zu vereinfachen, indem einige der mühsamen Aufgaben wie Feature-Engineering, Hyperparameter-Tuning und Modellauswahl automatisiert werden.

auto-sklearn ist ein leistungsstarkes Open-Source-Framework für automatisiertes maschinelles Lernen, das auf scikit-learn basiert, einer der bekanntesten Bibliotheken für maschinelles Lernen in Python. Es sucht automatisch nach potenziellen Machine-Learning-Pipelines in einem bestimmten Datensatz durch Bayes'sche Optimierung und Meta-Learning und identifiziert automatisch die besten Modelle und Hyperparameter. In diesem Tutorial wird die Verwendung von Auto-sklearn in Python vorgestellt, einschließlich Anleitungen zur Installation, zum Importieren von Daten, zur Datenvorbereitung, zum Erstellen und Trainieren von Modellen sowie zum Bewerten von Modelleffekten. Selbst Anfänger können mit Auto-sklearn schnell und einfach leistungsstarke Modelle für maschinelles Lernen erstellen.

So gehen Sie mit Fehlern in Node-Red um

Auto-sklearn

Automatisieren Sie die Erstellung und kontinuierliche Verbesserung von Modellen für maschinelles Lernen mit dem effizienten Open-Source-Softwareprogramm Auto-sklearn. Finden Sie automatisch das ideale Modell und die idealen Hyperparameter für einen bestimmten Datensatz mithilfe von Bayes'scher Optimierung und Meta-Learning, die wiederum auf dem bekannten Programm für maschinelles Lernen scikit-learn basieren.

Nur einige der von autosklearn für Klassifizierungs- und Regressionsprobleme erstellten Anwendungen umfassen die Verarbeitung natürlicher Sprache, Bildklassifizierung und Zeitreihenvorhersage.

Die Bibliothek durchsucht eine Sammlung potenzieller maschineller Lernprozesse, einschließlich Feature-Engineering, Modellauswahl und Datenvorbereitungsprozesse. Es nutzt die Bayes'sche Optimierung, um diesen Bereich effizient zu durchsuchen, und verbessert die Sucheffizienz gegenüber früheren Tests kontinuierlich durch Meta-Learning.

Darüber hinaus bietet Auto-sklearn eine Reihe leistungsstarker Funktionen, darunter dynamische Ensembleauswahl, automatische Modellintegration und aktives Lernen. Darüber hinaus bietet es eine benutzerfreundliche API zum Entwickeln, Testen und Trainieren von Modellen.

AutoML-Code

Lassen Sie uns nun den AutoML-Code mithilfe von Auto-sklearn genauer untersuchen. Wir werden den Digits-Datensatz von scikit-learn verwenden, bei dem es sich um einen Datensatz handgeschriebener Ziffern handelt. Das Ziel besteht darin, Zahlen anhand von Zahlenbildern vorherzusagen. Hier ist der Code -

Die chinesische Übersetzung von

Programm

lautet:

Programm

import autosklearn.classification
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split

# Load the dataset
X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=1)

# Create and fit the AutoML model
automl = autosklearn.classification.AutoSklearnClassifier(time_left_for_this_task=180, per_run_time_limit=30)
automl.fit(X_train, y_train)

# Evaluate the model on the test set
print("Accuracy:", automl.score(X_test, y_test))
Nach dem Login kopieren

Ausgabe

Accuracy: 0.9866666666666667
Nach dem Login kopieren

Code-Erklärung

Dieses Programm nutzt automatisiertes maschinelles Lernen (AutoML), um handgeschriebene Ziffern aus dem MNIST-Datensatz zu klassifizieren, einschließlich der Verwendung des Auto-sklearn-Moduls. Hier ist eine kurze Übersicht über den Code −

  • Importieren Sie die AutoSklearnClassifier-Klasse aus dem autosklearn.classification-Modul. Diese Klasse enthält das AutoML-Klassifizierungsmodell, das verwendet wird.

  • Ladefunktion „load_digits“ aus sklearn.datasets importieren: Dadurch wird die Funktion „load_digits“ des MNIST-Datensatzes aus dem Paket „sklearn.datasets“ importiert.

  • Wählen Sie ein Modell von sklearn. Der MNIST-Datensatz wird mithilfe der Train-Test-Split-Funktion im hier importierten Auswahlmodul sklearn.model in einen Trainingssatz und einen Testsatz unterteilt.

  • Der MNIST-Datensatz wird geladen, die Eingabemerkmale werden in X und die entsprechenden Beschriftungen in Y gespeichert. X, y = load_digits(return_X_y=True): Dadurch wird der MNIST-Datensatz geladen.

  • X-Trainingssatz, Seed-Satz auf 1, um die Reproduzierbarkeit sicherzustellen

  • Automl entspricht autosklearn.classification. AutoSklearnClassifier (Zeitlimit pro Lauf = 30, verbleibende Zeit für diese Aufgabe = 180): Bilden Sie ein auf dem MNIST-Datensatz trainiertes AutoML-Modell in eine Instanz der AutoSklearnClassifier-Klasse. Das Zeitlimit pro Ausführung stellt die maximale Zeit (in Sekunden) dar, die jedes einzelne Modell ausführen kann, während die verbleibende Zeit für diese Aufgabe die maximale Zeit (in Sekunden) darstellt, die der AutoML-Prozess ausführen kann.
  • Verwenden Sie die automl.fit-Funktion (X-Zug, y-Zug), um das AutoSklearnClassifier-Modell über den Trainingssatz X-Zug und den zugehörigen Label-Y-Zug zu trainieren.
  • accuracy:", print(X test, y test), automl.score Dies bestimmt die Genauigkeit des AutoSklearnClassifier-Modells im Testsatz, nachdem seine Leistung anhand der X-Test- und Y-Test-bezogenen Etiketten bewertet wurde. Die Score-Methode gibt die Genauigkeit an des Modells auf einem bestimmten Datensatz
  • .

  • Der obige Code implementiert die AutoML-Methode, eine maschinelle Lerntechnologie, die jeden Schritt des Modellerstellungsprozesses automatisiert, einschließlich Funktionsauswahl, Hyperparameter-Tuning und Datenvorbereitung. Auch Nicht-Experten können mit Hilfe von AutoML leistungsstarke Modelle erstellen, was den manuellen Aufwand für die Erstellung von Machine-Learning-Modellen reduziert.

Importieren Sie zunächst die erforderlichen Bibliotheken wie Pandas, Numpy, Sklearn und Tpot in den Code. Sklearn wird für maschinelle Lernaufgaben wie Datenvorverarbeitung, Modellauswahl und -bewertung verwendet, Pandas wird für die Datenmanipulation verwendet und NumPy wird für numerische Berechnungen verwendet. Die Hauptbibliothek, die AutoML-Algorithmen implementiert, ist TPOT.

Laden Sie dann den Datensatz mit der Funktion read_csv von Pandas und speichern Sie die Eingabemerkmale und Ausgabebeschriftungen separat in verschiedenen Variablen. Die Variable „y“ enthält die Beschriftungen der Ausgabe, während die Variable „X“ die Merkmale der Eingabe speichert.

Um die Daten anzupassen und das Modell für maschinelles Lernen zu generieren, lädt der Code zunächst den Datensatz und erstellt dann eine Instanz der TPOTRegressor-Klasse. Die TPOTSRegressor-Klasse ist eine Unterklasse der TPOTBase-Klasse und verwendet einen genetischen Algorithmus, um Features auszuwählen und Hyperparameter anzupassen. Die TPOTRegressor-Klasse behandelt Regressionsprobleme, während die TPOTClassifier-Klasse Klassifizierungsprobleme behandelt.

Verwenden Sie die Train-Test-Split-Methode von Sklearn, um den Datensatz in einen Trainingssatz und einen Testsatz aufzuteilen. Beim maschinellen Lernen ist es üblich, die Daten in zwei Sätze aufzuteilen: einen Trainingssatz zur Anpassung des Modells und einen Testsatz zur Bewertung der Modellleistung.

Sobald die Daten aufgeteilt sind, wird die Fit-Methode der TPOTRegressor-Instanz aufgerufen, die das Modell basierend auf den Trainingsdaten anpasst. Bei der Fit-Technologie wird ein genetischer Algorithmus verwendet, um die optimale Teilmenge von Merkmalen und Hyperparametern für die gegebenen Daten zu finden. Das beste Modell wird dann zurückgegeben.

Der Code bewertet dann die Leistung des Modells im Testsatz, um mithilfe einer Bewertungsmethode die Genauigkeit des Modells zu bestimmen. Der Genauigkeitswert gibt an, wie gut das Modell zu den Daten passt, wobei Werte näher bei 1 auf eine bessere Anpassung hinweisen.

Das beste Modell wird dann mithilfe der Exportfunktion zusammen mit seiner Genauigkeitsbewertung für den Testsatz in eine Python-Datei exportiert.

Fazit

Zusammenfassend ist Auto-sklearn eine leistungsstarke Bibliothek, die den Prozess der Erstellung und Verbesserung von Modellen für maschinelles Lernen vereinfacht. Es spart Zeit und Aufwand, indem automatisch das beste Modell und die besten Hyperparameter für einen bestimmten Datensatz gefunden werden. In diesem Tutorial wird die Verwendung von Auto-sklearn in Python erläutert, einschließlich Anleitungen zur Installation, zum Importieren von Daten, zum Vorbereiten von Daten, zum Erstellen und Trainieren von Modellen sowie zum Bewerten der Modellleistung. Selbst Anfänger können mit Auto-sklearn schnell und einfach leistungsstarke Modelle für maschinelles Lernen erstellen.

Das obige ist der detaillierte Inhalt vonErklärung des Python-äquivalenten Codes für automatisches maschinelles Lernen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:tutorialspoint.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage