图解CNN(卷积神经网络)的实现过程,5分钟理解

2023-08-1719:37:15人工智能与大数据Comments901 views字数 1097阅读模式

前言文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

在图像处理领域,CNN(卷积神经网络)处于绝对统治地位,已经有无数的文章对其工作原理进行介绍,我不认为我能再写出一篇特别不一样的原理介绍文章,但对于CNN具体是如何用神经网络实现的,能找到的介绍要么是一大堆数学公式,要么是大段晦涩的文字说明,读起来很是辛苦,最近看到一篇文章,没有一行数学推导,仅仅用几张图就把CNN的神经网络实现说得非常清楚透彻,英文原文在这里  (https://medium.com/impactai/cnns-from-different-viewpoints-fab7f52d159c),好东西要多多分享,所以我也把这篇文章在这里翻译成中文给大家,喜欢原汁原味的同学也可以直接阅读原文。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

CNN主要思路快速回顾文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

为了便于大家理解,这里简单回顾一下CNN的主要思路:对于一张M * N像素的图,我们用一个大小为 S * S(如3 * 3)的特征提取器,扫描整个图片,强化图片的重要特征,忽略不重要的细节,得到一个强化了特征的新图:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

不断递归上述过程,就可以逐渐从细节特征(如线条、纹理)中提取出高级特征(如器官、物种),最终完成各种图像处理任务。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN的神经网络实现过程文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

以下就是前言部分提到的文章翻译:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

假设我们有一张3 * 3的图,图中每个像素用一个字母表示:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

我们的特征提取器为一个2 * 2的矩阵,矩阵每个元素是一个希腊字母:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

用特征提取器处理后的图片为:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

其详细工作过程如下:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

上述工作过程可以表达为以下等式:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

注意上述等式中的bias参数b在4个等式中都是一样的,可以把b理解为特征提取器的一部分,就像权重参数(α, β, γ, δ)是特征提取器的一部分一样。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

上述等式更紧凑的写法为:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

上述写法可以直接表示为一个神经网络(连接线对应权重α, β, γ, δ):文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

神经元的激活过程就是权重矩阵和输入矩阵的乘积:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

这里有两个要注意的点:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

  • 灰色格子的0,代表不可训练的参数,它们在整个训练过程中始终为0
  • 剩下可训练的参数中,很多参数取值是保持相同的,这叫做"共享权重"

权重矩阵的每一行,代表了在图片上对特征过滤器的一次应用,其中的0表示这次应用不会覆盖的像素。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

假设我们把取值为0的权重也补充到上面的神经网络图中(用灰色的线表示0权重),就可以得到一个经典的、全连接的神经网络图:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

去掉颜色和字母,就和熟悉的神经网络示意图一模一样了:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

上面,我们用一个2 * 2的特征提取器把一个3 * 3的图变成了一个2 * 2的图,通过zero-padding和一个3 * 3的特征提取器,我们就可以保持图片大小不变:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

其工作过程如下:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

而如果不应用zero-padding,则我们只能得到一个1 * 1的结果图:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

图解CNN(卷积神经网络)的实现过程,5分钟理解文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

以上,就是CNN落地实现为神经网络的过程。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ai/53886.html

  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/ai/53886.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定