Datawhale《深度学习-NLP》Task7- 卷积神经网络

本文详细介绍了卷积神经网络(CNN)的基础知识,包括卷积定义、一维、二维和三维卷积,以及在文本分类中的Text-CNN。CNN主要用于特征提取,文中通过图像和实例解释了卷积、反卷积和池化层的工作原理,并以Text-CNN为例展示了其在NLP领域的应用。
摘要由CSDN通过智能技术生成

 

参考: 卷积有多少种?一文读懂深度学习中的各种卷积:卷积有多少种?一文读懂深度学习中的各种卷积 - 知乎 源码往期资料中有涉及。

 

卷积神经网络定义

首先最需要明确的一点就是,卷积神经网络,也就是convolutional neural networks (简称CNN),现在已经被用来应用于各个领域,物体分割啦,风格转换啦,自动上色啦blahblah,但是!!CNN真正能做的,只是起到一个特征提取器的作用!所以这些应用,都是建立在CNN对图像进行特征提取的基础上进行的。

拿到一张图片,要对它进行识别,最简单的栗子是,这张图是什么?

比如,我现在要训练一个最简单的CNN,用来识别一张图片里的字母是X还是O。

 

我们人眼一看,很简单嘛,明显就是X啊,但是计算机不知道,它不明白什么是X。所以我们给这张图片加一个标签,也就是俗称的Label,Label=X,就告诉了计算机这张图代表的是X。它就记住了X的长相。

但是并不是所有的X都长这样呀。比如说...

 

 

这四个都是X,但它们和之前那张X明显不一样,计算机没见过它们,又都不认识了。

(这里可以扯出机器学习中听起来很高冷的名词 “ 欠拟合 ”)

不认识了怎么办,当然是回忆看看是不是见过差不多的呀。这时候CNN要做的,就是如何提取内容为X的图片的特征。

我们都知道,图片在计算机内部以像素值的方式被存储,也就是说两张X在计算机看来,其实是这样子的。

 

 

其中1代表白色,-1代表黑色。

如果按照每像素逐个比较肯定是不科学的,结果不对而且效率低下,因此提出其他匹配方法。

我们称之为patch匹配。

观察这两张X图,可以发现尽管像素值无法一一对应,但也存在着某些共同点。

 

如上图所示,两张图中三个同色区域的结构完全一致!

因此,我们就考虑,要将这两张图联系起来,无法进行全体像素对应,但是否能进行局部地匹配?

答案当然是肯定的。

相当于如果我要在一张照片中进行人脸定位,但是CNN不知道什么是人脸,我就告诉它:人脸上有三个特征,眼睛鼻子嘴巴是什么样,再告诉它这三个长啥样,只要CNN去搜索整张图,找到了这三个特征在的地方就定位到了人脸。

 

同理,从标准的X图中我们提取出三个特征feature

 

 

 

 

我们发现只要用这三个feature便可定位到X的某个局部。

feature在CNN中也被成为卷积核(filter),一般是3X3,或者5X5的大小。

取 feature里的(1,1)元素值,再取图像上蓝色框内的(1,1)元素值,二者相乘等于1。把这个结果1填入新的图中。

 

 

同理再继续计算其他8个坐标处的值

 

9个都计算完了就会变成这样。

 

 

接下来的工作是对右图九个值求平均,得到一个均值,将均值填入一张新的图中。

这张新的图我们称之为 feature map (特征图

 

 

可能有小盆友要举手问了,为什么蓝色框要放在图中这个位置呢?

这只是个栗子嘛。 这个蓝色框我们称之为 “窗口”,窗口的特性呢,就是要会滑动。

其实最开始,它应该在起始位置。

 

 

进行卷积对应相乘运算并求得均值后,滑动窗便开始向右边滑动。根据步长的不同选择滑动幅度。

比如,若 步长 stride=1,就往右平移一个像素。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值