【发布时间】:2013-03-09 17:36:28
【问题描述】:
我有一个问题我解决了,但我想知道我是否正确。
在 scikit 的关于 SVM SVC 的学习文档中,有一个通过在类中使用权重来管理不平衡数据的示例。
他们举了一个例子,在 svm.SVC() 中通知类权重
wclf = svm.SVC(kernel='linear', class_weight={1: 10})
但如果在源代码上重现此命令,我会收到以下错误:
wclf = svm.SVC(kernel='linear', class_weight={1: 10})
TypeError: __init__() got an unexpected keyword argument 'class_weight'
但是如果将 classes_weight 放在 fit() 函数上,问题就解决了:
wclf.fit(X, y, class_weight={1: 10})
我说的对吗?有人遇到过这个问题吗?
【问题讨论】:
-
您使用的是哪个版本的 sklearn?
-
我的版本是0.10.0-1build1
-
我建议尝试当前版本 0.13.1。您在文档中引用的示例可能基于较新的版本,并且函数签名可能已更改。
标签: python svm scikit-learn svc