簡體   English   中英

ConvergenceWarning: lbfgs 未能收斂 (status=1)

[英]ConvergenceWarning: lbfgs failed to converge (status=1)

我一直在閱讀 O'Reilly 的“Python 機器學習簡介”。

運行此塊時,我收到了收斂警告。

from sklearn.datasets import load_breast_cancer
cancer = load_breast_cancer()
X_train, X_test, y_train, y_test = train_test_split(
    cancer.data, cancer.target, stratify=cancer.target, random_state=42)
logreg = LogisticRegression().fit(X_train, y_train)
print("Training set score: {:.3f}".format(logreg.score(X_train, y_train)))
print("Test set score: {:.3f}".format(logreg.score(X_test, y_test)))

我已經看到了幾種可能的解決方法,但是由於我實際上只是在總體上學習這一點,因此不確定需要什么。

原作者筆記本

這意味着您正在使用的數據不處於與給定算法收斂的良好狀態。 當您使用邏輯回歸時,sklearn 的默認max_iter值為 100。

您可以嘗試使用StandartScaler縮放您的數據。 這基本上是為有助於收斂的 ML 算法准備好數據。

或者您可以更改max_iter以查看它是否會收斂。

例如:

logreg = LogisticRegression(max_iter = 1000).fit(X_train, y_train)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM