Sklearn TypeError:init()获得了意外的关键字参数“ tol”

时间:2018-10-26 10:46:46

标签: python scikit-learn

我安装了sklearn版本0.18.1。我收到此错误消息。最近重新安装了蟒蛇。我正在尝试运行此

   sgd = SGDClassifier(tol=1e3,max_iter=100,penalty='elasticnet',class_weight='balanced',shuffle=True)
   pipeline = make_pipeline(cv, tfidf, sgd)
  

TypeError: init ()获得了意外的关键字参数“ tol”

2 个答案:

答案 0 :(得分:1)

因为它是在版本0.19中引入的。这是他们在直接从sklearn中摘录的documentation中提到它的地方-

  

tol:浮点型或无,可选停止条件。如果不是   没有,迭代将在(loss> previous_loss-tol)时停止。   默认为无。默认值为0.21到1e-3。

     

0.19版中的新功能。

编辑:
This是您的sklearn版本的文档。

答案 1 :(得分:1)

这是预料之中的,正如sgdclassifier所说:

  

tol:浮点型或无,可选停止条件。如果不是   没有,迭代将在(loss> previous_loss-tol)时停止。   默认为无。默认值为0.21到1e-3。

     

0.19版中的新功能。

因此,如果您使用0.18.1,则它可能无法识别它。