python中predict函数和score函数的区别_sklearn库中.score()和.predict之间的区别?

我使用sklearn库实例化了一个SVC对象,代码如下:

clf = svm.SVC(kernel='linear', C=1, cache_size=1000, max_iter = -1, verbose = True)

然后我使用以下方法为数据拟合:

model = clf.fit(X_train, y_train)

其中X_train是(301,60)并且y_train是(301,)ndarray(y_train由类标签“1”,“2”和“3”组成) .

现在,在我偶然发现.score()方法之前,为了确定我的模型在训练集上的准确性,我使用了以下内容:

prediction = np.divide((y_train == model.predict(X_train)).sum(), y_train.size, dtype = float)

结果约为62% .

但是,当使用model.score(X_train,y_train)方法时,我得到大约83%的结果 .

因此,我想知道是否有人可以向我解释为什么会出现这种情况,因为据我所知,他们应该返回相同的结果?

附录:

y_true的前10个值是:

2,3,1,3,2,3,2,2,3,1 ......

而对于y_pred(使用model.predict(X_train)时),它们是:

2,3,3,2,2,3,2,3,3,3 ......

你可能感兴趣的:(python中predict函数和score函数的区别_sklearn库中.score()和.predict之间的区别?)