首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >知识卡片 CNN 卷积神经网络

知识卡片 CNN 卷积神经网络

作者头像
DataScience
发布2020-08-19 19:59:49
6310
发布2020-08-19 19:59:49
举报
文章被收录于专栏:A2DataA2Data

卷积神经网络 Convolutional Neural Networks

什么是卷积?

以图像处理为例,左边的输入图像是一只藏羚羊,经过卷积处理后,获得右边的黑白特征图,卷积运算的一大特点就是将图像中的信号或特征进行放大。

输入的图像以像素组成,通过卷积核进行运算,可理解为一个像素点分别与周围的八个像素点相减并相加,获得特征值;对于图像平滑的部分,像素点间的差值很小,如羊身后的草地,在特征图中显示为黑色;边缘过渡部分,像素点的差值很大,特征为图中为白色。

什么是卷积神经网络?

全连接网络进行图像分类的缺点

图的左边有四个输入的像素x和四个隐藏单元h,如果采用全连接,即输入层的每个单元和隐藏层的每个单元进行连接,即右边的四个h公式,W为权重参数,4个样本需要16个权重参数。而对于图像来说,像素点众多,特别是高清质量的图片,如此多的像素点作为输入单元,有巨大的计算量,计算效率低。

CNN特点一: 局部卷积

若采用全局连接,连接数目巨大;采用局部连接,只选取个别进行连接,连接的数量得到压缩。局部感知的物理依据是图像中的特征是局部密切,一个区域的图像与另外一个远处的图像关联较小,将每个小区域的特征卷起来之后,进行卷积运算,处理后再汇总,得到图像的总体特征。

卷积具体实现举例

如图所示,以计算特征图的第一个元素0为例,滑动窗口函数选取第一个局部窗口与卷积核相乘,得到哈达马积,这是一种比较特殊的卷积运算,再将哈达马积的矩阵元素求和。卷积滑动的步长stride size可以取一个像素,也可取更大的步长,更大的步长意味着特征图的尺寸越小。图中,卷积后的特征图相比原始图像小了一圈儿,被称为窄卷积。

如果要获得与原始图像相同尺寸的特征图,可通过宽卷积的方式,在原始图像周围加0。

CNN特点二:参数共享

参数共享在这里可以理解为共享权值参数,即卷积核中的参数无论对哪个局部窗口参数不变,有助于提高算法运行的效率。

CNN特点三: 多卷积核

可采用不同的卷积核,修改卷积核的参数,获取不同通道的特征图。

CNN特点四: 池化处理

如果将特征图进行卷积后进行训练来分类图像,训练的量还是过于庞大,可通过池化处理进一步缩小特征图的尺寸。如图中采用最大池化(降采样)对卷积特征的四个单元取最大值。池化的优点是降维将数据压缩;克服过拟合,提升模型的泛化能力;如果图像经过旋转和平移后来进行识别,池化处理具有平移和旋转不变性,仍然可以识别出图像的共性-关键特征为后续分类提供参考。

CNN特点五:多层处理

图像分类中,多使用多层卷积和降采样,一层卷积往往只学到局部的特征,多层处理后,特征经过的组合越多,越全局化,形成更高层的特征表示。如图像的基本元素是点,点组成线,线组合成轮廓,多层处理后特征更为复杂。

LeNet-5 模型分析

LeNet-5

LeNet-5 是深度学习巨头Yann LeCun等人提出的一种多层卷积神经网络,本例是数字手写体的识别。

LeNet‐5‐‐卷积层C1

卷积层是共享参数的,对于每个卷积特征图,28*28的参数相同。

LeNet‐5‐‐降采样层S2

LeNet‐5‐‐卷积层C3

注:(14-5+1)出现的+1是因为在14x14的矩阵中,通过滑动窗口5*5池化后,新的特征图边长是14-5+1;可以类比3x3矩阵,通过2x2卷积核运算后,得到一个2x2的矩阵,边长是3-2+1。

LeNet‐5‐‐降采样层S4

LeNet‐5‐‐卷积层C5

LeNet‐5的全连接层 F6

这里的84个神经元是由于输出结果中的数字是一个位图,大小是7*12=84,有84个像素。

LeNet‐5的输出层

RBF单元的欧式距离,代表分类预测得出的像素与RBF单元-ASCII字符集中的字符的像素特征的匹配程度。Xj是第j个F6层的神经元-像素,Wij是第i个字符的第j个像素,i 是0-9共有十个数字(类别),因此对于每个类都要分别计算一次;yi公式中对F6层的每个像素进行遍历,并计算十次,计算欧式距离的大小,匹配输入的图像与那个类最为接近,距离越小,匹配程度越高。

文本信息的矩阵化处理

CNN不仅可以用于图像,也可以用于自然语言的处理。绿色线框内的一段话,是CNN用于对服务点评的情感预测。

对文本进行结构化处理,假设文本T的长度为|T|,每个词表示为d维的向量,d一般取50,100,200等,T可以表示为二维矩阵,行数为词数,列数为d维,使得文本信息与图像的结构类似。

基于CNN的文本分类

S是一个句子,由7个词组成,每个词有是一个含有5个维度的向量,滑动窗口函数(红色)的宽度与输入的宽度d相同。

通过多个卷积核进行卷积,即蓝色,黄色和紫色的卷积核,同一颜色的卷积核也可以有多个,如图蓝色两个四格向量是由两个蓝色卷积核得到的。再经过最大池化操作后边成一格,再将两个一格大小的向量拼接在一起,通过softmax函数,输出分类结果。卷积得到的向量与传统的N-gram模型是类似的。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-08-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DataScience 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档