都说卷积神经网络好 今天来谈谈它的弊端
介绍 我们都知道,卷积神经网络(CNN)是令人着迷和强大的工具,也许这正是深度学习如此受欢迎的原因之一,因为Alex Krizhevsky、Ilya Sutskever和Geoffrey Hinton在2012年发表了“深度卷积网络的ImageNet分类” CNN的计算机视觉可以在许多任务中赢取胜利,但是CNN真的完美无瑕吗?那是我们能做的最好的?我猜从标题里你会认为这答案是否定的。 2014年12月4日,Geoffrey Hinton在麻省理工学院就他所谓的胶囊网络项目发表了演讲,并且讨论了CNN的问题。 如果你熟悉CNN,你可以直接问它有什么问题? 卷积层 卷积图层有一组矩阵,在一个称为卷积的过程中被乘以先前的图层输出,以检测一些特征,这些特征可能是基本特征(例如边缘,颜色等级或图案)或复杂特征(例如形状,鼻子,或者嘴巴)所以,这些矩阵被称为过滤器或内核。
合并图层 有不止一种类型的池化层(Max pooling,avg pooling),最常用的是是Max pooling,但对一些任务来说足够好了,而且它减少了网络的维数(没有参数)。 最大合并图层实际上非常简单,你可以预先定义一个过滤器(一个窗口),并将该窗口交换为输入,然后将窗口中包含的最大值作为输出。
哪里不对? 1-反向传播 backprob是一种方法,在一批数据被预先拥有之后,发现每个权重在误差中的贡献,并且大多数良好的优化算法(SGD,ADAM ...)使用反向传播来找到梯度。 反向传播在过去几年一直很好,但并不是有效的学习方式,因为它需要庞大的数据集。 2-平移不变性 当我们说平移不变性的时候,表达的意思是说,方向或位置略有改变的同一物体可能不会激活应该识别的物体的神经元。
如上图所示,如果我们假定有一个神经元是用来检测猫,它的值将随着猫的位置和旋转的变化而改变,数据增强部分地解决了这个问题,但是它并没有完全摆脱它 3-合并图层 合并层是一个很大的错误,因为它丢失了大量有价值的信息,如果我们正在谈论一个人脸识别器,它会忽略部分和整体之间的关系,所以我们必须结合一些特征(嘴巴,双眼,椭圆的脸和鼻子)才能说明是一张脸。
结论 CNN是很棒的,但它有两个非常危险的缺陷,就是池化层和平移不变,幸运的是我们可以减少数据增加的危险,但是有一些东西的出现是我们不能够阻止的,我们只能准备好接受。 (编辑:武汉站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |