手写的SVM 算法代码,配套的是MATLAB环境,写得挺清晰的,不是那种一看就绕晕的复杂实现,逻辑还比较好跟。最适合用来练基本功,尤其是刚学完斯坦福那门机器学习课程的同学,拿来练手正合适。
代码不只是讲 SVM,还有不少线性回归的实现,比如逻辑回归、梯度下降、正态方程,甚至还有一点点数据可视化的部分。像plotData.m
、computeCost.m
这些文件就能直接跑通,响应也快,适合一边调一边理解。
我还挺喜欢里头那几个案例。比如有个是预测申人是否被录取,用的是两门考试成绩去做分类;另一个是线性回归预测小吃摊的利润,场景设定蛮生活化,容易代入。
建议你运行前先看看每个.m
文件的注释,逻辑还算清楚。要是刚入门机器学习,又不想一上来就啃 Python 库,这套用MATLAB实现的代码,挺值得一看。
如果你对梯度下降、线性回归这些概念还不太熟,可以顺便看看下面这些文章:
哦对了,如果你是Octave
用户也不用担心,这套代码基本能兼容,改动不多,跑起来也挺顺。