一个接一个地训练scikit svm(在线或随机训练)

Abh*_*pta 5 python machine-learning svm scikit-learn

我正在使用scikit库来使用svm.我有大量的数据,我无法一起阅读以提供fit()功能.
我想对文件中的所有数据进行迭代,并逐个训练svm.有没有办法做到这一点.文档并不清楚,在他们的教程中,他们立即提供完整的数据fit.
有没有办法逐一训练它(可能就像要求fit训练数据的每个输入模式).

ogr*_*sel 14

支持向量机(至少在libsvm中实现,其中scikit-learn是包装器)基本上是一种批处理算法:它需要一次访问内存中的所有数据.因此它们不具有可扩展性.

相反,您应该使用支持该partial_fit方法的增量学习的模型.例如一些线性模型,例如sklearn.linear_model.SGDClassifier支持该partial_fit方法.您可以对数据集进行切片并将其加载为具有形状的一系列小型数据集(batch_size, n_features).batch_size可以是1,但效率不高,因为python解释器开销(+数据负载开销).因此,建议至少100名小型医生领导样本.