不懂卷积神经网络?别怕,看完这几张萌图你就明白了!

作者: 佚名 2019-05-17 15:48:16

这篇文章用最简明易懂的方式解释了卷积神经网络(CNN)的基本原理,并绕开了里面的数学理论。

同时,如果想对从头开始构建CNN网络之类的问题感兴趣,作者推荐去读《 Artificial Intelligence for Humans Volume 3: Deep Learning and Neural Networks》中第10章节的内容。

不多说了,开始CNN之旅——

网络结构

CNN的模型通常建立在前馈神经网络模型之上,它的结构你也应该不陌生。不同是的,“隐藏层”将被以下这些层取代:

  • 卷积层(Convolutional Layers)
  • 池化层(Pooling Layers)

全连接层(稠密层,Dense Layers)

结构类似下图:

卷积

在此阶段,输入图像被一个grid扫描,并作为输入传递到网络。之后,这个网络将一层卷积层应用于输入的图像,将它分割成包含3张图像的三维立方体结构。这3三张图像个框架分别呈现原图的红色、绿色和蓝色信息。

随后,它将卷积滤波器(也称神经元)应用到图像中,和用PhotoShop中的滤镜突出某些特征相似。例如在动画片《Doc And Mharti》中,用罗伯茨交叉边缘增强滤波器处理过的效果如下图所示:

原图

处理后

可以想象,拥有100多个不同滤波器的神经网络筛选复杂特征的能力有多强大,这将大大助力它识别现实世界中事物。一旦神经网络已经将卷积滤波器应用到图像中,我们就能得到特征/激活图。

特征图谱会被指定区域内的特定神经元激活,比如我们将边缘检测滤波器添加到下面左图中,则它的激活图如右图所示:

这些点代表0的行(表明这些区域可能是边缘)。在二维数组中,“30”的值表明图像区域存在边缘的可能性很高。

激活层

当我们有了激活图,就能在其中让激活函数大显身手了,我们用研究人员的***函数——ReLU激活函数(修正线性单元)举个例子。然而,一些研究人员仍然认为用Sigmoid函数或双曲切线能得到提供***的训练结果,但我不这么认为。

使用激活层是在系统中引入非线性,这样可以提高输入和输出的一般性。ReLU(x)函数只返回max(0、x)或简单地返回激活图中的负权值。

池化层

之后的***做法通常是在特征图中应用***池化(或任何其他类型的池)。应用***池化层的原理是扫描小型grid中的图像,用一个包含给定grid中***值的单个单元替换每个grid:

这样做的重要原因之一是,一旦我们知道给定特征在一个给定的输入区域,我们可以忽略特征的确切位置将数据普遍化,减少过拟合。举个例子,即使训练精度达到99%,但拿到没见过的新数据上测试时,它的精确度也只有50%。

输出层

***池化层后我们讲讲剩下的另一个激活图,这是传递给全连接网络的一部分信息。它包含一个全连接层,将上一层中每个神经元的输出简单映射到全连接层的一个神经元上,并将softmax函数应用到输出中,就是和我们之前提到的ReLU函数类似的激活函数。

因为我们将用神经网络将图片分类,因此这里使用了softmax函数。softmax输出返回列表的概率求和为1,每个概率代表给定图像属于特定输出类的概率。但后来涉及到图像预测和修复任务时,线性激活函数的效果就比较好了。

值得注意的是,讲到这里我们只考虑了单卷积层和单池层的简单情况,如果要实现***精度通常需要它们多层堆叠。经过每个完整的迭代后,通过网络反向根据计算损失更新权重。

神经网络 卷积神经网络 人工智能
上一篇:AI进入无障碍时代:手语识别翻译的应用,究竟意味着什么? 下一篇:蚂蚁金服开源机器学习工具SQLFlow,机器学习比SQL还简单
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

什么是持续智能?对物联网有什么影响?

物联网世界将迎来充满希望的2020年。5G公司一再声称,2020年是5G在公共领域站稳脚跟,并普及的一年。

iothome ·  22h前
AI战“疫”,偶尔小尴尬背后,终极护城河现形

人类与新型冠状病毒的战“疫”仍然在进行中,在这期间,也催生出各类“人工智能+”应用,人工智能技术在此期间迎来大爆发。

张书乐 ·  2天前
DeepMind发布神经网络、强化学习库,网友:推动JAX发展

JAX由谷歌提出,是TensorFlow的简化库。结合了针对线性代数的编译器XLA,和自动区分本地 Python 和 Numpy 代码的库Autograd,在高性能的机器学习研究中使用。

十三 ·  2天前
谷歌透露:正在内部尝试用AI开发计算机芯片

据谷歌人工智能研究负责人Jeff Dean透露,谷歌正在尝试通过人工智能程序推进专用芯片的内部开发,以加速其软件。在旧金山举行的International Solid State Circuits Conference会上Dean表示:“我们内部正在将人工智能技术用于一系列芯片设计项目中。”

佚名 ·  2天前
人工智能带领人类从信息社会迈向智能社会

人工智能(AI)是指在机器上实现类似乃至超越人类的感知、认知、行为等智能的系统。与人类历史上其他技术革命相比,人工智能对人类社会发展的影响可能位居前列。

新华网客户端 ·  2天前
2020年的7个关键RPA趋势:从人工智能启用到更具战略性的扩展

机器人流程自动化(RPA)服务商Blue Prism公司EMEA地区首席技术官Peter Walker对使企业可以体验采用机器人流程自动化(RPA)优秀结果的2020年有望取得的重大发展进行了预测与分析。

Peter Walker ·  3天前
AI助各地返工:重庆语音机器人、北京无人配送、广州人脸识别测温

随着全国各地陆续开始返工浪潮,人工智能技术也有了特别的用武之地。

佚名 ·  3天前
AI技术将如何推动制药行业发展? 精选

从目前来看,AI技术的应用范围已经非常广泛,各个行业可谓概莫能外——制药行业自然也在其中。这一切,将给制药这一历史悠久且至关重要的行业带来前所未有的变革。

佚名 ·  4天前
Copyright©2005-2020 51CTO.COM 版权所有 未经许可 请勿转载