多项式核的sklearn和SVMs

2024-05-08 03:23:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用sklearn for python来使用SVMs执行交叉验证。我试着用线性和径向基函数核,结果都很好。当我用多项式核运行它时,尽管它永远不会结束。它已经运行了8个小时,但仍然没有任何结果。输入X的维数是(1422,2)

def SupportVectorMachines(X,y):
     clf = svm.SVC(C=1.0, kernel='poly', degree=3, gamma=2)
     classifier = clf.fit(X,y)
     score = cross_validation.cross_val_score(classifier, X,y, cv=10, n_jobs=1).mean()
     return score

你知道为什么吗?

谢谢


Tags: 函数fordef线性sklearn交叉score小时
1条回答
网友
1楼 · 发布于 2024-05-08 03:23:12

尝试降低C(尝试C=0.001,0.01,0.1)。C是惩罚参数,当C变大时,模型试图减少惩罚,因此需要更多的时间来训练。

或者,尝试减少交叉验证折叠的数量。由于数据集仅包含1422个点,请尝试使用cv=5。这将需要较少的运行时间。

相关问题 更多 >