支持向量机的 MATLAB 程序集,用起来还挺顺手的,是你想搞清楚SVM怎么配合核函数来分类时。这套代码不仅把核心的数学部分实现得比较扎实,还顺带搭了个和K-means 聚类联动的示例,挺有意思的。
核函数的比较全面,像是常见的线性核、高斯核(也叫 RBF)、多项式核这些都有涉及。举个例子,高斯核主要是通过计算点之间的距离,让数据在高维里“变得可分”,这招在实际中还蛮常用的。
SVM-KMExample
里有结合聚类做的训练例子,一开始用 K-means 做初步分簇,再把这些结果丢给 SVM 来分类。嗯,思路还挺实用的,适合数据前阶段试试。代码大多基于矩阵运算,用的是 MATLAB 擅长的那一套,比如拉格朗日乘子法啥的,全靠线性代数撑场面。
你可以顺便看看www.pudn.com.txt
这个文件,是下载或者参考链接。建议多看几眼里面的注释,对理解整个 SVM 流程挺大。如果你平时用 MATLAB 写东西比较多,或者正好在啃线性代数,那这套代码还挺适合你玩一玩。
相关学习资料也不少,像matlab 程序集支持向量机 SVM 及其核函数应用这种就实用,还有其他聚类算法、核方法、线代项目的链接也一并推荐你看看,能拓展不少思路。