1 迁移学习

1.0 简介

图1.0 迁移学习

迁移学习是机器学习研究的课题,在机器学习中集中于依据习得的知识解决不同但相关的问题;即用已知去解决未知(相关);

1.2 迁移学习分类

(1) 使用模型结构,不利用模型权重,重新训练数据,输出训练模型

图1.2 仅利用模型结构重新训练

当新的任务与现存的模型任务差距较大时,可借鉴模型结构,重新进行训练,以达到较优的效果,如图1.2中的摩托车和肿瘤识别.

(2) 使用模型结构和模型权重,对整个模型的权重进行微调(fine-tuning),训练数据,输出训练模型;

图1.3 微调模型全部权重

若新任务是现存任务的升级版,则可利用现有模型的结构和训练好的模型,微调模型的全部权重,以达到新任务的需求;如提高物品的识别种类,因任务和分类任务相似,新任务只是提高了识别种类,从10类提高到100类,调节训练权重即可.

(3) 使用模型结构和模型权重,根据需要对部分神经网络层权重进行微调,训练数据,输出训练模型;

图1.4 调节部分模型权重

如图1.4所示,任务B在任务A的基础上,将前两层权重进行冻结(frozen)对后面的权重进行微调,即可达到效果.

图1.5 调节最后一层冻结其他层

图1.5中的识别语言分类中,即只调节最后一层网络,冻结其他层权重,因新任务和现有任务比较类似,且分类差别不大,仅调节最后一层即可.

1.3 迁移学习应用选型

待训练数据集数量 任务相似度

将新任务与现有任务进行两个维度拆分,即新任务数据集数量和两个任务的相似度,进行组合,确定使用哪种迁移方法.

(1) 使用模型结构,不利用模型权重

大低:待训练数据集数量大,任务相似度低;
新任务的数据集的数据量较多,现有模型实现的功能和新任务差异较大,则仅使用模型结构,重新训练新任务模型,如对图中的肿瘤图形进行分类,重新训练模型效果较好.

(2) 使用模型结构和模型权重,对整个模型的权重进行微调

小高:待训练数据集数量小,任务相似度高;
新任务是现有任务的升级,可考虑对全局权重进行微调,由于数据集较少且要求都较为相似,则对整个模型微调较稳妥,如分类类别增加,从10类到100类.

(3) 使用模型结构和模型权重,根据需要对部分神经网络层权重进行微调

小高:待训练数据集数量小,任务相似度高;
新任务数据集数量较小,且两个任务相似度较高,则在特定层次进行微调模型,如输入层和全连接的最终分类层,可获得较好效果.

2 对抗学习

2.1 简介

图2.1 对抗学习原理

如图2.1所示,对抗学习有两个部分,生成网络(Generator Network)和识别网络(Discriminator Network);生成网络用于生成一个"假"图,鉴别网络是一个二分类器,负责比较生成的"假"图与实际图像的相似度,输出比较结果,若为0,则两张图相似度为0%,若为1,则两张图相似度为100%.

2.2 分类过程

图2.2 Gan分类过程

(1) 生成网络(Generator Network)
生成网络:通过随机噪声xix_ixi​和yjy_jyj​在Generator网络中生成一个"假"图(fake images)即fake ouput;
(2) 辨别网络(Discriminator Network)
辨别网络:将真实图像(real image)和生成的图像(fake output)在辨别网络中进行识别,类似于二分类网络,输出辨识结果True或False;若为True则两图像相似度较高,若为0则相似度较低;

所有图片:声明"本人无意侵犯版权"


[参考文献]
[1]https://en.wikipedia.org/wiki/Transfer_learning
[2]https://blog.csdn.net/u010159842/article/details/79202107
[3]https://blog.csdn.net/just_sort/article/details/79454054


