起因
从去年开始接触神经网络,觉得CNN结构很简单没什么难的,直到有一天被一位拿过信息竞赛金牌的学弟鄙视了……中期答辩之后不忙,于是我花了几天用MATLAB写了一个CNN,算是给自己一个交代。
为什么用MATLAB?
- 相比c/c++,MATLAB实现更方便
- 我没打算写又快又漂亮的产品级的代码,只是希望抠一遍算法的各种细节,所以theano等各种成熟的工具包就不考虑了
实现
这篇文章不打算讲各种基础的细节,只是总结一下我踩的各种坑……
CNN训练无非是反向传播,现成的公式很容易找到,自己花一些时间也能推导出来。我参照的是这篇文章: