[DeeplearningAI笔记]卷积神经网络2.9-2.10迁移学习与数据增强
4.2深度卷积网络
觉得有用的话,欢迎一起讨论相互学习~Follow Me
2.9迁移学习
迁移学习的基础知识已经介绍过,本篇博文将介绍提高的部分。
提高迁移学习的速度
- 可以将迁移学习模型冻结的部分看做为一个函数,因为每次都要使用这个冻结模型的输出值来训练自己的网络层,这样从加载模型到预训练模型都会耗费一定的时间。
为此,可以将目标训练集通过冻结模型的输出保存到本地,作为新的训练数据集来训练自己的网络层,这样会更加快捷。

提高迁移学习的精度
- 如果自身的目标数据集与冻结模型所用的数据集差异较大或者自身的数据集越大,应该使用源模型的前几层作为冻结模型并且加大自身网络的规模。
- 极端的情况是只是用冻结模型的下载的权重作为自身模型的初始化权重用它们代替随机初始化
NG认为机器视觉应该是深度学习领域中运用迁移学习最广泛的课题。
2.10数据增强(Data augmentation)
数据增强是一种常用的手段,来提高计算机视觉系统的表现。至少在计算机视觉方向,有更多的图像数据往往意味着更好的效果。
常用数据增强方法
垂直镜像对称Mirroring

随机裁剪Random Cropping
虽然随机裁剪不是一个完美的数据增强的方法,因为在随机裁剪有可能裁剪的保留的不完全是目标部分。但是实际操作中构成了数据集中真实图像的大部分。

旋转Rotation
局部扭曲Local warping
尽管在实践中可以结合使用各种方法,但是由于过程太复杂,所以实际使用的很少。
Color Shifting色彩转换
- 给原始图像中R,G,B三种通道中加上不同的失真值(偏置值)
- 例如如果同时给R和B通道中增加正偏置值,则整张图片会有偏紫的效果。
- 在实践中,对R,G,B三个通道的变化是基于特定概率分布的
这么做的原因是,可能识别的图片中阳光有一点偏黄,或者灯光照明对整张图片具有影响。

