一、迁移学习方法论
1.meta learning(元学习)
(1)元学习介绍
元学习希望使得模型获取调整超参数的能力,使其可以在获取已有知识的基础上快速学习新的任务。
(2)元学习目的
元学习和机器学习的区别在于:机器学习是先人为调参,之后直接训练特定任务下深度模型。元学习则是先通过其它的任务训练出一个较好的超参数,然后再对特定任务进行训练。
这些超参数可以是初始化参数、选择优化器、定义损失函数、梯度下降更新参数等。
(3)元学习流程
在机器学习中,训练单位是样本数据,通过数据来对模型进行优化;数据可以分为训练集、测试集和验证集。
在元学习中,训练单位是任务,一般有两个任务分别是训练任务(Train Tasks),和测试任务(Test Task)。
训练任务
在训练任务中给定h个子训练任务,每个子训练任务的数据集分为 Support set 和 Query set。
1.首先通过这h个子任务的 Support set 训练 ,分别训练出针对各自子任务的模型参数
θ
k
∗
\theta^*_k
θk∗。
2.然后用不同子任务中的 Query set 分别去测试
θ
k
∗
\theta^*_k
θk∗ 的性能,并计算出预测值
P
i
k
q
P_i^{kq}
Pikq和真实标签
Y
i
k
q
Y_i^{kq}
Yikq 的损失
l
k
l_k
lk。
3.接着整合这h个损失函数为
L
(
φ
)
L(\varphi)
L(φ):
4.最后利用梯度下降法去求出超参数 φ \varphi φ去更新参数 { θ i ∗ } i = 1 k \{\theta^*_i\}^k_{i=1} {θi∗}i=1k,从而找到最优的超参设置 φ ∗ \varphi^* φ∗;如果 φ ∗ \varphi^* φ∗不可求,则可以采用强化学习或者进化算法去解决。
测试任务
测试任务是正常的机器学习的过程,它将数据集划分为训练集和测试集。
训练任务的目的是找到一个好的超参设置 φ ∗ \varphi^* φ∗,利用这个先验知识可以对特定的测试任务 f 进行更好的训练。
参考文章:
一文通俗讲解元学习(Meta-Learning)
2.metric learning(度量学习)
(1)度量(Metric)的定义
在数学中,一个度量(或距离函数)是一个定义集合中元素之间距离的函数。一个具有度量的集合被称为度量空间。
(2)为什么要用度量学习
很多的算法越来越依赖于在输入空间给定的好的度量。例如K-means、K近邻方法、SVM等算法需要给定好的度量来反映数据间存在的一些重要关系。这一问题在无监督的方法(如聚类)中尤为明显。举一个实际的例子,考虑图1的问题,假设我们需要计算这些图像之间的相似度(或距离,下同)(例如用于聚类或近邻分类)。面临的一个基本的问题是如何获取图像之间的相似度,例如如果我们的目标是识别人脸,那么就需要构建一个距离函数去强化合适的特征(如发色,脸型等);而如果我们的目标是识别姿势,那么就需要构建一个捕获姿势相似度的距离函数。为了处理各种各样的特征相似度,我们可以在特定的任务通过选择合适的特征并手动构建距离函数。然而这种方法会需要很大的人工投入,也可能对数据的改变非常不鲁棒。度量学习作为一个理想的替代,可以根据不同的任务来自主学习出针对某个特定任务的度量距离函数。
(3)度量学习的方法
度量学习方法可以分为通过线性变换的度量学习和度量学习的非线性模型。
1)通过线性变换的度量学习
由于线性度量学习具有简洁性和可扩展性(通过核方法可扩展为非线性度量方法),现今的研究重点放在了线性度量学习问题上。线性的度量学习问题也称为马氏度量学习问题,可以分为监督的和非监督的学习算法。
监督的马氏度量学习可以分为以下两种基本类型:
I 监督的全局度量学习:该类型的算法充分利用数据的标签信息。如
Information-theoretic metric learning(ITML)
Mahalanobis Metric Learning for Clustering([1]中的度量学习方法,有时也称为MMC)
Maximally Collapsing Metric Learning (MCML)
II 监督的局部度量学习:该类型的算法同时考虑数据的标签信息和数据点之间的几何关系。如
Neighbourhood Components Analysis (NCA)
Large-Margin Nearest Neighbors (LMNN)
Relevant Component Analysis(RCA)
Local Linear Discriminative Analysis(Local LDA)
此外,一些很经典的非监督线性降维算法可以看作属于非监督的马氏度量学习。如
主成分分析(Pricipal Components Analysis, PCA)
多维尺度变换(Multi-dimensional Scaling, MDS)
非负矩阵分解(Non-negative Matrix Factorization,NMF)
独立成分分析(Independent components analysis, ICA)
邻域保持嵌入(Neighborhood Preserving Embedding,NPE)
局部保留投影(Locality Preserving Projections. LPP)
2)度量学习的非线性模型
非线性的度量学习更加的一般化,非线性降维算法可以看作属于非线性度量学习。经典的算法有等距映射(Isometric Mapping,ISOMAP) 、局部线性嵌入(Locally Linear Embedding, LLE) ,以及拉普拉斯特征映射(Laplacian Eigenmap,LE ) 等。另一个学习非线性映射的有效手段是通过核方法来对线性映射进行扩展。此外还有如下几个方面
Non-Mahalanobis Local Distance Functions
Mahalanobis Local Distance Functions
Metric Learning with Neural Networks
参考文章:
度量学习
Metric Learning——度量学习