深度学习500问——Chapter10:迁移学习(2)

2024-06-11 11:04

本文主要是介绍深度学习500问——Chapter10:迁移学习(2),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

11.2 迁移学习的基本思路有哪些

11.2.1 基于样本迁移

11.2.2 基于特征迁移

11.2.3 基于模型迁移

11.2.4 基于关系迁移


11.2 迁移学习的基本思路有哪些

迁移学习的基本方法可以分为四种。这四种基本方法分别是:基于样本的迁移,基于模型的迁移,基于特征的迁移,及基于关系的迁移。

11.2.1 基于样本迁移

基于样本的迁移学习方法(Instance based Transfer Learning)根据一定的权重生成规则,对数据样本进行重用,来进行迁移学习。图14形象地表示了基于样本迁移方法的思想源域中存在不同种类的动物,如狗、鸟、猫等,目标域只有狗这一种类别。在迁移时,为了最大限度地和目标域相似,我们可以人为地提高源域中属于狗这个类别的样本权重。

图14 基于样本的迁移学习方法示意图

在迁移学习中,对于源域Ds和目标域Dt,通常假定产生它们的概率分布是不同且未知的(P(Xs) =P(Xt))。另外,由于实例的维度和数量通常都非常大,因此,直接对 P(Xs) 和P(Xt) 进行估计是不可行的。因而,大量的研究工作 [Khan and Heisterkamp,2016, Zadrozny, 2004, Cortes et al.,2008, Dai et al., 2007, Tan et al.,2015, Tan et al., 2017]着眼于对源域和目标域的分布比值进行估计(P(Xt)/P(Xs))。所估计得到的比值即为样本的权重。这些方法通常都假设P(xs) <并且源域和目标域的条件概率分布相同(P(y|xs)=P(y|xt))。特别地,上海交通大学Dai等人 [Dai et al.,2007]提出了 TrAdaboost方法,将AdaBoost的思想应用于迁移学习中,提高有利于目标分类任务的实例权重、降低不利于目标分类任务的实例权重,并基于PAC理论推导了模型的泛化误差上界。TrAdaBoost方法是此方面的经典研究之一。文献 [Huang et al.,2007]提出核均值匹配方法 (Kernel Mean atching, KMM)对于概率分布进行估计,目标是使得加权后的源域和目标域的概率分布尽可能相近。在最新的研究成果中,香港科技大学的Tan等人扩展了实例迁移学习方法的应用场景,提出 了传递迁移学习方法(Transitive Transfer Learning, TTL) [Tan et al.,2015] 和远域迁移学习 (Distant Domain Transfer Learning,DDTL) [Tan et al.,2017],利用联合矩阵分解和深度神经网络,将迁移学习应用于多个不相似的领域之间的知识共享,取得了良好的效果。

​ 虽然实例权重法具有较好的理论支撑、容易推导泛化误差上界,但这类方法通常只在领域间分布差异较小时有效,因此对自然语言处理、计算机视觉等任务效果并不理想。而基于特征表示的迁移学习方法效果更好,是我们研究的重点。

11.2.2 基于特征迁移

基于特征的迁移方法(Feature based Transfer Learning)是指通过特征变换的方式互相迁移 [Liu et al.,2011, Zheng et al.,2008, Hu and Yang 2011] 来减少源域和目标域之间的差距;或者将源域和目标域的数据特征变换到统一特征空间中 [Pan et al.,2011, Long et al.,2014b, Duan et al.,2012], 然后利用传统的机器学习方法进行分类识别。根据特征的同构和异构性,又可以分为同构和异构迁移学习。图15很形象地表示了两种基于特征的迁移学习方法。

图15 基于特征的迁移学习方法示意图

基于特征的迁移学习方法是迁移学习领域中最热门的研究方法,这类方法通常假设源域和目标域之间有一些交叉的特征。香港科技大学的Pan等人[Pan et al.,2011] 提出的迁移成分分析方法(Transfer Component Analysis,TCA)是其中较为经典的一个方法。该方法的核心内容是以最大均值方差异(Maximum MeanDiscrepancy, MMD)[Borgwardt et al.,2006] 作为度量准则,将不同数据领域中的分布差异最小化。加州大学伯克利分校的Blitzer等人[Blitzer et al.,2006]提出了一种基于结构对应的学习方法(Structural Corresponding Learning,SCL),该算法可以通过映射将一个空间中独有的一些特征变换到其他所有空间中的轴特征上,然后在该特征上使用机器学习的算法进行分类预测。清华大学龙明盛等人[Long et al.,2014b] 提出在最小化分布距离的同时,加入实例选择的迁移联合匹配(Tran-fer Joint Matching, TJM) 方法,将实例和特征迁移学习方法进行了有机的结合。澳大利亚卧龙岗大学的 Jing Zhang 等人[Zhang et al.,2017a]提出对于源域和目标域各自训练不同 的变换矩阵,从而达到迁移学习的目标。

