(DeepLab-resnet) + 深度学习部份层 小笔记。
来源:互联网 发布:淘宝客服服务流程图 编辑:程序博客网 时间:2024/05/01 14:39
首先说一下resnet:
1.解决卷积网络不断加深时出现的退化问题:即即使在训练集上都出现准确率在随着网络不断加深而降低的现象。
2.resnet实现:
一、减少传统卷积或者全连接的信息丢失问题,(因为会有x直接连接输至输出那里)。
二、每一层都用了BN!
1. BN要和Scale结合使用:
1. bn是实现权值参数的归一化:x_norm = (x - u) / std
2. scale是实现把被你归一化打乱的特征恢复回来,使得上一层学到的特征依然保存下来:y = alpha * x_norm + betaalpha和beta为需要学习的参数。
那么caffe中的bn层其实只做了第一件事。scale层做了第二件事。这样你也就理解了scale层里为什么要设置bias_term=True,这个偏置就对应2)件事里的beta。(这两句来自百度知道)
我的理解,resnet的conv里没有bais项,只有weights,在紧接的bn层里,放置 bais项,给到scale里了。这是resnet的独特之处,其他的网络(如vgg,googlenet)的conv并不这样(它们的w b 共存),因为他们并不是每个conv后面都跟着bn层操作。
来自知乎大牛的回答。。。。。
2. caffe的Eltwise层
Eltwise:有三个可能操作
product:点乘
sum:相加(默认)
max:最大值
3.resnet v1 v2 的区别:
一:v2 在每一层前都用了Batch Normalization,
二:v2 对输入进行preactivation(预激活),而不是在卷积后再进行激活函数处理。
3.Resnet的单个Block结构:
左右都是残差学习模块,且他们的in 和 out 都是depth一致。但是右边的三层卷机结构需要更少的参数,它有一个先降维再升维的操作。如下:
(这个Inception Net 我的上一篇博文有介绍。)
前两层卷积降维至64,第三层升维至256.。。减少很多参数啊~~~
如果in 和 out 的depth不一致,则,以下代码的else部份代码解决:
depth为输出的维深度,线性映射指的是卷积操作,卷积核为1x1,步长为中间层卷积的步长stride。
好了,现在in 和 out 的 depth一致了,那么来解决图像的尺寸 wxh 的问题。两张图像得尺寸(长宽)一致才能对应像素去相加减啊。这就是上面代码的if部份解决的问题了:
对输入的图像进行下采样subsample,步长为中间那一层卷积的stride值。(第一三层的stride都是1,不改变图像的大小尺寸。)这样子操作,就使得这个要加到输出部份的shortcut的 wxh 和 depth都和输出一致了,就可以一一对应的加法操作了。
这几行代码简直短小精悍啊!!!
- (DeepLab-resnet) + 深度学习部份层 小笔记。
- 菜鸡的学习笔记(一):DeepLab-ResNet Model代码中的相关知识点
- Resnet学习笔记(一)--resnet.py
- RESNET学习笔记(二)
- 【深度学习论文】ResNet
- 【深度学习】ResNet结构
- 深度学习笔记(5)——学术界的霸主Resnet
- 深度学习之DeepLab用于语义分割
- Resnet学习笔记(三)--image_processing.py
- Resnet学习笔记(四)--train_imagenet.py
- ResNet学习笔记
- 【深度学习】入门理解ResNet和他的小姨子们(一)---ResNet
- 【深度学习】入门理解ResNet和他的小姨子们(五)---ResNet增强版
- 学习笔记TF033:实现ResNet
- 深度学习之GoogleNet and ResNet
- 深度学习之基础模型—resNet
- [深度学习]Deep Residual Learning for Image Recognition(ResNet,残差网络)阅读笔记
- 吴恩达深度学习笔记(一)week3 浅层神经网络
- 点击后的cell为自定义颜色
- 数据结构-堆小结
- 002 如何保持插入光标处在末尾?
- XML入门
- 【喜讯】广源兴荣膺“国家级高新技术企业称号”
- (DeepLab-resnet) + 深度学习部份层 小笔记。
- Tomcat文件夹解析
- 003 如何获取系统时间?如何转化时间为时间戳?
- SAP NOTES ON CONFIGURATION OF MM-FI ACCOUNT DETERMINATION & AUTOMATIC POSTINGS
- 004 如何在布局间添加弹簧?
- nested exception is org.hibernate.exception.SQLGrammarException: could not execute query
- 关于CCSv5 Debug下image Analyzer功能使用
- 将列表变成DataFrame形式,使用pd.concat进行合并
- 005 如何获取QlineEdit/QtextEdit上的文本?如何输出文本到文件?