Heim > Technologie-Peripheriegeräte > KI > Verwenden Sie Scikit-Learn, um Vorhersagemethoden für maschinelles Lernen schnell zu beherrschen

Verwenden Sie Scikit-Learn, um Vorhersagemethoden für maschinelles Lernen schnell zu beherrschen

王林
Freigeben: 2023-05-27 14:26:03
nach vorne
1463 Leute haben es durchsucht

In diesem Artikel werden wir die Unterschiede von Vorhersagefunktionen und ihre Verwendung diskutieren.

Beim maschinellen Lernen werden die Methoden „predict“ und „predict_proba“, „predict_log_proba“ und „decision_function“ verwendet, um Vorhersagen auf der Grundlage des trainierten Modells zu treffen.

Vorhersagemethode

Verwenden Sie die Vorhersagemethode, um binäre Klassifizierung oder multivariate Klassifizierung vorherzusagen und Vorhersagebezeichnungen auszugeben. Wenn Sie beispielsweise ein logistisches Regressionsmodell trainiert haben, um vorherzusagen, ob ein Kunde ein Produkt kaufen wird, können Sie die Vorhersagemethode verwenden, um vorherzusagen, ob ein neuer Kunde das Produkt kaufen wird.

Wir werden den Brustkrebsdatensatz von scikit-learn verwenden. Dieser Datensatz enthält Tumorbeobachtungen und entsprechende Kennzeichnungen, ob der Tumor bösartig oder gutartig ist.

import numpy as npfrom sklearn.svm import SVCfrom sklearn.preprocessing import StandardScalerfrom sklearn.pipeline import make_pipelineimport matplotlib.pyplot as pltfrom sklearn.datasets import load_breast_cancer# 加载数据集dataset = load_breast_cancer(as_frame=True)# 创建特征和目标X = dataset['data']y = dataset['target']# 将数据集分割成训练集和测试集from sklearn.model_selection import train_test_splitX_train, X_test, y_train, y_test = train_test_split(X, y , test_size=0.25, random_state=0)# 我们创建一个简单的管道来规范数据并使用`SVC`分类器训练模型svc_clf = make_pipeline(StandardScaler(),SVC(max_iter=1000, probability=True))svc_clf.fit(X_train, y_train)
Nach dem Login kopieren
# 我们正在预测X_test的第一个条目print(svc_clf.predict(X_test[:1]))
Nach dem Login kopieren
# 预测X_test的第一个条目属于哪一类[0]
Nach dem Login kopieren

Predict_proba-Methode

Verwenden Sie die Predict_proba-Funktion, um eine Wahrscheinlichkeitsvorhersage für jede Kategorie zu erstellen und die Wahrscheinlichkeitsschätzung jeder möglichen Kategoriebezeichnung zurückzugeben. Bei binären oder multivariaten Klassifizierungsproblemen wird dieser Ansatz häufig verwendet, um die Wahrscheinlichkeit jedes möglichen Ergebnisses zu bestimmen. Wenn Sie beispielsweise ein Modell trainiert haben, um Bilder von Tieren in Katzen, Hunde und Pferde zu klassifizieren, können Sie die Methode Predict_Proba verwenden, um Wahrscheinlichkeitsschätzungen für jede Kategoriebezeichnung zu erhalten.

print(svc_clf.predict_proba(X_test[:1]))
Nach dem Login kopieren
[[0.99848307 0.00151693]]
Nach dem Login kopieren

predict_log_probamethod

Die Methode Predict_log_proba ähnelt Predict_proba, gibt jedoch den Logarithmus der Wahrscheinlichkeitsschätzung anstelle der Rohwahrscheinlichkeit zurück. Dies ist sehr nützlich für den Umgang mit sehr kleinen oder sehr großen Wahrscheinlichkeitswerten, da dadurch numerische Unterlauf- oder Überlaufprobleme vermieden werden können.

print(svc_clf.predict_log_proba(X_test[:1]))
Nach dem Login kopieren
rrree

Entscheidungsfunktionsmethode

Lineare binäre Klassifizierungsmodelle können die Entscheidungsfunktionsmethode nutzen. Für jeden Eingabedatenpunkt wird eine Bewertung generiert, aus der die entsprechende Klassenbezeichnung abgeleitet werden kann. Schwellenwerte, die Datenpunkte als positiv oder negativ klassifizieren, können basierend auf Anwendungs- oder Domänenkenntnissen festgelegt werden.

[[-1.51808474e-03 -6.49106473e+00]]
Nach dem Login kopieren
print(svc_clf.decision_function(X_test[:1]))
Nach dem Login kopieren

Zusammenfassung

  • Verwenden Sie „predict“ für binäre oder multivariate Klassifizierungsprobleme, wenn Sie die vorhergesagte Klassenbezeichnung der Eingabedaten erhalten möchten.
  • Verwenden Sie Predict_Proba für binäre oder multivariate Klassifizierungsprobleme, wenn Sie eine Wahrscheinlichkeitsschätzung für jede mögliche Klassenbezeichnung erhalten möchten.
  • Verwenden Sie Predict_log_proba, wenn Sie mit sehr kleinen oder sehr großen Wahrscheinlichkeitswerten umgehen müssen oder wenn Sie numerische Unterlauf- oder Überlaufprobleme vermeiden möchten.
  • Verwenden Sie die Entscheidungsfunktion, um binäre Klassifizierungsprobleme mit linearen Modellen zu behandeln, wenn Sie die Punktzahl für jeden Eingabedatenpunkt erhalten möchten.

Hinweis: Die Vorhersagemethoden einiger Klassifikatoren sind möglicherweise unvollständig oder erfordern zusätzliche Parameter, um auf die Funktion zuzugreifen. Beispiel: SVC muss den Wahrscheinlichkeitsparameter auf True setzen, um die Wahrscheinlichkeitsvorhersage zu verwenden.

Das obige ist der detaillierte Inhalt vonVerwenden Sie Scikit-Learn, um Vorhersagemethoden für maschinelles Lernen schnell zu beherrschen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:51cto.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