PCA主成分分析增强Principles Components Analysis
- 简单来说根据图中颜色的采样进行图像增强。
例如:一张原始图片中有较多的蓝色和红色成分,而绿色成分较少。则在图像增强时,对蓝色和红色的增加多一点而对绿色的增加相对少一些。使图像颜色总体保持不变。
数据增强的并行实现
通常会通过创建多个线程来对数据集中的图像数据进行读取,形成一个个数据流。并且在读取数据后可以使用随机的数据增强的方法对图片数据进行数据增强。而使用其他的线程实现模型的训练和预测。模型的载入/数据增强/数据集的训练过程可以并行实现。
数据增强超参数
数据增强也会涉及到许多超参数:例如随机裁剪的比率,颜色变化的分布,旋转的角度等等。这些都可以参考别人成果中的超参数选取,从别人的成果中汲取经验往往更有效率。当然,也可以根据自己的需要进行改造与再创新。
[DeeplearningAI笔记]卷积神经网络2.9-2.10迁移学习与数据增强的更多相关文章
- [DeeplearningAI笔记]卷积神经网络3.10候选区域region proposals与R-CNN
4.3目标检测 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.10 region proposals候选区域与R-CNN 基于滑动窗口的目标检测算法将原始图片分割成小的样本图片,并传入分 ...
- [DeeplearningAI笔记]卷积神经网络4.6-4.10神经网络风格迁移
4.4特殊应用:人脸识别和神经网络风格转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 4.6什么是神经网络风格转换neural style transfer 将原图片作为内容图片Cont ...
- [DeeplearningAI笔记]卷积神经网络3.1-3.5目标定位/特征点检测/目标检测/滑动窗口的卷积神经网络实现/YOLO算法
4.3目标检测 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.1目标定位 对象定位localization和目标检测detection 判断图像中的对象是不是汽车--Image clas ...
- [DeeplearningAI笔记]卷积神经网络1.9-1.11池化层/卷积神经网络示例/优点
4.1卷积神经网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.9池化层 优点 池化层可以缩减模型的大小,提高计算速度,同时提高所提取特征的鲁棒性. 池化层操作 池化操作与卷积操作类似 ...
- [DeeplearningAI笔记]卷积神经网络1.6-1.7构造多通道卷积神经网络
4.1卷积神经网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.6多通道卷积 原理 对于一个多通道的卷积操作,可以将卷积核设置为一个立方体,则其从左上角开始向右移动然后向下移动,这里设 ...
- [DeeplearningAI笔记]卷积神经网络4.1-4.5 人脸识别/one-shot learning/Siamase网络/Triplet损失/将面部识别转化为二分类问题
4.4特殊应用:人脸识别和神经网络风格转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 4.1什么是人脸识别 Face verification人脸验证 VS face recogniti ...
- [DeeplearningAI笔记]卷积神经网络1.4-1.5Padding与卷积步长
4.1卷积神经网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.4Padding 一张\(6*6\)大小的图片,使用\(3*3\)的卷积核设定步长为1,经过卷积操作后得到一个\(4*4 ...
- [DeeplearningAI笔记]卷积神经网络1.2-1.3边缘检测
4.1卷积神经网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.2边缘检测示例 边缘检测可以视为横向边缘检测和纵向边缘检测如下图所示: 边缘检测的原理是通过一个特定构造的卷积核对原始图 ...
- [DeeplearningAI笔记]卷积神经网络4.11一维和三维卷积
4.4特殊应用:人脸识别和神经网络风格转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 4.11一维和三维卷积 二维和一维卷积 对于2D卷积来说,假设原始图像为\(14*14*3\)的三通 ...
随机推荐
- 2016-6-2-第二个sprint
1.开始一个新的冲刺: 起止:2016.6.1~2016.6.14 ProductBacklog:继续向下细化 Sprint 计划会议:确定此次冲刺要完成的目标 Sprint Backlog:新的冲刺 ...
- 《构建之法》6-7章读后感、问题及对Scrum的理解
第6章读后感: 看完第六章后了解什么是敏捷流程.“敏捷流程”在软件工程的语境中是一系列价值观和方法论的集合.我觉得敏捷是比较人性化而且让人比较轻松的的一种团队做项目的方法吧,它会比较注重交流,而不是硬 ...
- 20181120-4 Beta阶段第2周/共2周 Scrum立会报告+燃尽图 01
此作业要求参见https://edu.cnblogs.com/campus/nenu/2018fall/homework/2409 版本控制地址 https://git.coding.net/lg ...
- 基于DPDK的高效数据包捕获技术分析与应用
被NFV的论文折磨了两天,今天上午看了两篇DPDK的综述. 传统的包捕获机制 1. BPF 两个组成部分:转发部分和过滤部分. 转发部分负责从链路层提取数据包并转发给过滤部分. 过滤部分根据过滤规则, ...
- DP---(POJ1159 POJ1458 POJ1141)
POJ1159,动态规划经典题目,很适合初学者入门练手. 求:为了使字符串左右对称,应该插入的最小字符数目. 设字符串为S1 S2 S3 - Sn. 这个字符串有n个字符,根据DP的基本思路,减少问题 ...
- HttpCookie Class
提供创建和操作各 HTTP Cookie 的类型安全方法. #region 写入指定Cookie的值 +static void WriteCookie(string cookieName, strin ...
- 关于解决乱码问题的一点探索之一(涉及utf-8和GBK)
在使用Visual Studio 2005进行MFC开发的时候,发现自动添加的注释变成了乱码.像这样: // TODO: ÔÚ´ËÌí¼ÓרÓôúÂëºÍ/»òµ÷ÓûùÀà 还有这样: // ...
- php自带的filter过滤函数
PHP 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤. filter_has_var()检查是否存在指定输入类型的变量. filter_id()返回指定过滤器的 ID 号. filt ...
- DBGRID控件里可以实现SHIFT复选吗?怎么设置?
////////////////////////////////////////////////// 功能概述:公用的列表框选择框,是用DBGrid网格//// 注意事项:希望用Query ...
- 网页显示百度地图 Jquery
cshtml: <div class="modal" style="visibility: hidden"> <div id="ma ...