赞
踩
本文主要参考:
https://github.com/jindongwang/transferlearning-tutorial/tree/master/markdown
第 1 章介绍了迁移学习的概念,重点解决什么是迁移学习、为什么要进行迁移学习这
两个问题。
第 2 章介绍了迁移学习的研究领域。
第 3 章介绍了迁移学习的应用领域。
第 4 章是迁移学习领域的一些基本知识,包括问题定义,域和任务的表示,以及迁移
学习的总体思路。特别地,我们提供了较为全面的度量准则介绍。度量准则是迁移学习领域
重要的工具。
第 5 章简要介绍了迁移学习的四种基本方法,即基于样本迁移、基于特征迁移、基于
模型迁移、基于关系迁移。
第 6 章到第 8 章,介绍了领域自适应的 3 大类基本的方法,分别是:数据分布自适应
法、特征选择法、子空间学习法。
第 9 章重点介绍了目前主流的深度迁移学习方法。
目录
迁移学习的核心问题: 找到新问题和原问题之间的相似性,才可以顺利地实现知识的迁移。比如天气问题中,那些北半球的天气之所以相似,是因为它们的地理位置相似;而南北半球的天气之所以有差异,也是因为地理位置有根本不同。
机器学习的语言来对迁移学习定义:利用数据、任务、或模型之间的相似性,将在旧领域学习过的模型,应用于新领域的一种学习过程。
迁移学习是中国领先于世界的少数几个人工智能领域之一
传统机器学习矛盾 | 迁移学习解决方法 |
大数据与少标注 (大数据总是缺乏完善的数据标注) | 迁移数据标注 (以寻找一些与目标数据相近的有标注的数据) |
大数据与弱计算 (没有强计算能力的设备) | 模型迁移 (将大公司在大数据上训练好的模型,针对于我们的任务进行微调/自适应更新) |
普适化模型与个性化需求 (将通用的模型加以改造和适配,使之适应不同的数据情形) | 自适应学习 (调整普适化模型) |
特定应用 (推荐系统的冷启动问题) | 相似领域知识迁移 (数据和模型) |
负迁移(Negative Transfer), 相似性找的不合理,如拿骑自行车的经验来学习开汽车,这个任务基本上完不成。
负迁移定义: 负迁移指的是,在源域上学习到的知识,对于目标域上的学习产生负面作用。
产生负迁移的原因主要有:
数据问题:源域和目标域压根不相似,谈何迁移?
方法问题:源域和目标域是相似的,但是,迁移学习方法不够好,没找到可迁移的成分。
传递迁移学习: 传统迁移学习就好比是踩着一块石头过河,传递迁移学习就好比是踩着连续的两块石头
远领域迁移学习: 可以用人脸来识别飞机!这就好比是踩着一连串石头过河. 传统迁移学习只有两个领域足够相似才可以完成,而当两个领域不相似时,传递迁移学习却可以利用处于这两个领域之间的若干领域,将知识传递式的完成迁移。可以视为解决负迁移的有效思想和方法
迁移学习的分类四个准则:目标域有无标签、学习方法、特征、离线与在线形式
其中, 少标签或无标签的问题(半监督和无监督迁移学习),是研究的热点和难点。这也是本手册重点关注的领域。
4类学习方法: 基于样本, 基于特征, 基于模型, 基于关系
基于样本的迁移学习方法 (Instance based Transfer Learning)
权重重用, 相似的样本,给高权重
基于特征的迁移学习方法 (Feature based Transfer Learning)
特征进行变换. 假设源域和目标域的特征原来不在一个空间,或者在原来那个空间上不相似,把它们变换到一个空间里面.(研究热门)
基于模型的迁移学习方法 (Model based Transfer Learning)
构建参数共享的模型. 神经网络最经典的finetune就是模型参数迁移(用的多)
基于关系的迁移学习方法 (Relation based Transfer Learning)
利用关系(授课/开会)进行类比
按照特征属性,迁移学习可以分为:
同构迁移学习 (Homogeneous Transfer Learning), 语义和维度都相同(图片的迁移).
异构迁移学习 (Heterogeneous Transfer Learning), (图片到文本的迁移)
离线迁移学习 (Offline Transfer Learning): 常用, 但无法加入新数据更新
在线迁移学习 (Online Transfer Learning): 随着数据的动态加入, 而更新算法
计算机视觉、文本分类、行为识别、自然语言处理、室内定位、视频监控、舆情分析、人机交互等
计算机视觉
在计算机视觉中,迁移学习方法被称为 Domain Adaptation
本部分中出现的所有符号和表示形式,是以后章节的基础
基本概念:领域 (Domain) 和任务 (Task)
领域 (Domain)
学习的主体
领域(花体D)=数据+数据的概率分布(大写斜体P)
迁移: 知识从源领域传递到目标领域
两个基本领域: 源领域Source Domain(有知识/标注)和目标领域Target Domain(赋予知识/标注)
任务(Task)
学习的目标
任务=标签+标签对应的学习函数
迁移学习(Transfer Learning)
给定一个有标记的源域D_s和一个无标记的目标域D_t, 这两个领域的数据分布P(x_s)≠ P(x_t). 借助D_s的知识,来学习目标域D_t的知识(标签).
需要考虑特征空间, 类别空间, 条件概率分布Q(y|x)的异同.
领域自适应(Domain Adaptation)
给定一个有标记的源域D_s和一个无标记的目标域D_t,假定它们的特征空间/类别空间/条件概率分布相同. 但是这两个域的边缘分布不同P_s(x_s)≠ P_t(x_t).
目标利用有标记的数据D_s去学习分类器f:x_t->y_t来预测目标域的标签.
常用符号
符号 | 含义 |
| 源域数据 / 目标域数据 |
| 样本向量 / 数据集矩阵 / 特征空间 |
| 类别向量 / 类别空间 |
| (源域样本数,目标域样本数) |
| 源域数据 / 目标域数据的边缘分布 一般难以给出P 的具体形式 |
| 源域数据 / 目标域数据的条件分布 |
| 要学习的目标函数 |
迁移学习核心思想:
1. 寻找源领域和目标领域之间的相似性/不变量
2. 度量和利用相似性(度量相似程度, 增大相似性)
度量: 描述源域和目标域的距离
文中主要包括:
常见的几种距离
相似度
Jaccard 相关系数
KL 散度与 JS 距离
最大均值差异 MMD
Principal Angle
A-distance
Hilbert-Schmidt Independence Criterion
Wasserstein Distance
其中, 距离, 相似度, Jaccard 相关系数之前学习聚类的时候学过, 可参考
https://blog.csdn.net/lagoon_lala/article/details/119712648
剩下的由于时间紧张, 等用到再学.
数学推导统一搁置, mark一下, 下一篇笔记着重看MMA
四种基本的方法:基于样本/模型/特征/关系的迁移
基本原理和代表性相关工作
Instance based Transfer Learning
根据一定的权重生成规则,对数据样本进行重用.
通常只在领域间分布差异较小时有效.
权重计算
实例的维度和数量都非常大, 难以直接估计其概率分布.
通常样本权重=分布比值的估计, 且假设源域和目标域的条件概率分布相同:
Feature based Transfer Learning
通常假设源域和目标域间有一些交叉的特征, 通过特征变换减少源域和目标域之间的差距.
根据特征又分为同构和异构迁移学习.
下一节详细讲
Parameter/Model based Transfer Learning
源域中的数据与目标域中的数据共享一些模型的参数
大多数基于模型的迁移学习方法都与深度神经网络进行结合.
Relation Based Transfer Learning
关注源域和目标域的样本之间的关系
通过马尔科夫逻辑网络(Markov Logic Net)挖掘关系相似性
Distribution Adaptation
常用的迁移学习方法
源域和目标域的数据概率分布不同,通过变换,将不同的数据分布的距离拉近.
数据概率分布不同 | 边缘分布不同 | 数据整体不相似 |
条件分布不同 | 数据整体相似 但是每个类不相似 |
数据分布自适应方法 根据数据分布的性质划分:
边缘分布自适应
条件分布自适应
联合分布自适应
动态分布自适应
精度比较:DDA > JDA > TCA > 条件分布自适应
Marginal Distribution Adaptation
目标
减小源域和目标域的边缘概率(数据整体)分布的距离
核心方法TCA
迁移成分分析Transfer Component Analysis
减小源域和目标域的边缘概率不同, 对数据使用特征映射φ. 假设数据边缘分布接近后, 两个领域的条件分布也会接近.
目标: 找φ
度量距离: 最大均值差异(MMD,maximum mean discrepancy)
数学推导统一搁置, mark一下, 下一篇笔记着重看TCA
TCA方法的步骤
输入是两个特征矩阵,我们首先计算L和H矩阵,然后选择一些常用的核函数进行映射(比如线性核、高斯核)计算K,接着求(KLK+μI)^-1KHK的前m个特征值.
得到的就是源域和目标域的降维后的数据,可用传统机器学习方法.
TCA扩展改进
ACA, DTMKL, TJM, DDC, DAN, DME, CMD
Conditional Distribution Adaptation
目标: 减小源域和目标域的条件概率分布的距离
STL方法
类内迁移计算每一类别的MMD距离,利用类内特征,实现更好的迁移效果
首先利用大多数投票的思想,对无标定的位置行为生成伪标签;然后在再生核希尔伯特空间中,利用类内相关性进行自适应地空间降维,使得不同情境中的行为数据之间的相关性增大;最后,通过二次标定,实现对未知标定数据的精准标定。
距离使用MMD
目标: 分别减小边缘分布和条件分布的距离
TCA边缘分布适配+条件分布适配
优化问题
平衡分布自适应 BDA
(Balanced Distribution Adaptation)
根据数据领域中整体分布与类间分布差异的情况,采用平衡因子μ, 自适应地调整分布适配过程中边缘分布和条件分布的重要性
其中的平衡因子μ可以通过分别计算两个领域数据的整体和局部的A-distance近似给出
动态分布自适应DDA
(Dynamic Distribution Adaptation)
监督迁移学习问题可以通过交叉验证 (cross-validation)来确定μ最优的取值.
无监督对μ估计:随机猜测和最大最小平均法
DDA对μ定量估计: A-distance
扩展
基于流形学习的动态迁移方法MEDA (Manifold Embedded Distribution Alignment)
基于深度学习的动态迁移方法DDAN (Deep Dynamic Adaptation Network)
假设
公共特征上,源领域和目标领域的数据分布一致.
机器学习选择出共享的特征,构建统一模型.
通常与分布自适应方法进行结合
核心方法
SCL(Structural Correspondence Learning)找公共特征(Pivot feature)
假设
源域和目标域数据在变换后的子空间有相似的分布
按特征变换形式分类
统计特征对齐方法(基于统计特征变换)
流形学习方法(基于流形变换)
将数据的统计特征进行变换对齐
SA方法(Subspace Alignment,子空间对齐)
找一个线性变换M, 将不同的数据实现变换对齐
SDA方法(Subspace Distribution Alignment)
在SA的基础上,加入了概率分布自适应A
CORA方法(CORrelation ALignment)
对两个领域进行二阶特征对齐(协方差矩阵)
假设
数据从一个高维空间中采样, 所以具有高维空间中的低维流形(一种几何对象)结构.
流形空间中的距离度量
多维空间两点之间测地线最短(如曲面展开摊平后画线段)
将原始空间下的特征变换到流形空间中(可避免特征扭曲). 常用Grassmann流形.
流形变换的迁移学习方法
SGF: 增量式行走-路是一步一步走出来的. 把源域和目标域都分别看成是高维空间中的两个点,在这两个点的测地线距离上取d个中间点,依次连接.
GFK (Geodesic Flow Kernel):
1. 解决中间点的个数问题: 通过核学习,利用路径上的无穷个点的积分,。
2. 使用哪个源域跟目标域进行迁移问题: 通过Rank of Domain度量, 找出跟目标域最近的源域
第9章深度迁移主要讲finetune, 一般挪前3层, 略了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。