Few-Shot Learning

Few-Shot Learning(小样本学习)与 Mata-Learning(元学习)

小样本学习问题:学会区分图片之间是相同的还是不同的,模型判断两个图片是否异同
在这里插入图片描述
Support Set: 带有标签的图片,(每类有2个图片),在预测的时候提供一些额外的信息
在这里插入图片描述
Meta learning: 让模型自己学会学习
在这里插入图片描述
6 way 1 shot
在这里插入图片描述
way 越大,分类准确率会降低
shot越大,分类准确率会增加

Learn a Similarity Function
在这里插入图片描述
1.先从一个大数据集中学习一个相似度函数
2.使用相似度函数做预测(使用Query中的图 与 Support Set中的图进行依次求相似度,得到最相似的类别)

Dataset:
在这里插入图片描述
mini-imagenet

Siamese Network (孪生网络)

每次取两个样本,计算相似度

1.从数据集中随机抽样获得正样本和负样本

在这里插入图片描述
2. 构建卷积神经网络用于获取特征,获得特征向量在这里插入图片描述
3. 训练孪生网络
在这里插入图片描述](https://img-blog.csdnimg.cn/20200810212005144.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzIxMzMw,size_16,color_FFFFFF,t_70)

在这里插入图片描述
提取特征的网络是一个,图片经过提取特征的网络之后得到特征向量h1, h2, z = | h1 - h2 | , 表示x1 和 x2 向量之间的差别,在经过Dense Layers + Sigmoid来处理z向量 获得一个标量,来表示x1 和 x2之间的相似度。
正样本的数目和负样本的数目要一致。

4.one-shot prediction
在这里插入图片描述
Support Set 不在训练集中,判断Query属于哪个类。

Triplet Loss

  1. 准备训练数据
    在这里插入图片描述
    选择一个anchor图片(比如Tiger类中最下面的那个),在同类中选择一个正样本,在不同类中选择一个负样本。
    在这里插入图片描述
    我们希望d+ 很小,d-很大。
    根据我们所希望的,定义损失函数
    在这里插入图片描述
    α是一个超参数
    在这里插入图片描述
    计算特征向量之间的距离,取最小的。
    (测试的这个数据 在训练集中没有出现过)

Summary

使用孪生网络解决 Few-shot learning
在这里插入图片描述
Embedding: 把图片映射成特征向量(效果比较好)

Pretraining and Fine Tuning

Cosine Similarity

在这里插入图片描述
x在w上的投影

Softmax Function

在这里插入图片描述
在这里插入图片描述
softmax会让最大的值变大,其余的值变小

在这里插入图片描述
x是一个特征向量,w和b是参数
现在的训练流程:
先用一个大数据集来预训练一个神经网络,用来从图片中提取特征,做few-shot 预测的时候,使用这个预训练的神经网络。把Query和Support Set中的图片映射成特征向量,比较Query和Support Set在特征空间上的相似度,计算两两之间的相似度,选择相似度最高的,作为query的分类结果。

在这里插入图片描述
先用预训练的网络f 来提取向量,然后取均值,然后进行归一化。分类的时候,query通过预训练的网络f 来提取特征向量然后归一化成q,拿q跟 u1 u2 u3 分别做对比。
M = 【 u1,
u2,
u3

在这里插入图片描述

Fine-Tuning

在这里插入图片描述
将固定W b , W=M and b=0, 改成在Support Set上进行训练,学习W b
在这里插入图片描述
在这里插入图片描述
使用crossentropy 来衡量差别,Sum over all the samples in the support set.
由于样本很小,可以在后面加入Regularization来防止过拟合。
在这里插入图片描述

在这里插入图片描述

Trick 1:A good initialization
将W初始化为M,将b初始化为0,不要随机初始化。
在这里插入图片描述
Trick2: 使用合适的Regularization 来防止过拟合
在这里插入图片描述
对每一个Query求出Entropy,取平均作为Entropy regularization
我们希望Entropy regularization越小越好。

在这里插入图片描述

Trick2: 结合Cosine Similarity 和 Softmax Classifier
在这里插入图片描述

summary

在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_36321330/article/details/107917962