如果你要做一个计算机视觉应用,相比于从头训练权重,或者说从随机初始化权重开始,如果你下载别人已经训练好的网络结构的权重,那么你的进展会相当快。用这个预训练,然后转换到你感兴趣的任务上。

假如说你要建立一个猫的检测器,用来检测你自己的宠物猫,我们这里分类3个类别,Tigger、Misty和neither。

方法:

1)首先下载别人的网络及其权重,比如说ImageNet比赛的网络,其有1000类的输出。

2)去掉这个网络的最后一层softmax层,创建自己的softmax单元,比如这里输出Tigger、Misty和neither三个类别。

3)就网络而言,建议把所有的层都冻结住,即冻结住所有层的参数,只需要训练和刚才新创建的softmax层有关的参数

通过使用其他人预训练的权重,你很可能得到很好的性能,即使只有一个小的数据集。

  如果有比较多的数据集,这种情况下,你应该冻结更少的层,比如冻结前面部分层,然后训练后面的层

  如果你有越多的数据,你需要冻结的层数就越少,你能够训练的层数就越多。

  如果你有大量的数据,你应该做的就是用开源的网络和它的权重,把整个的当做初始化,然后训练整个网络,当然,如果你的分类数量与原网络不同,那么你需要换成你自己的softmax输出层。

  换句话说,如果你有越多的标定的数据,你就可以训练越多的层,极端情况下,你可以用下载的权重只作为初始化,用它们来代替随机初始化,接着你可以用梯度下降法训练,更新网络所有的层的权重。

数据扩充

大部分的计算机视觉任务使用很多的数据,所以数据增强(data augmentation)是经常使用的一种技巧来提高计算机视觉系统的表现能力

数据增强方法

1)垂直镜像对称

2)随机裁剪(Random Cropping)

  可以看出,随机裁剪有时候裁剪的并不好,但是,在实践中还是很有用的。

3)色彩转换(Color shifting)、颜色扭曲(Color distortions)

  一般RGB的更改是根据某种概率分布来决定的,这样做的理由是,比如说有时候可能阳光会有点偏黄,或者由于灯光照明,会导致改变图像的颜色。对RGB有不同的采样方式,其中一种算法是PCA(主成分分析),在AlexNet论文中有讲述。

  另外,还可以旋转图片,shearing,Local wraping等

  多次裁剪方法:对原始图像,1个中心区域裁剪 + 4个角度裁剪,然后将图像镜像,做相同的处理,总共10个crop

内容主要来自与:

Andrew Ng的卷积神经网络课程

转载于:https://www.cnblogs.com/hejunlin1992/p/8449504.html

卷积神经网络之迁移学习相关推荐

  1. 基于卷积神经网络与迁移学习的油茶病害图像识别

    基于卷积神经网络与迁移学习的油茶病害图像识别 1.研究思路 利用深度卷积神经网络强大的特征学习和特征表达能力来自动学习油茶病害特征,并借助迁移学习方法将AlexNet模型在ImageNet图像数据集上 ...

  2. 什么是神经网络在object detection的应用?cascade classifier,卷积神经网络,迁移学习

    首先 输入,positive image:大黄蜂 negative image:大黄蜂的背景 输出,有多大的概率是大黄蜂 用的是卷积神经网络 卷积神经网络的分类器 在matlab里面是一个xml文件 ...

  3. 基于卷积神经网络及迁移学习的掌纹识别

  4. 【卷积神经网络环境搭建学习笔记】

    卷积神经网络环境搭建学习笔记 前言 首先,特别感谢B站UP主:肆十二- csdn链接:https://blog.csdn.net/ECHOSON/article/details/117964438 再 ...

  5. 视频教程-卷积神经网络CNN-深度学习

    卷积神经网络CNN 乐川科技有限公司CEO,人工智能培训讲师,专业从事机器学习与深度学习培训.参与多个人工智能领域项目,专注于机器学习与计算机视觉领域,长期参与无人驾驶汽车项目,专注研究无人驾驶领域的 ...

  6. 【中国图形图像学报】面向COVID-19疫情预测的图卷积神经网络时空数据学习——CCF B、CSCD

    [中国图形图像学报]面向COVID-19疫情预测的图卷积神经网络时空数据学习 摘 要 当前的疾病传播研究主要集中于时序数据和传染病模型,缺乏运用空间信息提升预测精度的探索和解释.在处理时空数据时需要分 ...

  7. 毕业设计 : 车牌识别系统实现【全网最详细】 - opencv 卷积神经网络 机器学习 深度学习

    文章目录 0 简介 1 车牌识别原理和流程 1.1 车牌定位 1.2 基于图形图像学的定位方法. 1.3 基于机器学习的定位方法. 1.4 字符分割 1.5 字符识别 2 基于机器学习的车牌识别 2. ...

  8. 【源码】以GUI的形式实现预训练神经网络的迁移学习

    允许用户在不编码的情况下,在图形用户界面中进行预训练神经网络的迁移学习. It allows user to do transfer learning of pre-trained neural ne ...

  9. 卷积神经网络和多模态学习

    目录 一.卷积神经网络的介绍 1.1 局部连接 1.2 权值共享 二.卷积神经网络在文本领域的运用 2.1 BERT模型 2.2 预训练模型 2.3 BERT模型的架构 2.4 BERT模型的输入表征 ...

  10. 卷积神经网络在深度学习中新发展的5篇论文推荐

    转载自:Deephub Imba 1.Deformable CNN and Imbalance-Aware Feature Learning for Singing Technique Classif ...

最新文章

  1. Collections Arrays你会用么?
  2. 7-181 帅到没朋友 (20 分)
  3. .net+mysql关闭连接_asp.net连接mysql出现了远程主机强迫关闭了一个现有的连接。!!!...
  4. 此页的状态信息无效,可能已损坏---应用程序中的服务器错误---
  5. AlphaGo围棋 论文笔记
  6. xsd文件生成class
  7. C#程序设计基础试题(一)
  8. 微信H5禁止分享功能
  9. 记各种纸尿裤用后感——花王大王MOONY尤妮佳好奇帮宝适等等等
  10. 应用计算机测量电阻伏安特性,实验2“电阻的伏安特性曲线”数据处理示范
  11. 《哈利·波特:霍格沃茨之谜》推出二月支线任务“天界舞会”,带来新的选择、挑战与服装
  12. scala 自带json_在scala中格式化JSON字符串
  13. Stata:二元Probit模型
  14. SQL CheatSheet Joins
  15. 天干地支计算公式_如何快速的计算出每一天的天干地支
  16. HTTP:Form表单的交互与抓包
  17. 使用Phaser和HTML5特性检测移动设备旋转重力方向
  18. 你想要的MindManager思维导图模板全在这里!
  19. 32、网络工程师必知的华为命令大全
  20. Sublime 3 中文显示乱码解决方法

热门文章

  1. caffe MNISTAutoencoder
  2. 机器学习调参-模型选择
  3. bzoj1396: 识别子串
  4. linux下mysql允许远程连接
  5. [转]unresolved external symbol _*
  6. 一款超级炫酷的编辑代码的插件 Power Mode
  7. visual studio 2008试用版的评估期29天后结束 解决办法
  8. Servlet开发(1)-----基础及MVC设计模式
  9. MVC---------ViewBag
  10. go学习笔记-运算符