一些记录2 小样本,域自适应,增量学习
域自适应(Domain Adaptation)是迁移学习的一种,在机器学习中,当源域和目标域数据分布不同,但是两者的任务相同时,可以使用域自适应,将源域数据训练的精度较高的模型运用到数据较少的目标域中。
白话:任务一样时,训练集和实际样本分布不太一样,需要把训练的域匹配到实际的域上。
三种方法:
样本自适应:就是对样本进行变换。将源域中样本重采样,使其分布趋近于目标域分布;从源域中找出那些长的最像目标域的样本,让他们带着高权重加入目标域的数据学习。
特征层面自适应:将源域与目标域数据都投射到一个公共特征子空间,从而能够将源域训练得到的知识直接应用于目标域中。
模型层面自适应:直接对模型进行修改,将两个领域之间的不同当作先验知识直接引入模型,相当于人工进行改进。

source domain是黑白的,target domain是彩色的,我们希望feature extractor提取的两个domain的特征是一致的,也就是特征层在domain classifier上分类,能分在一起。
小样本
https://zhuanlan.zhihu.com/p/84290146
这些元学习讲的很清晰

数据集中training和testing类可以重叠,也可以不重叠。
训练时,从S取一组5个进入backbone,得到特征向量Zs(5),从Q取1个进入backbone,得到Zq(1)。Zq与Zs一般求余弦相似度,根据真实标签反向传播,一个task。下一个epoch换一批S和Q输入。
训练的时候可能拿不同的类别,主要训练模型的分类能力,也就是特征提取的能力。

2 shot就是取平均,最后还是拿query去和u1,u2,u3比距离,如cosine distance
一般需要预训练模型来提取特征

fine tuning,之前都是直接拿预训练模型得到特征向量的,但是support set中的图片分类可能没有见过,那么可以拿support set中的图片在微调训练下,因为知道support set的真实标签嘛,可以直接分类的。

分类模型中初始化取值,W取M,那M x M,是让特征更集中吗?这里不确定


分类最后会加上一个正则项,需要类别概率不要平均,那么正则项entropy就会大

为啥这里加上一个cosine similarity,效果会好很多?
半监督学习
训练集里有的有标签,有的没有标签。有标签的训练还是正常的监督训练,无标签的更多的为了分布的一致性,希望无标签的输入再输出后一致性高。
增量学习

灾难性遗忘,主要原因是前后不同任务,他的分布不同,loss掉在了不同的位置。
方法1:选择怎么更好的更新神经元

加正则项,让新学的参数与已学的参数距离越小越好。但是要适应新任务,肯定有的参数要距离大,怎么知道哪些参数可以越小越好,哪些参数影响不大呢?加如bi,这个是人为设定的,怎么设?

看参数的梯度,如果梯度大,说明参数敏感,影响loss,这样的话,bi得大点,尽量新任务不调整这个参数。
方法2:把原来任务的权重直接拿过来用
方法3:回放原来任务的训练数据


全局平均池化
