[PYTHON] Einfaches maschinelles Lernen mit AutoAI (Teil 4) Jupyter Notebook

Einführung

Mit AutoAI, das wir zuvor eingeführt haben, wurde die Funktion zum Exportieren des erstellten Modells in Jupyter Notebook endlich freigegeben. In diesem Artikel werden wir diese Funktion als 4. Teil der Reihe "Easy Machine Learning with AutoAI" ausprobieren.

Informationen zu früheren Artikeln finden Sie unter den folgenden Links.

Einfaches maschinelles Lernen mit AutoAI (1) -Vorbereitung Einfaches maschinelles Lernen mit AutoAI (Teil 2) Modellbau Einfaches maschinelles Lernen mit AutoAI-Webdiensten (Teil 3)

Annahme

Im folgenden Verfahren wird davon ausgegangen, dass Sie in der obigen Serie "Einfaches maschinelles Lernen mit AutoAI (Teil 2) -Modellkonstruktion" abgeschlossen haben. (Teil 3) ist nicht obligatorisch.

Notizbuch exportieren

Wenn der Modellbau in (Teil 2) abgeschlossen ist, wird der in der folgenden Abbildung gezeigte Bildschirm angezeigt. (Der Bildschirm hat sich aufgrund des Versions-Upgrades von zuvor geändert.)

スクリーンショット 2020-04-03 20.33.58.png

Scrollen Sie auf dem Bildschirm nach unten, um eine Liste der erstellten Modelle anzuzeigen (siehe folgende Abbildung).

スクリーンショット 2020-04-03 20.34.11.png

Wenn Sie hier den Mauszeiger auf die rechte Seite des zu exportierenden Modells bewegen (normalerweise oben), wird das Menü "** Speichern unter **" angezeigt. Klicken Sie also darauf und es sieht wie in der folgenden Abbildung aus. Ich werde.

スクリーンショット 2020-04-03 20.34.21.png

Wählen Sie hier unten "Notebook". Sie sollten einen Bildschirm wie den folgenden sehen.

スクリーンショット 2020-04-03 20.39.57.png

Klicken Sie unten rechts auf dem Bildschirm auf "** Erstellen **".

Warten Sie eine Weile, und wenn der folgende Bildschirm angezeigt wird, haben Sie erfolgreich exportiert. (Hinweis: Ab dem 03.04.2020 scheint es immer noch instabil zu sein und kann unterwegs fehlschlagen. Versuchen Sie es in diesem Fall erneut.)

スクリーンショット 2020-04-03 20.15.42.png

Zu diesem Zeitpunkt kann das Notebook als Code für das Jupyter-Notebook in Watson Studio verwendet werden. Das ist jedoch nicht sehr interessant, daher möchte ich es extern ausführen (Jupyter Notebook auf Mac PC). Klicken Sie dazu auf das ** Download-Symbol ** im roten Rahmen in der folgenden Abbildung. Der Download sollte automatisch starten.

スクリーンショット 2020-04-03 20.46.14.png

Als Referenz wird das Beispiel des exportierten Notizbuchs unten hochgeladen. Notizbuch-Link

Jupyter Notebook Vorbereitung auf die Umgebungsseite

Bereiten Sie als Nächstes die Umgebung auf der PC-Seite vor. In meinem Fall habe ich vor einiger Zeit Anacoda (4.8.1) auf meinem Mac-PC installiert und verwendet. Ich habe es in anderen Umgebungen nicht bestätigt, aber ich denke, dass es fast genauso funktioniert. Das AutoAI-Modell basiert auf der Annahme, dass es zur Laufzeit eine Bibliothek für AutoAI gibt. Der Punkt ist jedoch, dass ** diese Bibliothek im Internet für die Öffentlichkeit zugänglich ist und mit dem Befehl pip normal installiert werden kann **. Führen Sie insbesondere den folgenden Befehl aus.

$ pip install autoai-libs -U

(Diese Bibliothek scheint täglich aktualisiert zu werden, und selbst wenn sie bereits installiert ist, ist es besser, sie zu aktualisieren, wenn Sie ein Notebook verwenden. Ich habe mich daran gehalten.)

Außerdem in der Standard-Anaconda-Umgebung

$ pip install lightgbm
$ pip install xgboost

Ich glaube, ich habe es auch gebraucht. (Erinnerung ist etwas vage) Möglicherweise fehlen zur Laufzeit andere Bibliotheken, aber das Wichtigste ist, dass ** nur die im Internet veröffentlichten Bibliotheken alle Bibliotheken abdecken können, die zum Erstellen des AutoAI-Modells erforderlich sind **.

Ausführen des Modells in Jupyter Notebook

Lassen Sie uns nun das exportierte Modell in der Jupyter-Umgebung auf dem PC ausführen.

Wenn ich mir nun den Code in Notebook ansehe und die oben genannten drei Bibliotheken nicht in der ersten Zelle sind, werden sie automatisch installiert. Alternativ sind die obigen Schritte möglicherweise nicht erforderlich.

