zero/one shot初步理解

雷郭出品

zero shot指的是在分类任务中
训练集中没有A类的样本,只有B,C,D等类的样本
然后我们希望训练好的网络可以识别出A类
这有点骚
强行叫网络去识别它所没有见过的类别
这感觉不可能实现,毕竟常见的神经网络就是具有这种局限性(没见过就不认识)

资料中显示可以提取出A,B,C,D类的一些共有属性
然后不同属性值的组合可以对应不同的类别
比方说以马,老虎,熊猫为B,C,D类(资料中全是举得这种例子)
以斑马为A类

然后人类根据经验可以使用三种属性来辅助网络识别斑马

  1. 像不像马
  2. 有没有条纹
  3. 是不是黑白相间

根据“马”,“老虎”,“熊猫”的训练样本训练一个mapping,这个mapping能将图片feature映射到对应的描述(这个mapping理应关注到图片的动物有没有像马,有没有条纹,是不是黑白的,只有这样才能得到正确的描述,从而在训练集上得分)

当mapping训练好之后,就可以使用这个mapping对未知的类别进行识别
如果x类满足mapping中的某个组合
如像马,有条纹,黑白相间,就可以预测其为斑马

我现在只能理解到这种程度
我的疑惑是这种预测未知类别是假的
因为人是知道这种未知类别的属性
所以可以人为地制造mapping
如果未知的类别连人类都无法知道其属性(比如PA types)
那这种mapping又从何学起

one shot(few shot)指的是训练集中只有一个或少量样本

感觉可以从跟现有已知的类别的相似度来分析
比如斑马跟马很像,跟熊猫,老虎就没那么像

来自网络:
One-shot learning 指的是我们在训练样本很少,甚至只有一个的情况下,依旧能做预测。如何做到呢?可以在一个大数据集上学到general knowledge(具体的说,也可以是X->Y的映射),然后再到小数据上有技巧的update。相关的名词还有 transfer learning , domain adaption。其实Zero/One-shot learning都属于transfer learning,要点在于先学到好的X->Y的关系,希望能应用到其他问题上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值