11.2.3 基于模型迁移

基于模型的迁移方法(Parameter/Model based Transfer Learning)是指从源域和目标域中找到他们之间共享的参数信息,以实现迁移的方法。这种迁移方式要求的假设条件是:源域中的数据与目标域中的数据可以共享一些模型的参数。其中代表性的工作主要有 [Zhang et al., 2010, Zhao et al.,2011, Pan et al.,2008b, Pan et al.,2008a]。图16形象地表示了基于模型的迁移学习方法的基本思想。

图16 基于模型的迁移学习方法示意图

​ 其中,中科院计算所的Zhao等人[Zhao et al.,2011]提出了TransEMDT方法。该方法首先针对已有标记的数据,利用决策树构建鲁棒性的行为识别模型,然后针对无标定数据,利用K-Means聚类方法寻找最优化的标定参数。西安邮电大学的Deng等人[Deng et al.,2014]也用超限学习机做了类似的工作。香港科技大学的Pan等人[Pan et al.,2008a]利用HMM,针对Wifi室内定位在不同设备、不同时间和不同空间下动态变化的特点,进行不同分布下的室内定位研究。另一部分研究人员对支持向量机 SVM 进行了改进研究 [Nater et al.,2011, Li et al.,2012]。这些方法假定 SVM中的权重向量 w 可以分成两个部分: w = wo+v, 其中 w0代表源域和目标域的共享部分, v 代表了对于不同领域的特定处理。在最新的研究成果中,香港科技大学的 Wei 等人 [Wei et al.,2016b]将社交信息加入迁移学习方法的 正则项中,对方法进行了改进。清华大学龙明盛等人[Long et al.,2015a, Long et al.,2016, Long et al.,2017]改进了深度网络结构,通过在网络中加入概率分布适配层,进一步提高了深度迁移学习网络对于大数据的泛化能力。

11.2.4 基于关系迁移

基于关系的迁移学习方法(Relation Based Transfer Learning)与上述三种方法具有截然不同的思路。这种方法比较关注源域和目标域的样本之间的关系。图17形象地表示了不同领域之间相似的关系。

​ 就目前来说,基于关系的迁移学习方法的相关研究工作非常少,仅有几篇连贯式的文章讨论:[Mihakova et al.,2007, Mihakova and Mooney,2008, Davis]。这些文章都借助于马尔科夫逻辑网络(Markov Logic Net)来挖掘不同领域之间的关系相似性。

​ 我们将重点讨论基于特征和基于模型的迁移学习方法,这也是目前绝大多数研究工作的热点。

图17 基于关系的迁移学习方法示意图

图18 基于马尔科夫逻辑网的关系迁移

这篇关于深度学习500问——Chapter10:迁移学习(2)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1050987

相关文章

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Redis中高并发读写性能的深度解析与优化

《Redis中高并发读写性能的深度解析与优化》Redis作为一款高性能的内存数据库,广泛应用于缓存、消息队列、实时统计等场景,本文将深入探讨Redis的读写并发能力,感兴趣的小伙伴可以了解下... 目录引言一、Redis 并发能力概述1.1 Redis 的读写性能1.2 影响 Redis 并发能力的因素二、

最新Spring Security实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)

《最新SpringSecurity实战教程之表单登录定制到处理逻辑的深度改造(最新推荐)》本章节介绍了如何通过SpringSecurity实现从配置自定义登录页面、表单登录处理逻辑的配置,并简单模拟... 目录前言改造准备开始登录页改造自定义用户名密码登陆成功失败跳转问题自定义登出前后端分离适配方案结语前言

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Redis 内存淘汰策略深度解析(最新推荐)

《Redis内存淘汰策略深度解析(最新推荐)》本文详细探讨了Redis的内存淘汰策略、实现原理、适用场景及最佳实践,介绍了八种内存淘汰策略,包括noeviction、LRU、LFU、TTL、Rand... 目录一、 内存淘汰策略概述二、内存淘汰策略详解2.1 ​noeviction(不淘汰)​2.2 ​LR

Python与DeepSeek的深度融合实战

《Python与DeepSeek的深度融合实战》Python作为最受欢迎的编程语言之一,以其简洁易读的语法、丰富的库和广泛的应用场景,成为了无数开发者的首选,而DeepSeek,作为人工智能领域的新星... 目录一、python与DeepSeek的结合优势二、模型训练1. 数据准备2. 模型架构与参数设置3

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创