最近一直在外面,李航那本书没带在身上,所以那本书的算法实现估计要拖后了。
这几天在看Andrew Ng 机器学习的课程视频,正好看到了Softmax分类器那块,发现自己之前理解perceptron与logistic regression是有问题的。这两个算法真正核心的不同在于其分类函数的不同,perceptron采用一个分段函数作为分类器,logistic regression采用sigmod函数作为分类器,这才是这两个函数真正的不同。
废话不多说了,今天打算实现softmax分类器。
算法
算法参考的是Andrew 的课件与这篇文章。
具体实现的时候发现加入权重衰减效果会更好。
这里为了防止大家看不懂我的程序,我在这里做一些定义
∇ΘjJ(Θ)=−x(i)(1{
y(i)=j}−p(y(i)