Scikit learn scikit学习具有大量样本/小批量的SVM是否可行?

Scikit learn scikit学习具有大量样本/小批量的SVM是否可行?,scikit-learn,svm,Scikit Learn,Svm,据我所知: “拟合时间复杂度与样本数成二次关系,因此很难扩展到超过10000个样本的数据集。” 我目前有350000个样本和4500个类,这个数字将进一步增长到100-200万个样本和10k+类 我的问题是内存不足。当我使用少于1000个类的200000个样本时,一切都正常工作 有没有一种方法可以内置或使用类似于支持向量机的小批量的东西?我看到存在MiniBatchKMeans,但我不认为它适用于SVM 欢迎任何意见 我在回答问题时提到了这个问题 您可以将大型数据集拆分为支持向量机算法可以安全使

据我所知:

“拟合时间复杂度与样本数成二次关系,因此很难扩展到超过10000个样本的数据集。”

我目前有350000个样本和4500个类,这个数字将进一步增长到100-200万个样本和10k+类

我的问题是内存不足。当我使用少于1000个类的200000个样本时,一切都正常工作

有没有一种方法可以内置或使用类似于支持向量机的小批量的东西?我看到存在MiniBatchKMeans,但我不认为它适用于SVM


欢迎任何意见

我在回答问题时提到了这个问题

您可以将大型数据集拆分为支持向量机算法可以安全使用的批次,然后分别查找每个批次的支持向量,然后在包含所有批次中找到的所有支持向量的数据集上构建生成的支持向量机模型


另外,如果在您的案例中不需要使用内核,那么您可以使用sklearn,它实现了随机梯度下降。默认情况下,它适合线性支持向量机。

出于好奇,它可能重复,为什么有10k+类?听起来好像上课太多了。