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迁移学习与数据增强的更多相关文章

  1. [DeeplearningAI笔记]卷积神经网络3.10候选区域region proposals与R-CNN

    4.3目标检测 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.10 region proposals候选区域与R-CNN 基于滑动窗口的目标检测算法将原始图片分割成小的样本图片,并传入分 ...

  2. [DeeplearningAI笔记]卷积神经网络4.6-4.10神经网络风格迁移

    4.4特殊应用:人脸识别和神经网络风格转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 4.6什么是神经网络风格转换neural style transfer 将原图片作为内容图片Cont ...

  3. [DeeplearningAI笔记]卷积神经网络3.1-3.5目标定位/特征点检测/目标检测/滑动窗口的卷积神经网络实现/YOLO算法

    4.3目标检测 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.1目标定位 对象定位localization和目标检测detection 判断图像中的对象是不是汽车--Image clas ...

  4. [DeeplearningAI笔记]卷积神经网络1.9-1.11池化层/卷积神经网络示例/优点

    4.1卷积神经网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.9池化层 优点 池化层可以缩减模型的大小,提高计算速度,同时提高所提取特征的鲁棒性. 池化层操作 池化操作与卷积操作类似 ...

  5. [DeeplearningAI笔记]卷积神经网络1.6-1.7构造多通道卷积神经网络

    4.1卷积神经网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.6多通道卷积 原理 对于一个多通道的卷积操作,可以将卷积核设置为一个立方体,则其从左上角开始向右移动然后向下移动,这里设 ...

  6. [DeeplearningAI笔记]卷积神经网络4.1-4.5 人脸识别/one-shot learning/Siamase网络/Triplet损失/将面部识别转化为二分类问题

    4.4特殊应用:人脸识别和神经网络风格转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 4.1什么是人脸识别 Face verification人脸验证 VS face recogniti ...

  7. [DeeplearningAI笔记]卷积神经网络1.4-1.5Padding与卷积步长

    4.1卷积神经网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.4Padding 一张\(6*6\)大小的图片,使用\(3*3\)的卷积核设定步长为1,经过卷积操作后得到一个\(4*4 ...

  8. [DeeplearningAI笔记]卷积神经网络1.2-1.3边缘检测

    4.1卷积神经网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 1.2边缘检测示例 边缘检测可以视为横向边缘检测和纵向边缘检测如下图所示: 边缘检测的原理是通过一个特定构造的卷积核对原始图 ...

  9. [DeeplearningAI笔记]卷积神经网络4.11一维和三维卷积

    4.4特殊应用:人脸识别和神经网络风格转换 觉得有用的话,欢迎一起讨论相互学习~Follow Me 4.11一维和三维卷积 二维和一维卷积 对于2D卷积来说,假设原始图像为\(14*14*3\)的三通 ...

随机推荐

  1. 5 种使用 Python 代码轻松实现数据可视化的方法

    数据可视化是数据科学家工作中的重要组成部分.在项目的早期阶段,你通常会进行探索性数据分析(Exploratory Data Analysis,EDA)以获取对数据的一些理解.创建可视化方法确实有助于使 ...

  2. mysql常用语句入门整理

    这篇属于小白入门级别,如果你已经高手可以直接跳过 1.运行数据库mysqld.exe,客户端直接mysql -uroot(root是默认用户名) -p 2 showdatabases,showtabl ...

  3. ecshop以及一些需要注意的

    Deprecated: Assigning the return value of new by reference is deprecated in 定位到出错的那一行: $this->_ol ...

  4. Beta冲刺贡献分数分配结果

    小组名称:Hello World! 项目名称:空天猎 组长:陈建宇 成员:刘成志.刘耀泽.刘淑霞.黄泽宇.方铭.贾男男 第三周贡献分分配结果 基础分 会议分 个人贡献分 最终分数 黄泽宇 9 0.5 ...

  5. 第9次Scrum会议(10/21)【欢迎来怼】

    一.小组信息 队名:欢迎来怼小组成员队长:田继平成员:李圆圆,葛美义,王伟东,姜珊,邵朔,冉华小组照片 二.开会信息 时间:2017/10/21 17:20~17:45,总计25min.地点:东北师范 ...

  6. flask验证登录学习过程(1)---实践flask_jwt

    flask_jwt应用代码: from flask import Flask from flask_jwt import JWT,jwt_required,current_identity from ...

  7. 第一次c++团队合作作业期间第一篇随笔

    分析了自己分到的任务,我的理解是这样的:首先要生成程序主框架,在主框架中进行地图的描绘.我应该是先进行地图的拼接,把建筑物和地面都拼接好.然后再在地图上显示出英雄和小兵.同时还要在主框架中分析了自己分 ...

  8. Ubuntu命令行安装显卡驱动

    1. sudo apt-et purge nvidia* 卸载原有驱动 2. sudo add-apt-repository ppa:graphics-drivers sudo apt-get upd ...

  9. 用C++实现简单随机二元四则运算

    让我们想看看二元四则运算都需要实现什么: (1) 定制题目数量 (2) 是否有乘除法 (3) 题目数值范围 (4) 加减有无负数 (5) 除法有无余数 (6) 是否支持分数(真分数.假分数…) (7) ...

  10. DB2 9.5 数据库分区管理及应用实践

    DB2 数据库分区是 DB2 企业版 DPF(Data Partitioning Feature)选件提供的,它主要用来为大规模数据处理.高并发数据访问提供支持.DB2 数据库分区采用 Share-n ...