Notebook-Voränderung

Wenn Sie es auf Ihrem lokalen Jupyter ausführen möchten, ändern Sie bitte die folgenden zwei Teile des automatisch generierten Notizbuchs.

COS-Zugangsteil

Die folgenden Zellen dienen zum Herunterladen von CSV-Dateien, die in COS (Cloud Object Storage) gespeichert sind, und sind für die lokale Verwendung nicht erforderlich. Ich bin nicht vorsichtig, also werde ich es löschen.

スクリーンショット 2020-04-04 10.17.28.png

Lokale Dateidefinition hinzufügen

Stellen Sie die lernende CSV-Datei in der Variablen "lesbar" in der Zelle unten ein. Kopieren Sie die CSV-Datei in dasselbe Verzeichnis wie Notebook.

スクリーンショット 2020-04-04 10.19.41.png

Lauf

Nachdem Sie die beiden oben genannten Vorbereitungen abgeschlossen haben, sollten Sie in der Lage sein, das Modell zu erstellen und zu bewerten, indem Sie die Zellen in der Reihenfolge von oben ausführen. Ich habe ein Beispielbild des Ergebnisses angehängt.

スクリーンショット 2020-04-04 10.24.28.png

Bonus

Testausführung mit Verifizierungsdaten

Kopieren Sie den folgenden Code in die untere Zelle des obigen Notebooks. Mit den gleichen 40.000 Verifizierungsdaten wie in (3) können Sie das Modell aufrufen und das Ergebnis der Genauigkeitsbewertung überprüfen. Beachten Sie, dass die Modelleingabedaten (Pipeline) das vorverarbeitete Ergebnis verwenden sollten.

Das Endergebnisbeispiel ist unten beigefügt.

スクリーンショット 2020-04-04 11.08.55.png

Der folgende Code wurde ebenfalls auf github hochgeladen. Zusatzcode für Notizbücher

#Genauigkeitsüberprüfung mit 40.000 im Voraus vorbereiteten Überprüfungsdaten

%matplotlib inline
#Einführung der erforderlichen Bibliotheken
!pip install japanize-matplotlib | tail -n 1

#Import der benötigten Bibliotheken
import matplotlib.pyplot as plt

#Japanische Lokalisierung
import japanize_matplotlib #Japanische Lokalisierungsmatplotlib

#In Datenrahmen laden
csv_url = 'https://raw.githubusercontent.com/makaishi2/sample-data/master/data/bank-test.csv'
df_bank_test = pd.read_csv(csv_url)

#Überprüfen Sie das Ergebnis
print('')
print('CSV-Daten zur Überprüfung')
display(df_bank_test.head())

#Extraktion der richtigen Antwortdaten korrekt
correct = df_bank_test.y.values

#Erstellen eines Eingabedatenarrays

df_sub = df_bank_test.copy()

#Zielvariablenspalte löschen
df_sub = df_sub.drop('y', axis=1)

#Überprüfen Sie das Ergebnis
print('')
print('Modelleingabedaten')
display(df_sub.head())

#Prognoseimplementierung
X_prep = preprocessing_pipeline.transform(df_sub.values)
predict = pipeline.predict(X_prep)

#Überprüfen Sie das Ergebnis
print('')
print('Vorhersageergebnis')
display(predict[:10])

#Berechnung der Verwirrungsmatrix
from sklearn.metrics import confusion_matrix
matrix = confusion_matrix(correct, predict)
df_matrix = pd.DataFrame(matrix, columns=['no', 'yes'], index=['no', 'yes'])

###Verwirrte Matrixanzeige
print()
print('Verwirrte Matrix')
display(df_matrix)

#Berechnung der Anzahl von Ja und Nein in den richtigen Antwortdaten
y_count = np.count_nonzero(correct == 'yes')
n_count = np.count_nonzero(correct == 'no')

#Anzahl von Ja und Nein in korrekten Antwortdaten unter denen, deren vorhergesagter Wert Ja war
yy_count = df_matrix.yes.yes
yn_count = df_matrix.yes.no

#Vergleich der Schlusskurse mit und ohne Modell
print()
plt.subplot(1, 2, 1)
label = ['yes', 'no']
colors = ["lightpink", "lightblue"]
x = np.array([y_count, n_count])
plt.pie(x, labels=label, colors=colors,
       autopct="%1.1f%%", pctdistance=0.7)
plt.title('Wenn das Modell nicht vorgestellt wird', fontsize=14)
plt.axis('equal')
 
plt.subplot(1, 2, 2)
label = ['yes', 'no']
colors = ["lightpink", "lightblue"]
x = np.array([yy_count, yn_count])
plt.pie(x, labels=label, colors=colors,
       autopct="%1.1f%%", pctdistance=0.7)
plt.title('Nach der Modelleinführung', fontsize=14)
plt.axis('equal')

plt.show()

Recommended Posts

