Erkundung von AutoML: Die wichtigsten verfügbaren Tools [Was Sie wissen müssen]

Veröffentlicht: 2020-12-07

Der Lebenszyklus des maschinellen Lernens besteht aus einer Reihe von Prozessen, die Datenerfassung, Datenbereinigung, Feature-Engineering, Feature-Auswahl, Modellerstellung, Hyperparameter-Tuning, Validierung und Modellbereitstellung umfassen.

Während das Sammeln von Daten viele Formen annehmen kann, wie z. B. manuelle Umfragen, Dateneingabe, Web-Scraping oder die während eines Experiments generierten Daten, werden die Daten bei der Datenbereinigung in eine Standardform umgewandelt, die in anderen Phasen des Lebenszyklus verwendet werden kann .

Der jüngste Anstieg des maschinellen Lernens hat auch viele Unternehmen dazu veranlasst, eine KI-basierte Lösung für ihre Mainstream-Produkte einzuführen, und daher ist ein neues Kapitel von AutoML auf den Markt gekommen. Es kann ein großartiges Werkzeug sein, um schnell KI-basierte Lösungen einzurichten, aber es gibt noch einige besorgniserregende Faktoren, die angegangen werden müssen.

Inhaltsverzeichnis

Was ist AutoML?

Es ist diese Reihe von Tools, die einige Teile des maschinellen Lernens automatisieren, was selbst ein automatisierter Prozess zur Generierung von Vorhersagen und Klassifizierungen ist, die zu umsetzbaren Ergebnissen führen. Obwohl es nur Feature-Engineering, Modellerstellung und manchmal Bereitstellungsphasen automatisieren kann, unterstützen die meisten AutoML-Tools mehrere maschinelle Lernalgorithmen und fast ebenso viele Bewertungsmetriken.

Wenn ein solches Tool gestartet wird, führt es denselben Datensatz über alle Algorithmen aus, testet verschiedene mit dem Problem verbundene Metriken und präsentiert dann einen detaillierten Bericht. Lassen Sie uns einige berühmte Tools erkunden, die auf dem Markt erhältlich sind und ausgiebig verwendet werden.

H2O.ai

Eine der führenden Lösungen in AutoML ist H2O.ai, das branchenreife Lösungen für Geschäftsprobleme bietet, bei denen nichts von Grund auf neu programmiert wird. Dies ermöglicht es jedem aus jedem Bereich, aussagekräftige Erkenntnisse aus den Daten zu extrahieren, ohne über Fachkenntnisse im maschinellen Lernen verfügen zu müssen.

Das H2O ist eine Open-Source-Lösung, die alle gängigen maschinellen Lernmodelle und statistischen Ansätze unterstützt. Es wurde entwickelt, um superschnelle Lösungen zu liefern, da die Daten über Cluster verteilt und dann in einem Spaltenformat im Speicher gespeichert werden, was parallele Lesevorgänge ermöglicht.

Neuere Versionen dieses Projekts haben auch GPU-Unterstützung, was es schneller und effizienter macht. Schauen wir uns an, wie dies mit Python durchgeführt werden kann (führen Sie den Code zum besseren Verständnis in jupyter notebook aus):

!pip install h2o # Führen Sie dies aus, wenn Sie es noch nicht installiert haben

Wasser importieren

h2o.init()

aus h2o.automl importieren Sie H2OAutoML

df = h2o.import_file() # Geben Sie hier den Dateipfad an

y = 'target_label'

x = df. entfernen (y)

X_train, X_test, X_validate = df.split_frame(Verhältnisse=[.7, .15])

model_obj = H2OAutoML (max_models = 10, Seed = 10, Ausführlichkeit = "info", nfolds = 0)

model_obj.train(x = x, y = y, training_frame = X_train, validation_frame=X_validate)

Ergebnisse = model_obj.leaderboard

Dadurch werden die Ergebnisse aller Algorithmen gespeichert, die je nach Problem ihre jeweiligen Metriken anzeigen.

Lesen Sie: Tools für maschinelles Lernen

Pycaret

Dies ist eine ziemlich neue Bibliothek, die in diesem Jahr eingeführt wurde und eine breite Palette von AutoML-Funktionen mit nur wenigen Codezeilen unterstützt. Ob Verarbeitung fehlender Werte, Umwandlung kategorialer Daten in ein fütterbares Modellformat, Hyperparameter-Tuning oder sogar Feature-Engineering, PyCaret automatisiert all dies hinter den Kulissen, wenn Sie sich mehr auf Datenmanipulationsstrategien konzentrieren können.

