Ich habe versucht, die neulich veröffentlichte Bibliothek PyCaret für maschinelles Lernen zu verwenden. Die Analyse von Datenmerkmalen und der Leistungsvergleich mit mehreren Modellen werden automatisiert, und ich denke, dass die Arbeitszeit von Datenwissenschaftlern bisher erheblich reduziert wird.
Dieses Mal werde ich das Titanic-Überlebensvorhersageproblem auf PyCaret anwenden, das Vorhersageergebnis an Kaggle senden und das Ergebnis sehen.
** Dies ist ein Folgeartikel zum vorherigen Artikel Ich habe versucht, die Weinqualität mit PyCaret zu klassifizieren. ** **.
Führen Sie den folgenden Code aus, um ihn zu installieren. Ich verwende Anaconda, habe jedoch eine virtuelle Umgebung für PyCaret gestartet und installiert. In einer virtuellen Umgebung, die von einer vorhandenen Conda verwaltet wird, kann ein Fehler auftreten. (Wahrscheinlich aufgrund der Kollision zwischen Pip und Conda)
pip install pycaret
Train.csv und test.csv können auf der Titanic-Website von Kaggle heruntergeladen werden. https://www.kaggle.com/c/titanic/data
import pandas as pd
train_data = pd.read_csv("train.csv")
train_data.head()
Ergebnisse
Schauen wir uns den Inhalt der Daten mit Pandas 'profile_report () an.
import pandas_profiling
train_data.profile_report()
Ergebnisse
Verwenden Sie setup (), um die Daten vorzuverarbeiten. Geben Sie zu diesem Zeitpunkt die Zielvariable als Argument überlebt an.
from pycaret.classification import *
exp_titanic = setup(data = train_data, target = 'Survived')
Ergebnis (bis zu 10 Artikel)
Verwenden Sie compare_models (), um den Datensatz mithilfe mehrerer Klassifizierungsmodelle zu analysieren und die Ergebnisse in einer Tabelle zusammenzufassen. Dies ist eine sehr nützliche Funktion, wenn Sie überlegen, welches Klassifizierungsmodell verwendet werden soll.
Es gibt mehr als 10 von Pycaret bereitgestellte Klassifizierungsmodelle, die unter den folgenden Links bestätigt werden können.
https://pycaret.org/classification/
compare_models()
Die Genauigkeit des catBoost-Klassifikators betrug 83,63%. Dieses Mal werden wir über die Leistungsbewertung von PyCaret mit dem 9. Platz Random Forest Classifier sprechen.
Ergebnis
Wählen Sie ein Klassifizierungsmodell aus und modellieren Sie es. Verwenden Sie create_model (). Dieses Mal verwenden wir das Random Forest Classifier-Modell.
dt = create_model('rf', round=2)
Ergebnis
Sie können das Modell auch mit tune_model optimieren.
tuned_rf = tune_model('rf',round=2)
Ergebnis
Die durchschnittliche Genauigkeit vor dem Einstellen betrug 0,80 und die durchschnittliche Genauigkeit nach dem Einstellen betrug 0,81.
Visualisieren Sie die Analyseergebnisse mit plot_model.
Zeichnen Sie zunächst die AUC-Kurve.
plot_model(tuned_rf, plot = 'auc')
Ergebnis
!
Zeichnen Sie dann die Verwirrungsmatrix.
plot_model(tuned_lightgbm, plot = 'confusion_matrix')
Ergebnis
!
Mit evalu_model () können mehrere Auswertungen gleichzeitig durchgeführt werden.
evaluate_model(tuned_rf)
Wenn Sie die Taste im gelben Rahmen drücken, wird jedes Bewertungsergebnis angezeigt.
Ergebnis
!
Machen Sie nach dem Finalisieren des Modells mit finalize_model () eine Vorhersage mit Predict_model (). Zum Zeitpunkt der Vorhersage werden Testdaten (hier test.csv) verwendet.
final_rf = finalize_model(tuned_rf)
data_unseen = pd.read_csv('test.csv')
result = predict_model(final_rf, data = data_unseen)
Die Spalte Beschriftung repräsentiert das Ergebnis der Vorhersage.
Ergebnis
!
Ich habe dieses Ergebnis auf Kaggle hochgeladen. Die Punktzahl betrug 0,76076.
1.PyCaret Home Page , http://www.pycaret.org/ 2.PyCaret Classification, https://pycaret.org/classification/ 3. Ich habe versucht, PyCaret mit der schnellsten Geschwindigkeit zu verwenden: https://qiita.com/s_fukuzawa/items/5dd40a008dac76595eea 4. Ich habe versucht, die Qualität des Weins mit PyCaret zu klassifizieren. Https://qiita.com/kotai2003/items/c8fa7e55230d0fa0cc8e
Recommended Posts