机器学习篇:卷积神经网络DNN和CNN

更新时间:2023-05-20 10:19:44 阅读: 评论:0

机器学习篇:卷积神经⽹络DNN和CNN
0 前⾔
常⾔道,温故⽽知新,那有没有什么东西是每⼀次看到都像是接触了⼀种新的知识呢?或许机器学习相关技术发展太过迅速,或许是我之前每次接触都未深⼊,我总感觉机器学习相关的技术我并不能建⽴⼀个完整的概念,或者说并不深⼊研究的话,对于机器学习的概念都太过零碎了。
⼏次想要开始整理,但是因为我对机器学习的某些⽅⾯还是⽋缺了解,总感觉整理不下去,初步定下以下话题吧。
1. 卷积神经⽹络DNN和CNN
2. 循环神经⽹络RNN
3. 神经⽹络发展历史
冒牌翻译
4. ⾃然语⾔处理 NLP
这⾥想要整理的是DNN和CNN,主要涉及
1. 常见的视觉任务
2. 神经⽹络DNN
others是什么意思3. 卷积神经⽹络CNN
1、常见的视觉任务
卷积神经⽹络最常见的应⽤在于计算机视觉任务,计算机视觉是关于研究计算机视觉能⼒的学科,或者说是使机器能对环境和其中的刺激进⾏可视化分析的学科。图像识别从图像分类到定位(⽬标检测、语义分割、实例分割)到⽬标追踪,主要包括以下任务:
图像分类:是图像识别的基础,识别出图像中有哪⼏类的物体
⽬标检测:识别出每⼀类物体具体的位置并⽤规则的形状框出来
语义分割/实例分割:每⼀类物品具体的形状位置识别/每⼀类物品种单个个体识别出来
场景⽂字识别
图像⽣成
⽬标追踪
⼈体关键点检测:⼈体姿势估计
视频分类:通常是⼏秒的⼩视频
度量学习:通常应⽤于⼈脸检测
2、神经⽹络
神经⽹络技术起源于上世纪五六⼗年代,当时叫感知机(perceptron),包含有输⼊层、输出层和⼀个隐藏层。输⼊的特征向量通过隐藏层变换到达输出层,由输出层得到分类结果。但是单层感知机对稍微复杂⼀些的函数都⽆能为⼒,直到上世纪⼋⼗年代Hition、Rumelhart等⼈发明了多层感知机,即具有各层隐藏层的感知机。
多层感知机可以摆脱早期离散传输函数的束缚,使⽤sigmoid或tanh等连续函数模拟神经元对激励的响应,在训练算法上使⽤Werbos发明的反向传播BP(Back-propagation algorithm)算法。这就是所说的神经⽹络NN。
神经⽹络的层数直接决定了它对现实的刻画能⼒--利⽤每层更少的神经元你和更加复杂的函数。但是随着神经⽹络层数的加深,出现了两个问题:雀斑治疗
1. 优化函数越来越容易陷⼊局部最优解
2. 梯度消失
4级英语2006年,Hition提出了深度学习的概念,引发了深度学习的热潮。具体是利⽤预训练的⽅式缓解了局部最优解的问题,将隐藏层增加到了7层,实现了真正意义上的“深度”。
为了克服梯度消失,ReLU,maxout等传输函数代替了sigmoid,形成了如今DNN的基本形式。结构跟多层感知机⼀样。如下图所⽰:
维度灾难:然⽽DNN中每⼀个下层神经元都连接着上⼀层全部的神经元的输出作为输⼊,⽽且需要为每⼀个输⼊配置权重w,这就导致了参数数量膨胀。譬如处理⼀张200×200的图像,输⼊层包含40000维,隐藏层400000神经元,那么就需要160亿参数,现在的图像就没有200×200那么⼩的了。
石家庄播音主持培训
因此引⼊了卷积神经⽹络CNN,使⽤卷积核实现了局部连接、权值共享。
后⾯为了应对时间顺序的输⼊,引⼊了循环神经⽹络RNN。
3、CNN(卷积神经⽹络)
卷积神经⽹络基本的整体结构包含多个CONV(卷积层)+RELU(激活函数)+POOL(池化层)以及最后的全连接神经⽹络分类层。
3.1 卷积计算
每⼀层卷积层共⽤⼀个卷积核,实现了局部连接、权值共享。权值共享极⼤地减少了参数的数量,⼤⼤提⾼了计算速度,减少内存消耗。
卷积计算包含⼀维卷积计算,⼆维卷积计算,多通道卷积计算和三维卷积计算。其中⼆维卷积计算是针对图像⼆维矩阵的处理,多通道卷积计算是针对彩⾊三通道⼆维矩阵的处理,⽽三维卷积计算是针对视频的处理,这⾥暂不涉及。
山道年3.1.1⼀维卷积计算
⼀维卷积是两个信号之间的运算,其本质是卷积核从左到右滑过信号,每滑动⼀格做⼀次点积。
浪漫主义者
卷积有三种⽅式
valid:卷积核完全在信号内
没什么大不了英文same:卷积核中⼼在信号内(padding:不够的位置补零)
full:卷积核边沿在信号内(padding:不够的位置补零)
3.1.2 ⼆维卷积计算
⼆维卷积通常⽤于图⽚的计算,图⽚在计算机底层就是⼀个矩阵,矩阵中的每个元素都是0-255。
⼆维卷积参与运算的元素:⼆维卷积核(filter)和⼆维信号。⼆维卷积同样也包含valid、same、full三种计算⽅式,这⾥仅展⽰valid⽅式。
uts3.1.3 多通道卷积计算
虽说⼆维卷积可以处理图像的⼆维矩阵表⽰,但是彩⾊图像⼀般是三通道(RGB通道)的⼆维矩阵数据。⽽多通道的卷积计算参与运算的元素有:N通道的⼆维卷积核和N通道的⼆维信号,最后的结果是⼆维信号,其过程是各通道⼆维信号核卷积进⾏点积操作后将各通道对应位置的值相加。
3.1.4 卷积核的分析与计算
有关于卷积计算的细节还包括两个细节步长(stride)和边界填充(Padding)。
步长stride:反映了filter滑动⼀次的距离,上⾯的记录都默认步长为1。
边界填充Padding上⾯就有提过,默认是使⽤0,好像有⼈也尝试过通过拓展原图边界的⽅式来进⾏边界填充,但是效果并不佳。triangle是什么意思
从上⾯可以观察到,似乎原信号进⾏了卷积之后长度和体积都会改变。如下图,⼆维矩阵就从6×6变成了4×4
关于输出特征图体积的计算,当输⼊⼤⼩为W1×H1×D1: 指定卷积核(filter)个数为K,卷积核filter⼤⼩为(F),步长S,边界填充P,那么输出特征图的体积为: W2 = (W1-F+2P)/S+1
H2 = (H1-F+2P)/S+1
D2=K

本文发布于:2023-05-20 10:19:44,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/78/706210.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:卷积   计算   学习   神经   输出   位置   机器   图像
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图