Es ist eher ein Python-Wrapper für alle verfügbaren Tools und Bibliotheken für maschinelles Lernen wie NumPy, Pandas, Sklearn, XGBoost usw. Lassen Sie uns verstehen, wie Sie mit Pycaret Klassifizierungsprobleme lösen können:

!pip install pycaret # Führen Sie dies aus, wenn Sie es noch nicht installiert haben

aus pycaret.datasets import get_data

aus pycaret.classification import *

df = get_data('Diabetes')

Einstellung = Setup (Diabetes, Ziel = 'Klassenvariable')

Compare_models() # Diese Funktion zeigt einfach den Vergleich aller Algorithmen an!

selected_model = create_model() # Übergeben Sie den Namen des Algorithmus, den Sie erstellen möchten

Vorhersage_Modell (ausgewähltes_Modell)

final_model = finalize_model(ausgewähltes_model)

save_model(final_model , 'Dateiname')

geladen = Lade_Modell('Dateiname')

Das war's, Sie haben gerade eine Transformationspipeline erstellt, die das Feature-Engineering durchführt, ein Modell trainiert und es gespeichert hat!

Google DataPrep

Wir haben uns zwei Bibliotheken angesehen, die die Auswahl von Features, die Modellerstellung und die Optimierung automatisieren, um die besten Ergebnisse zu erzielen, aber wir haben nicht besprochen, wie die Datenbereinigung automatisiert werden kann. Dieser Prozess kann sicher automatisiert werden, erfordert jedoch eine manuelle Überprüfung, ob die richtigen Daten übergeben werden oder ob die Werte einen Sinn ergeben oder nicht.

Mehr Daten sind ein Pluspunkt für die Modellbildung, aber es sollten qualitativ hochwertige Daten sein, um qualitativ hochwertige Ergebnisse zu erzielen. Google DataPrep ist ein intelligentes Datenvorbereitungstool, das als Plattform als Service angeboten wird und eine visuelle Datenbereinigung der Daten ermöglicht, d. h. Sie können die Daten ändern, ohne auch nur eine einzige Zeile zu codieren und nur die Optionen auszuwählen.

Es bietet eine interaktive GUI, die es super einfach macht, Optionen auszuwählen, um die Funktionen auszuführen, die Sie anwenden möchten. Das Beste an diesem Tool ist, dass es alle Änderungen, die am Datensatz vorgenommen wurden, in einem Seitenbereich in der Reihenfolge anzeigt, in der sie durchgeführt wurden, und dass jeder Schritt geändert werden kann. Es hilft, die Änderungen im Auge zu behalten. Sie werden aufgefordert, Vorschläge zu machen, die meistens richtig sind.

Die resultierende Datei kann in den lokalen Speicher exportiert werden, oder da dieser Dienst in der Google Cloud Platform bereitgestellt wird, können Sie diese Datei direkt in einen beliebigen Google Storage-Bucket oder in BigQuery-Tabellen übernehmen, wo Sie maschinelle Lernaufgaben direkt im Abfrageeditor ausführen können. Der größte Nachteil können die wiederkehrenden Kosten sein, es handelt sich nicht um ein Open-Source-Projekt, sondern um eine vollwertige Branchenlösung.

Kann das Data Scientists ersetzen?

Absolut nicht! AutoML ist großartig und kann dem Datenwissenschaftler helfen, einen bestimmten Lebenszyklus zu beschleunigen, aber Expertenrat ist immer erforderlich. Beispielsweise wird es viel Zeit in Anspruch nehmen, das richtige Modell für eine bestimmte Problemstellung von einer AutoML zu erhalten, die alle Algorithmen ausführt, als von einem Experten, der es mit bestimmten Algorithmen ausführt, die am besten zu dem Problem passen.

Data Scientists müssen die Ergebnisse dieser Art der Automatisierung validieren und den Unternehmen dann eine praktikable Lösung anbieten. Die Fachexperten werden diese Automatisierung sehr nützlich finden, da sie möglicherweise nicht viel Erfahrung darin haben, Erkenntnisse aus den Daten abzuleiten, aber diese Tools werden sie am besten anleiten.

Wenn Sie maschinelles Lernen beherrschen und lernen möchten, wie man einen Agenten trainiert, um Tic Tac Toe zu spielen, einen Chatbot zu trainieren usw., sehen Sie sich den PG-Diplomkurs für maschinelles Lernen und künstliche Intelligenz von upGrad an.

Führen Sie die KI-gesteuerte technologische Revolution an

ERWEITERTE ZERTIFIZIERUNG FÜR MACHINE LEARNING UND CLOUD VON IIT MADRAS & UPGRAD
Erfahren Sie mehr