人工智能基础:迁移学习对抗学习简述相关推荐

  1. 深度学习:AI对抗学习比深度、增强学习能好多少

    人工智能中,或许对抗学习是继深度学习.增强学习之后下一个热点,但是,它只对中等难度的任务具有实用性,依然不能解开"迁移学习"(实际中不可行)所追求的那种像人一样跨越多个领域,具备所 ...

  2. 深度对抗学习在图像分割和超分辨率中的应用

    原文:http://blog.csdn.net/shenziheng1/article/details/72821001 深度对抗学习在图像分割和超分辨率中的应用 原创 2017年05月31日 16: ...

  3. 论文浅尝 - WWW2020 | 通过对抗学习从用户—项目交互数据中挖掘隐含的实体偏好来用于知识图谱补全任务...

    笔记整理 | 陈湘楠,浙江大学在读硕士. 现有的知识图谱补全方法都在试图设计全新的学习算法,来使用已知的事实信息去推理知识图谱中的潜在语义.但随着知识图谱的广泛使用,知识图谱中的许多实体对应着应用程序 ...

  4. 人工智能基础部分1-人工智能的初步认识

    1.1 人工智能 人工智能(Artificial Intelligence)就是让机器具有人类的一样的智慧,有人类的视觉.听觉.阅读.写作等能力.人类大脑是经过了上亿年的进化才形成的复杂结构,但我们至 ...

  5. 人工智能基础部分3-方差损失函数的概念

    大家好,我是微学AI,今天给大家介绍一下方差损失函数的概念: 方差损失函数是指计算模型在训练集上的表现和在测试集上的表现之间的差异.它衡量着模型的拟合能力,也可以用来衡量模型的泛化能力.方差损失函数可 ...

  6. 人工智能、机器学习、深度学习、强化学习、迁移学习概念辨析

    整体来看:AI>机器学习(ML)>深度学习=强化学习=迁移学习 一.人工智能 ​        1956年,计算机科学家 John McCarthy提出了"人工智能"的 ...

  7. 人工智能 - paddlepaddle飞桨 - 深度学习基础教程 - 个性化推荐

    人工智能 - paddlepaddle飞桨 - 深度学习基础教程 - 个性化推荐 本教程源代码目录在book/recommender_system,初次使用请您参考Book文档使用说明. 说明: 硬件 ...

  8. 综述 | 联邦学习-新兴的人工智能基础技术

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 编辑:Sophia 计算机视觉联盟  报道  | 公众号 CVLianMeng 转载于 :arivx, 专知 [人工 ...

  9. 零基础小白该如何学习人工智能?

    人工智能近年来在我国发展迅猛,国内各大科技公司都分别推出了自己的人工智能发展战略,但是目前国内关于人工智能方面的人才却是十分的紧缺,各大企业对人工智能人才的需求迅速增长,这也就导致了很多人想要转行进入 ...

最新文章

  1. LeetCode实战:字符串相加
  2. JWT简介json web token bear token
  3. RecyclerView Adapter 所使用的数据list发生变化需要注意的事情
  4. python qt 拖拽组件使用方法_Python QT组件库qtwidgets的使用
  5. Exploit开发系列教程-Mona 2 SEH
  6. java 取栈顶元素_java集合系列(7)Stack
  7. 6.1儿童节特别礼物,mysql同步失败
  8. 伪类如何动态在html设置样式,VUE项目中对伪类动态设置样式
  9. 分布式技术一周技术动态 2015.12.27
  10. ubuntu安装opencv4.X+opencv_contrib教程(c++)
  11. php mp3播放列表,ubuntu的本地MP3音乐播放器mpd+mpc
  12. verilog 握手机制学习记录
  13. 名企面试题个人总结——蘑菇街2017校园招聘(特殊交换)
  14. 如何选择一个合适的物联网模块
  15. eve服务器关闭维护几天,关于维护请问,EVE每次维护的具体时间是多 – 手机爱问...
  16. 佳能2420报错代码E000007-0000
  17. 虚拟试戴用时尚拉近了粉丝和剧中人的距离
  18. 微信小程序,引入WeUI组件库 扩展组件库
  19. clear:both 的作用
  20. matlab电机算法仿真,MATLAB电机仿真精华50例源代码

热门文章

  1. linux 上 hexo搭建个人博客
  2. 下载并安装pygame插件
  3. mysql-u-p语句可以接什么参数_Mysql常用语句大全
  4. Python爬虫踩坑记录 _pickle.PicklingError: Can‘t pickle <class>
  5. HTML页面与浏览器自适应
  6. 华为的朋友,与朋友华为
  7. 表格里面怎么打多个√_Excel技巧—如何在Excel中输入√和×
  8. 龙之谷虚拟机为什么登录不了(龙之谷无法连接到登录服务器)
  9. GJB 软件开发计划(模板)
  10. MySQL数据库之DDL语言:库和表的创建CREATE、修改ALTER、删除DROP