Heim >Backend-Entwicklung >Python-Tutorial >Erklärung des Python-äquivalenten Codes für automatisches maschinelles Lernen
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.
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.
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 vonimport 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))
Accuracy: 0.9866666666666667
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
.
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.
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!