【问题标题】:Support Vector Machine training using scikit-learn使用 scikit-learn 进行支持向量机训练
【发布时间】:2014-05-18 10:41:33
【问题描述】:

我正在尝试使用 scikit-learn 训练支持向量机。它正确地给出了trainingdata1 的输出。但它总是没有给出trainingdata2 的预期结果(trainingdata2 是我真正需要的)。怎么了?

from sklearn import svm

trainingdata1 = [[11.0, 2, 2, 1.235, 5.687457], [11.3, 2, 2,7.563, 10.107477]]
#trainingdata2 = [[1.70503083,7.531671404747827,1.4804916998015452,3.0767991352604387,6.5742], [11.3, 2, 2,7.563, 10.107477]]


clf = svm.OneClassSVM()
clf.fit(trainingdata1)

def alert(data):
    if clf.predict(data) < 0:
        print ('\n\nThere is something wrong')
    else:
        print('\nCorrect')

alert([11.3, 2, 2,7.563, 10.107477])
#alert([1.70503083,7.531671404747827,1.4804916998015452,3.0767991352604387,6.5742])

【问题讨论】:

    标签: python machine-learning scikit-learn


    【解决方案1】:

    好吧,我不得不承认我之前实际上没有听说过一类 SVM。据我了解,他们的目标是找出测试示例是否与之前提供的示例相似。现在,这两种情况之间的区别在于,在第一个工作示例中,两个向量非常相似,而在另一个示例中则有所不同(如果我们比较值的不同分量的数值)。难道这实际上是按预期运行的吗?请注意,由于泛化,SVM 训练并不一定意味着所有训练示例都被归类为标记为训练。

    【讨论】:

    • 谢谢 Nicolas78,虽然我的问题没有任何解释。你的观点完全正确。通过更多培训示例,我将尝试了解发生了什么。
    猜你喜欢
    • 1970-01-01
    • 2016-05-11
    • 2014-12-03
    • 2017-09-19
    • 2018-08-19
    • 2019-02-08
    • 2013-07-14
    • 2017-12-27
    • 2020-10-26
    相关资源
    最近更新 更多