【问题标题】:SVM: Scoring test dataSVM:对测试数据进行评分
【发布时间】:2018-09-05 20:53:20
【问题描述】:

我正在使用scikit-learn 并想在测试集上评估SVMpredicition

from sklearn.svm import SVC
import numpy


dataset = numpy.loadtxt("training.txt", delimiter="\t")
X = dataset[:,0:15]
y = dataset[:,15:16]
y = y.ravel()

test_dataset_1 = numpy.loadtxt("test_14-15.txt", delimiter="\t")
X_test_1 = test_dataset_1[:,0:15]
y_test_1 = dataset[:,15:16]
y_test_1 = y_test_1.ravel()

model = SVC(kernel='linear', C=75) 

model.fit(X, y)

score_1 = model.score(X_test_1, y_test_1)

我得到了 ValueError:

发现样本数量不一致的输入变量:[1682, 192]

我的训练集有 1682 个样本,我的测试集有 192 个。但我只是在 score-method 中使用测试集。为什么会出现此错误?

【问题讨论】:

    标签: python machine-learning scikit-learn svm


    【解决方案1】:

    改变这个:

    y_test_1 = dataset[:,15:16]
    

    到这里:

    y_test_1 = test_dataset_1[:,15:16]
    

    您正在再次读取y_test_1 中的原始火车数据,因此它与X_test_1 中的样本数不匹配。

    【讨论】:

      猜你喜欢
      • 2014-06-03
      • 2016-05-29
      • 2015-06-01
      • 2018-11-29
      • 2017-07-20
      • 1970-01-01
      • 1970-01-01
      • 2016-03-13
      • 1970-01-01
      相关资源
      最近更新 更多