Zero shot learning
主要考察的问题是如何建立语义和视觉特征的关系(视觉特征一般用预训练好的CNN提取特征,不再进行fine-tine)
为了预测从未在训练集上出现的目标种类,仿照人的思维迁移,能根据某些特征描述(他和谁长得像,有点类似于科学家第一次看见鸭嘴兽的感觉),猜测一个从未见过的目标种类。
Zero shot learning:假设斑马是未见过的类别,但根据描述和过去知识的印象即马(和马相似)、老虎(有条纹)、熊猫(颜色)相似进行推理出斑马的具体形态,从而能对新对象进行辨认。
零次学习就是希望能够模仿人类的这个推理过程,使得计算机具有识别新事物的能力
过程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cKclHUwA-1638407670286)(C:\Users\Lan\AppData\Roaming\Typora\typora-user-images\image-20211017221158387.png)]
Zero shot 需要解决的困难
- 获取合适的类别描述A(进展较小,描述的获取主要集中于一些NLP方法且难度较大)
- 建立一个合适的分类模型(主要工作集中于此,目前的方法较多,比较容易出结果)
建立合适的分类模型
主要工作:建立特征空间与语义空间之间的映射
1.分类:最简单形式是岭回归👇(均方差+范数约束)。 x x x
min
∥
X
t
r
W
−
A
t
r
∥
2
+
η
Ω
(
W
)
(
1
)
\min \left\|X_{t r} W-A_{t r}\right\|^{2}+\eta \Omega(W)(1)
min∥XtrW−Atr∥2+ηΩ(W)(1)
岭回归有效的原因是训练集类别语义与测试集类别语义之间的联系很密切。
Zero shot存在的问题
①领域漂移
即把没见过的类别识别成见过的类别,无法正确识别出新出现的类别。
同一属性在不同类别中视觉特征相差很大,都有尾巴但在特征空间上尾巴属性的分布是不一样的,这就会导致使用斑马训练的目标检测器可能把新出现的猪照样识别成驴。
解决措施
主要是对视觉空间到语义空间的映射增加约束
样本的特征维度比语义维度大,建立X到S的映射往往会丢失特征,为了保留更多的信息,保持更多的丰富性,最流行的做法是将映射到语义空间中的样本,再重建回去,这样学习到的映射就能够得到保留更多的信息。
作者利用测试集的未标注图像,得到测试图像的视觉空间V,映射的语义空间A,将V和A做主成分相关分析,映射到一个新的空间Z,Z很好的align原有的视觉空间V。
因此,在原来简单岭回归[1]的基础上,可以将目标函数改为
min
∥
X
t
r
−
W
T
A
t
r
∥
2
+
λ
∥
W
X
t
r
−
A
t
r
∥
2
(
2
)
\min \left\|X_{t r}-W^{T} A_{t r}\right\|^{2}+\lambda\left\|W X_{t r}-A_{t r}\right\|^{2} (2)
min∥∥Xtr−WTAtr∥∥2+λ∥WXtr−Atr∥2(2)
其实是一个简易的自编码过程。
在AwA数据集上进行测试,可以得到83.2%的准确率,比简单的岭回归(1)提高了24.1%。
②原型稀疏问题prototype sparsity problem
只用给定的语义信息无法很好的表示类的分布,会出现原型稀疏问题,就是一个原型无法很好的表示类别的分布。
2.枢纽点问题(hubness problem)
高维空间中,某些点会成为大多数点的最近邻点,在ZSL最后计算正确率时使用的KNN会受到hubness problem的影响,而且基于岭回归的方法会加重hubness problem。
解决措施
① 如果模型建立的方式为岭回归,那么可以建立从语义空间到特征空间的映射(将目标函数(1)改为👇,从而不加深hubness problem对结果的影响:
min
∥
X
t
r
−
A
t
r
W
∥
2
+
η
Ω
(
W
)
(
3
)
\min \left\|X_{t r}-A_{t r} W\right\|^{2}+\eta \Omega(W)(3)
min∥Xtr−AtrW∥2+ηΩ(W)(3)
在AwA数据集上,这种简单的改变能够得到76.5%的正确率,比原本提高了17.4%。
3.语义间隔
样本的特征往往是视觉特征,比如用深度网络提取到的特征,而语义表示却是非视觉的,这直接反应到数据上其实就是:样本在特征空间中所构成的流型与语义空间中类别构成的流型是不一致的,这使得直接学习两者之间的映射变得困难。
本质:两者流型结构不一致
解决措施
用类别语义表示的K近邻样本点重新表示类别语义,使得两者的流型调整到一致,再学习两者之间的映射
4.semantic loss问题(研究的较少)
5.样本通过映射坍塌到一点(研究的较少)
用类别语义表示的K近邻样本点重新表示类别语义,使得两者的流型调整到一致,再学习两者之间的映射
4.semantic loss问题(研究的较少)
5.样本通过映射坍塌到一点(研究的较少)