用新数据更新 SVM 分类器
Posted
技术标签:
【中文标题】用新数据更新 SVM 分类器【英文标题】:Update SVM classifier with new data 【发布时间】:2014-03-22 02:49:31 【问题描述】:我使用 Python 训练了一个 SVM 分类器
clf = sklearn.svm.NuSVC(nu=0.05, probability=True, kernel='rbf')
clf.fit(points, classes)
这非常适合预测。 现在我想更新分类器参数。 很少有点改变分类(从正数到零),并且添加了一些。少数意味着 10000 中的 50 或更多。
我认为提示 SVM 分类器从之前的参数开始是明智的,这应该非常接近最佳解决方案。我有一个问题,有时分类器随机很差(我想拟合失败)。 在 scikit-learn 或 libsvm 中有没有办法做到这一点?
【问题讨论】:
这似乎相关但没有解决方案:stats.stackexchange.com/questions/30834/… 【参考方案1】:NuSVC
不提供增量/在线学习。要在 scikit-learn 中做到这一点,您需要 SGDClassifier
。这适合线性模型,但您可以使用 kernel_approximations
模块获得 RBF 内核的近似值(另请参阅 its author's blog)。
如果您想要真正的在线内核学习者,请查看LASVM。
【讨论】:
以上是关于用新数据更新 SVM 分类器的主要内容,如果未能解决你的问题,请参考以下文章