我对SVM比较陌生,我正在尝试使用&fffsvm'来训练一类SVM模型。在matlab中的功能。 ' RBF' (〜高斯核)使用核函数。
我的数据大小约为150k。不幸的是,模型训练时间很慢(大约3分钟)。我在matlab中使用以下行来训练SVM模型
SVMModel = fitcsvm(X,y,' KernelScale',' auto',#39; Standardize' true,' KernelFunction' ;,' RBF''女',1);
X是n * m 矩阵,其中数据点的数量(~150k)和m是特征数(= 2个特征)
Y 是数据标签,我训练一类模型 y = 1(n,1);
有关加快模型培训步骤的建议/建议吗?
由于
答案 0 :(得分:1)
SVM受可扩展性和内存问题的影响。我们无能为力,这就是算法的工作方式。有一些尝试是并行进行计算,但这些都是稀缺的,并且多次基于(准确的?)近似。如果您必须坚持使用此特定模型,remainder operator %
中的工作将为此提供代码。
另一个建议是尝试线性内核(对于你的数据集更轻,也可能足够准确)1,由创建LIBSVM的同一个团队开发(在之前的评论中由sasha提到),这是可能是MATLAB最完整和优化的SVM。
祝你好运!