Einfaches maschinelles Lernen mit AutoAI (Teil 4) Jupyter Notebook
Maschinelles Lernen mit Jupyter Notebook in einer OCI Always Free-Umgebung (17.12.2019)
Vorhersage des Strombedarfs durch maschinelles Lernen Teil 2
[Cloud102] # 1 Beginnen wir mit Python (Teil 2 Jupyter Notebook Construction AWS Edition)
Maschinelles Lernen beginnend mit Python Personal Memorandum Part2
Maschinelles Lernen beginnend mit Python Personal Memorandum Part1
Versuchen Sie es mit dem Jupyter Notebook von Azure Machine Learning
[Cloud102] # 1 Beginnen wir mit Python (Teil 3 Jupyter Notebook-Konstruktion GCP Cloud Shell Edition)
Einfaches maschinelles Lernen mit Scikit-Learn und Flask ✕ Web App
So erstellen Sie schnell eine maschinelle Lernumgebung mit Jupyter Notebook mit UbuntuServer 16.04 LTS
Maschinelles Lernen mit Pokemon gelernt
Verwenden von Graphviz mit Jupyter Notebook
Verwenden Sie pip mit Jupyter Notebook
Maschinelles Lernen mit Python! Vorbereitung
Verwenden Sie Cython mit Jupyter Notebook
Spielen Sie mit Jupyter Notebook (IPython Notebook)
Maschinelles Lernen Minesweeper mit PyTorch
Beginnend mit maschinellem Python-Lernen
Versuchen Sie es mit Kaggle leicht maschinell
[Maschinelles Lernen] Starten Sie Spark mit iPython Notebook und probieren Sie MLlib aus
Maschinelles Lernen mit Nogisaka 46 und Keyakizaka 46 Teil 1 Einführung
Feature Engineering für maschinelles Lernen ab Teil 3 Google Colaboratory-Scale
So erstellen Sie schnell eine maschinelle Lernumgebung mit Jupyter Notebook mit UbuntuServer 16.04 LTS mit anaconda
Ermöglichen Sie externe Verbindungen mit dem Jupiter-Notebook
Formatieren mit autopep8 auf Jupyter Notebook
Empfehlung von Manga durch maschinelles Lernen Teil 1 Lassen Sie uns zunächst teilen, ohne über irgendetwas nachzudenken
[PyTorch Tutorial ⑤] PyTorch anhand von Beispielen lernen (Teil 2)
Visualisieren Sie den Entscheidungsbaum mit einem Jupyter-Notizbuch
Machen Sie einen Sound mit Jupyter Notebook
Ich habe maschinelles Lernen mit liblinear versucht
Maschinelles Lernen mit Python (1) Gesamtklassifizierung
Versuchen Sie es mit TensorFlow Part 2
Einfache Jupyter-Umgebungskonstruktion mit Cloud9
SVM versucht maschinelles Lernen mit Scikit-Learn
Markdown mit Jupyter-Notebook verwenden (mit Verknüpfung)
Fügen Sie mit Jupyter Notebook weitere Kernel hinzu
Bequeme Analyse mit Pandas + Jupyter Notebook
Einfach zu bedienendes Jupyter-Notebook (Python3.5)
[PyTorch Tutorial ⑤] PyTorch anhand von Beispielen lernen (Teil 1)
Quanteninspiriertes maschinelles Lernen mit Tensornetzwerken
Erstellen Sie mit GCP + Docker + Jupyter Lab eine beliebige Umgebung für maschinelles Lernen
Lernen Sie maschinelles Lernen jederzeit und überall in der bedarfsgesteuerten Jupyter Notebook-Umgebung
Beginnen Sie mit dem maschinellen Lernen mit SageMaker
Schnelle Schritte zum Erstellen einer maschinellen Lernumgebung mit Jupyter Notebook unter macOS Sierra mit anaconda
"Scraping & maschinelles Lernen mit Python" Lernnotiz
REST-API eines mit Python erstellten Modells mit Watson Machine Learning (CP4D-Edition)
Verwenden Sie nbextensions mit Anacondas Jupyter-Notizbuch
Verstärken Sie Bilder für maschinelles Lernen mit Python
Verwenden von Apache Spark mit Jupyter Notebook (IPython Notebook)
Unausgeglichenes Datenlernen mit maschinellem Lernen k-NN
Maschinelles Lernen mit Python (2) Einfache Regressionsanalyse
Ich möchte einen Blog mit Jupyter Notebook schreiben
Verwenden Sie Jupyter Lab und Jupyter Notebook mit EC2
Probieren Sie SVM mit scikit-learn auf Jupyter Notebook aus
Eine Geschichte über maschinelles Lernen mit Kyasuket
"Python Machine Learning Programming" - Zusammenfassung (Jupyter)
[Shakyo] Begegnung mit Python zum maschinellen Lernen
Verwendung des Jupyter-Notebooks mit ABCI
Verknüpfung von Python und JavaScript mit dem Jupiter-Notizbuch
Maschinelles Lernen mit Pytorch in Google Colab
[Jupyter Notebook Memo] Kanji mit Matplotlib anzeigen