[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\)的三通 ...
随机推荐
- Python--matplotlib 绘图可视化练手--折线图/条形图
最近学习matplotlib绘图可视化,感觉知识点比较多,边学习边记录. 对于数据可视化,个人建议Jupyter Notebook. 1.首先导包,设置环境 import pandas as pd i ...
- JavaScript DOM编程艺术学习笔记-第一章JavaScript简史
一,JavaScript的起源 JavaScript是Netscape与Sun公司合作开发,它是一种脚本语言,通常只能通过Web浏览器去完成一些操作.JavaScript为程序员提供了一些操控Web浏 ...
- CentOS 7 网卡命名修改为eth0格式
Linux 操作系统的网卡设备的传统命名方式是 eth0.eth1.eth2等,而 CentOS7 提供了不同的命名规则,默认是基于固件.拓扑.位置信息来分配.这样做的优点是命名全自动的.可预知的,缺 ...
- 【php】set_include_path和get_include_path用法详解
目的:在框架中方便加载文件 参考:http://blog.sina.com.cn/s/blog_4ce89f200100twbl.html 如果我们没有设置这个值,可能我们需要写一些完全的路径: ...
- vue+postcss报错: variable '--primary-color' is undefined and used without a fallback
之前vue-cli3引入postcss的配置: https://www.cnblogs.com/XHappyness/p/7676680.html 发现这么一个问题,我再全局global.css中定义 ...
- sphinx配置 + php
1. 为什么要使用Sphinx 假设你现在运营着一个论坛,论坛数据已经超过100W,很多用户都反映论坛搜索的速度非常慢,那么这时你就可以考虑使用Sphinx了(当然其他的全文检索程序或方法也 ...
- set集合,深浅拷贝以及部分知识点补充
目录: 1.基础数据类型补充 2.set集合 3.深浅拷贝 一,基础数据类型补充 字符串的基本操作 li = ["李李嘉诚", "麻花藤", "⻩黄海 ...
- 以太网帧,IP,TCP,UDP首部结构
1.以太网帧的格式 以太网封装格式 2.IP报头格式 IP是TCP/IP协议簇中最为重要的协议.所有的TCP,UDP, ICMP和IGMP数据都以IP数据报格式传输.IP提供的是不可靠.无连接的协议. ...
- daemon not running的解决办法
有时候,当我们执行 adb devices 或者 adb start-server 的时候,会出现下面的情况: * daemon not running. starting it now on por ...
- 【数据库】百万级数据库SQL优化大总结
网上关于SQL优化的教程很多,但是比较杂乱.近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充. 这篇文章我花费了大量的时间查找资料.修改.排版,希望大家阅读之后,感觉 ...