支持向量机用于使用scikit-py数字数据集进行图像识别

时间:2016-01-06 07:35:11

标签: python svm

上下文

我想使用Wakari关注Python中机器学习的this教程。

在视频播放后12分钟,我收到了一条错误消息:

import matplotlib.pyplot as plt


from sklearn import datasets
from sklearn import svm

digits = datasets.load_digits()
clf=svm.SVC(gamma-0.001, c-100)

print(len(digits.data))

x, y = digits.data[:1], digits.target[:-1]
clf.fit(x,y)

print('Prediction:',clf.predict(digits.data[-1]))
plt.imshow(digits.images[-1], cmap=plt.cm.gray_r, interpolation="nearest")
plt.show()

错误文字

    TypeError                                 Traceback (most recent call last)
<ipython-input-1-8cd67aede6c5> in <module>()
      6 
      7 digits = datasets.load_digits()
----> 8 clf=svm.SVC(gamma-0.001, c-100)
      9 
     10 print(len(digits.data))

TypeError: unsupported operand type(s) for -: 'builtin_function_or_method' and 'float'

问题

  • 为什么我会收到这个错误?
  • 我该如何解决它?

由于

1 个答案:

答案 0 :(得分:1)

更改

clf=svm.SVC(gamma-0.001, c-100)

clf=svm.SVC(gamma=0.001, C=100)

您收到此错误,因为在这种情况下gamma似乎是一个函数,您试图从中减去0.001,这显然是不可能的。我假设你想为你的SVC提供参数,它有参数gammaC