One-shot learning

神经网络只需要学习一个函数d

d(img1, img2) = degree of difference between imags

d将输出两张图片的差异,如果有新人加入,则不需要重新训练网络,只需要用新人的照片与数据库中的去作比较

如果输出的差异小于某个阈值,则判断为是同一个人

 

 

Siamese network

输入是一张图片,输出是一个向量,这个向量就代表了这个图片,且向量为函数d 的输入

通过将两张图片的向量输入的函数d,就能算出两者的差异

因此,只需训练一个统一的网络用以输出向量即可

 

三元组损失

 

一个有很多组的数据集,其中每一组是有三张图片,分别用A P N表示

其中A和P是同一个人

训练的目的就是使|f(A) - f(P)|^2   - |f(A) - f(N)|^2 + k <= 0, k是一个超参数,目的是让同一个人图片与不同人图片的差异尽量大

规范化式子为 max(|f(A) - f(P)|^2   - |f(A) - f(N)|^2 + k, 0)   即使式子接近或等于0

上一篇:【迁移学习(Transfer L)全面指南】零次学习(Zero-Shot Learning)入门


下一篇:【论文阅读】Prior Guided Feature Enrichment Network for Few-Shot Segmentation