第一篇文章,mnist的识别相关

早早注册了csdn,结果研究生都快毕业了还没有写过一篇文章,平时碰到问题也就是百度谷歌一下,也没有好好把问题记下来,最近反思了一下,感觉自己真还是不配被称作一个合格的研究人员。

最近因为项目的原因,需要对mnist的识别率再提高一点,之前自己随随便便改改网络结构,效果居然还不错,最近看了两篇论文,才感觉到自己一直在闭门造车。分享几篇文章,略微做一些解读,可能有些错误或者偏差,希望大家谅解。

文章借鉴了知乎专栏文章的一些内容,这里放一下链接:https://zhuanlan.zhihu.com/p/31262148

1.Dynamic Routing Between Capsules

hinton的capsNet提出都已经快一年了,我居然没有好好的读过一点。文章建议替换CNN中的max pooling层,老师之前经常问我这个pooling层究竟是什么,有什么用,以前都是糊弄过去,现在想想姜还是老的辣,正紧的研究人员直觉非常的准。因为卷积神经网络在底层时使用的感受野只能对局部提取特征,但是我们在高层需要对整个图像的较大的区域提取出高层特征,这时候我们引入了pooling,pooling叫做聚合层,聚合的是啥玩意呢,我觉得是把一片区域的特征聚合到一个点上,这样我们用一个点表示之前一个区域的特征,顺便减小了输入的数据的空间大小,这样我们利用同样大小的感受野,就能感受到比之前更大的图片的一个区域。

第一篇文章,mnist的识别相关

这个是常用的池化,将2*2区域的信息聚合到其中的一个点上,这里我们假设我们目标2*2区域内的最大值
是蓝色小方块,将这部分提取出来,我们得到一个新的2*2矩阵,能够代替原来4*4区域的信息
一方面图变小了,另一方面我们使用相同大小的感受野,能够感受到的区域扩大了。

别看pooling的操作这么简单,它在卷积神经网络中起到了举足轻重的作用。但是并不能掩盖它的缺陷,它损失了太多重要的信息,用一次丢3/4,怪心疼的。

2. Regularization of Neural Networks using DropConnect


capsNet 的文章中提到了上面这篇文章,这篇文章在2013的ICML发表,其提出了一种类似dropout的方法来阻止过拟合,称为DropConnect,放张图解释一下与dropout的不同,

第一篇文章,mnist的识别相关

这个图是从https://www.cnblogs.com/tornadomeet/p/3430312.html这里看到的,感兴趣的同学可以去看看。

我们的重点不在这,我找这篇文章主要目的是capsnet文章说这篇2013年的文章在mnist上取得了0.39%错误率的好成绩,然后在使用了 ensembling and augmenting the data with rotation and scaling这种策略之后可以达到0.21%的错误率,之前闭门造车发现了旋转和压缩增强训练集能够提升精度,原来人家早就提出来了,不合格的研究人员果然就是像我这样的吧。然后我还发现了一个很有意思的地方:

第一篇文章,mnist的识别相关

文中有张表格有些古怪,在最右边一栏多了一个voting error,直觉告诉我感觉跟我们老师提出来一些想法有点相关,赶紧去找出来研究研究。

3. Multi-column deep neural networks  for image classification


没看文章,看了一点别人的解释大概是说利用多个DNN网络综合判别,居然效果很好??之前我也用过这种方法啊,效果有很好吗?我用了三个模型的时候效果没有提升反而下降了,很迷,可能是我用模型数量还是太少,或者是投票的方式不对,最近可能会好好看一下这篇文章,看完之后再写一篇博客吧。