在c中实现SVM用于无库分类

在c中实现SVM用于无库分类,第1张

概述我正在研究支持向量机几周.我理解如何将数据分类为两个类的理论概念.但我不清楚如何选择支持向量并生成分离线来使用C对新数据进行分类. 假设我有两个班级的两个训练数据集 绘制数据后,我得到了带矢量的以下特征空间,这里,分隔线也很清晰. 如何在没有库函数的情况下在C中实现它.它将帮助我清除我关于SVM的实现概念.我需要明确实现,因为我将在我的母语的意见挖掘中应用SVM. 我会加入大多数人的建议并说你应该 我正在研究支持向量机几周.我理解如何将数据分类为两个类的理论概念.但我不清楚如何选择支持向量并生成分离线来使用C对新数据进行分类.

假设我有两个班级的两个训练数据集

绘制数据后,我得到了带矢量的以下特征空间,这里,分隔线也很清晰.

如何在没有库函数的情况下在C中实现它.它将帮助我清除我关于SVM的实现概念.我需要明确实现,因为我将在我的母语的意见挖掘中应用SVM.

解决方法 我会加入大多数人的建议并说你应该考虑使用图书馆. SVM算法非常棘手,如果由于实现中的错误而无法正常工作,则会添加噪声.甚至没有谈论在内存大小和时间上实现可扩展实现的难度.

那说,如果你想探索这个作为学习经验,那么SMO可能是你最好的选择.以下是您可以使用的一些资源:

The Simplified SMO Algorithm – Stanford material PDF

Fast Training of Support Vector Machines – PDF

The implementation of Support Vector Machines using the sequential minimal optimization algorithm – PDF

我发现的最实际的解释可能是Peter Harrington在“机器学习”一书中的第6章.代码本身在Python上,但您应该能够将其移植到C语言.我不认为这是最好的实现,但它可能足以了解正在发生的事情.

代码免费提供:

https://github.com/pbharrin/machinelearninginaction/tree/master/Ch06

不幸的是,该章没有样本,但很多本地图书馆都倾向于提供这本书.

总结

以上是内存溢出为你收集整理的在c中实现SVM用于无库分类全部内容,希望文章能够帮你解决在c中实现SVM用于无库分类所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1227446.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存