使用 scikit-py 数字数据集进行图像识别的支持向量机
support vector machine for the image recognition with the scikit-py digit data set
上下文
我想在 Python 中使用 Wakari 学习 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'
问题
- 为什么我会收到那个错误?
- 我该如何绕过它?
谢谢
改变
clf=svm.SVC(gamma-0.001, c-100)
到
clf=svm.SVC(gamma=0.001, C=100)
您收到此错误是因为在这种情况下 gamma
似乎是一个函数,您正试图从中减去 0.001,这显然是不可能的。我假设你想为你的 SVC 提供参数,它有两个参数 gamma
和 C
上下文
我想在 Python 中使用 Wakari 学习 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'
问题
- 为什么我会收到那个错误?
- 我该如何绕过它?
谢谢
改变
clf=svm.SVC(gamma-0.001, c-100)
到
clf=svm.SVC(gamma=0.001, C=100)
您收到此错误是因为在这种情况下 gamma
似乎是一个函数,您正试图从中减去 0.001,这显然是不可能的。我假设你想为你的 SVC 提供参数,它有两个参数 gamma
和 C