当前位置:网站首页>深度学习——CV、CNN、RNN
深度学习——CV、CNN、RNN
2022-07-26 06:29:00 【laluneX】
一、计算机视觉
1. 边缘检测(edge detection)
在大多数时候图像的边缘可以承载大部分的信息,并且提取边缘可以除去很多干扰信息,提高处理数据的效率。其包含了垂直边缘检测(Vertical edge detection)和水平边缘检测(Vertical edge detection)等等
垂直边缘检测是将输入图片通过一种卷积核进行运算后得到一张新的图片,在图片中将垂直边缘显示。水平边缘检测通过另一种卷积核运算,最后输出的图片把水平边缘显示
正边和负边,这实际分别就是由亮到暗与由暗到亮的区别
2. padding
他的作用是:
- 为了解决经过多次卷积后图像变得很小的情况
- 为了尽可能的保存原图片的边缘信息
padding的三种方式:full,same,valid
①full
full模式的意思是,从filter和image刚相交开始做卷积,白色部分为填0。
②same
这里的same是指卷积之后输出的feature map尺寸保持不变(相对于输入图片),此时filter的移动范围比full更小了。
③valid
valid是指不对原图进行padding,直接进行卷积运算,可见filter的移动范围较same更小了。
3.卷积步长(Strided convolution)
卷积步长是指每次移动过滤器的距离
4. CNN的层类型
卷积神经网络CNN的结构一般包含这几个层:
输入层:用于数据的输入
卷积层:使用卷积核进行特征提取和特征映射
池化层:进行下采样,对特征图稀疏处理,减少数据运算量。其中包含Max pooling和Average polling。Max pooling:取“池化视野”矩阵中的最大值;Average pooling:取“池化视野”矩阵中的平均值
全连接层:通常在CNN的尾部进行重新拟合,减少特征信息的损失
输出层:用于输出结果
当然中间还可以使用一些其他的功能层:
归一化层(Batch Normalization):在CNN中对特征的归一化
切分层:对某些(图片)数据的进行分区域的单独学习
融合层:对独立进行特征学习的分支进行融合
二、循环神经网络-RNN(Recurrent Neural Networks)
1. 为什么需要RNN(循环神经网络)
普通神经网络都只能单独的处理一个个的输入,前一个输入和后一个输入是完全没有关系的。但是,某些任务需要能够更好的处理序列的信息,即前面的输入和后面的输入是有关系的。
2. RNN结构

这个网络在t时刻接收到输入 x t x_t xt之后,隐藏层的值是 s t s_t st,输出值是 o t o_t ot。关键一点是, s t s_t st的值不仅仅取决于 x t x_t xt,还取决于 s t − 1 s_{t-1} st−1
3. RNN结构的类型
一对一、一对多、多对一、多对多(输出与输出相等或不等)、注意力结构
4. 梯度爆炸的问题
梯度爆炸更容易处理一些,因为梯度爆炸的时候,我们的程序会收到NaN错误。我们也可以设置一个梯度阈值,当梯度超过这个阈值的时候可以直接截取。
5. 梯度消失的问题
- 合理的初始化权重值,以躲开梯度消失的区域
- 使用relu代替sigmoid和tanh作为激活函数
- 使用长短时记忆网络(LSTM) 和 Gated Recurrent Unit(GRU),这是最流行的做法
①长短时记忆网络(Long Short Term Memory Network——LSTM)
LSTM用两个门来控制单元状态c的内容,一个是遗忘门(forget gate),它决定了上一时刻的单元状态 c t − 1 c_{t-1} ct−1有多少保留到当前时刻 c t c_{t} ct;另一个是更新门(update gate),它决定了当前时刻网络 c ~ t \tilde{c}_{t} c~t的输入有多少保存到单元状态 c t c_{t} ct。LSTM用输出门(output gate)来控制单元状态 c t c_{t} ct有多少输出到LSTM的当前输出值 a t a_{t} at。
②门控循环单元(GRU)
GRU (Gated Recurrent Unit)是LSTM的一种变体,也许是最成功的一种。它对做了很多简化,同时却保持着和LSTM相同的效果。
GRU 有两个有两个门,即一个重置门(reset gate)和一个更新门(update gate)。从直观上来说,重置门决定了如何将新的输入信息与前面的记忆相结合,更新门定义了前面记忆保存到当前时间步的量。
下图中z为更新门,r为重置门, r t r_t rt代表 h t − 1 h_{t-1} ht−1与 h ~ t \tilde{h}_{t} h~t之间的相关性

下图是简化的GRU(一个门):

三、双向循环神经网络-BRNN(Bidirectional Recurrent Neural Networks)
由于标准的循环神经网络(RNN)在时序上处理序列,他们往往忽略了未来的上下文信息。一种很显而易见的解决办法是给网络加入未来的上下文信息。理论上,M可以非常大来捕获所有未来的可用信息,但事实上发现如果M过大,预测结果将会变差。
双向循环神经网络(BRNN) 的基本思想是使每一个训练序列的正向和反向 形成 两个循环神经网络(RNN),而且这两个都连接着 一个输出层。这个结构提供给 输出层 在输入序列中每一个点的完整的过去和未来的上下文信息。
四、深层循环神经网络(Deep RNN)
深层循环神经网络是为了增强模型的表达能力而网络中设置了多个循环层
本文只用于个人学习与记录,侵权立删
边栏推荐
- Servlet cannot directly obtain JSON format data in request request
- 输入5个学生的记录(每条记录包括学号和成绩), 组成记录数组, 然后按照成绩由高到低的次序输出. 排序方法采用选择排序
- 英语句式参考纯享版 - 状语从句
- Map dictionary and constraints of go
- 【Day04_0421】C语言选择题
- [nanny level] package volume optimization tutorial
- Cdga | how to build data asset catalogue?
- Convert amount figures to uppercase
- 【保姆级】包体积优化教程
- [day06_0423] C language multiple choice questions
猜你喜欢
![[pytorch] CNN practice - flower species identification](/img/af/81e2735ba385ba3d851e61a5fe2bef.png)
[pytorch] CNN practice - flower species identification

Oc/swift Technology Download File (breakpoint continuation AFN download file alamofire Download File native download) (source code)

【pytorch】CNN实战-花朵种类识别

Upgrade appium automation framework to the latest 2.0

Advanced C language - archived address book (file)
C language explanation series - comprehensive exercises, guessing numbers games

Leetcode:934. The shortest Bridge

Find the original root

【无标题】

Mobile web
随机推荐
【Day_03 0420】数组中出现次数超过一半的数字
[1] Basic knowledge of mathematical modeling
2022年下半年系统集成项目管理工程师(软考中级)报名条件
Database and the future of open source
Servlet无法直接获取request请求中的JSON格式数据
Do it yourself smart home: intelligent air conditioning control
[Hangzhou][15k-20k] medical diagnosis company recruits golang development engineers without overtime! No overtime! No overtime!
[C language] address book dynamic version and document version
Map集合继承结构
【Day06_0423】C语言选择题
Read five articles in the evening | Economic Daily: don't treat digital collections as wealth making products
机械制造企业如何借助ERP系统,做好生产管理?
BPG notes (IV)
Input the records of 5 students (each record includes student number and grade), form a record array, and then output them in order of grade from high to low The sorting method adopts selective sortin
【Day_03 0420】字符串中找出连续最长的数字串
If introduced according to the open source framework
Latex同时合并表格的多行多列
【Day_01 0418】删除公共字符串
【Day05_0422】C语言选择题
Should we test the Dao layer?