我有一组数据,我正在尝试使用 SVM 学习。对于上下文,数据的维度为 35,包含大约 30'000 个数据点。
我之前用这个数据集在 Matlab 中训练过决策树,大约需要 20 秒。对错误率并不完全满意,我决定尝试 SVM。
我第一次尝试svmtrain(X,Y)
。大约 5 秒后,我收到以下消息:
???在 453 处使用 ==> svmtrain 时出错 计算内核函数时出错:内存不足。键入 HELP MEMORY 作为您的选项。
当我查找此错误时,有人建议我使用SMO方法:svmtrain(X, Y, 'method', 'SMO');
. 大约一分钟后,我得到了这个:
???在 236 处使用 ==> seqminopt>seqminoptImpl 时出错 在主循环通过的最大次数 (15000) 内未实现收敛
==> seqminopt 中的错误为 100 [alphas offset] = seqminoptImpl(data, targetLabels, ...
==> svmtrain 在 437 [alpha 偏差] = seqminopt(training, groupIndex, ...
我尝试使用其他方法(LS 和 QP),但我再次得到第一个行为:然后延迟 5 秒
???在 453 处使用 ==> svmtrain 时出错 计算内核函数时出错:内存不足。键入 HELP MEMORY 作为您的选项。
我开始认为我做错了什么,因为决策树使用起来非常轻松,在这里我陷入了看似非常简单的操作。
非常感谢您的帮助。