2
我正在使用scikitlearn来训练SVM。我想知道可以经常停下训练来测试当前模型在我的验证集上的准确性。最终我想要生成一个验证准确度曲线。使用.Fit()一直训练SVM,但这只是在末尾给我一个精度数据点scikit在训练期间学习SVM停止和访问
我正在使用scikitlearn来训练SVM。我想知道可以经常停下训练来测试当前模型在我的验证集上的准确性。最终我想要生成一个验证准确度曲线。使用.Fit()一直训练SVM,但这只是在末尾给我一个精度数据点scikit在训练期间学习SVM停止和访问
有一个小技巧可以用于实际。
你可以玩SVC
分类器的参数max_iter
。例如,您可以获得具有不同迭代次数的多个分类器。
这里是你可以做什么:
import numpy as np
for i in np.arange(10, 1000, 100):
svm = SVC(max_iter=i) # and your other parameters
svm.fit(X, y)
... # here retrieve your metrics
这样做会告诉你如何分类进行不同层次的培训。
我实际上在我发布Stack Overflow之前试过这个,但我记得在某处读取.Fit()会删除它已经学过的权重。我希望.Fit()从每次通过循环的地方停下来。 –