
分类
|
101
>>>
sgd_clf.predict([some_digit])
array([5], dtype=uint8)
这次 Scikit-Learn 不必运行 OvR 或者 OvO 了,因为 SGD 分类器直接就可以将实例分为
多个类。调用 decision_function() 可以获得分类器将每个实例分类为每个类的概
率列表:让我们看一下 SGD 分类器分配到的每个类:
>>>
sgd_clf.decision_function([some_digit])
array([[-15955.22628, -38080.96296, -13326.66695, 573.52692, -17680.68466,
2412.53175, -25526.86498, -12290.15705, -7946.05205, -10631.35889]])
你可以看到分类器对其预测相当有信心:几乎所有分数基本上都是负的,而第 5 类的得
分是 2412.5。该模型有一点疑问是关于第 3 类,得分为 573.5。现在,你当然要评估这
个分类器。与往常一样,可以使用交叉验证。使用 cross_val_score() 函数来评估
SGDClassifier 的准确性:
>>>
cross_val_score(sgd_clf, X_train, y_train, cv=3, scoring="accuracy")
array([0.8489802 , 0.87129356, 0.86988048])
在所有的测试折叠上都超过了 ...