我正在使用多维 SVM 分类器(SVM.NET,libSVM 的包装器)对一组特征进行分类。
给定一个 SVM 模型,是否可以合并新的训练数据而无需重新计算所有先前的数据?我想另一种说法是:SVM 是可变的吗?
我正在使用多维 SVM 分类器(SVM.NET,libSVM 的包装器)对一组特征进行分类。
给定一个 SVM 模型,是否可以合并新的训练数据而无需重新计算所有先前的数据?我想另一种说法是:SVM 是可变的吗?
实际上,它通常被称为增量学习。这个问题之前出现过,在这里得到了很好的回答:支持向量机 (SVM) 的一些实现细节。
简而言之,这可能但并不容易,您必须更改正在使用的库或自己实现训练算法。
我找到了两种可能的解决方案,即 SVMHeavy和LaSVM,它们支持增量训练。但我没有使用过它们,也不知道它们的任何信息。
在线和增量虽然相似但略有不同。在网上,它通常可以配置单遍(epoch=1)或epoch数。其中,增量意味着您已经有一个模型;不管它是如何构建的,但是模型可以被新的例子改变。此外,通常需要在线和增量相结合。
以下是关于在线和/或增量 SVM 的一些工具列表:https ://stats.stackexchange.com/questions/30834/is-it-possible-to-append-training-data-to-existing- svm-models/51989#51989