机器学习训练方法zero-shot, one-shot和few-shot Learning,你都懂了吗?

点击下方“JavaEdge”,选择“设为星标”

第一时间关注技术干货!

免责声明~

任何文章不要过度深思!

万事万物都经不起审视,因为世上没有同样的成长环境,也没有同样的认知水平,更「没有适用于所有人的解决方案」

不要急着评判文章列出的观点,只需代入其中,适度审视一番自己即可,能「跳脱出来从外人的角度看看现在的自己处在什么样的阶段」才不为俗人

怎么想、怎么做,全在乎自己「不断实践中寻找适合自己的大道」

1 Zero-shot learning

零样本学习。

1.1 任务定义

利用训练集数据训练模型,使得模型能够对测试集的对象进行分类,但是训练集类别和测试集类别之间没有交集;期间需要借助类别的描述,来建立训练集和测试集之间的联系,从而使得模型有效。

Zero-shot learning 就是希望我们的模型能够对其从没见过的类别进行分类,让机器具有推理能力,实现真正的智能。其中零次(Zero-shot)是指对于要分类的类别对象,一次也不学习。

1.2 实例

假设我们的模型已经能够识别马、老虎和熊猫了,现在需要该模型也识别斑马,那么我们需要告诉模型,怎样的对象才是斑马,但是并不能直接让模型看见斑马。所以模型需要知道的信息是马的样本、老虎的样本、熊猫的样本和样本的标签,以及关于前三种动物和斑马的描述。

通俗点说就是:假设小暗(纯粹因为不想用小明)和爸爸,到了动物园,看到了马,然后爸爸告诉他,这就是马;之后,又看到了老虎,告诉他:“看,这种身上有条纹的动物就是老虎。”;最后,又带他去看了熊猫,对他说:“你看这熊猫是黑白色的。”然后,爸爸给小暗安排了一个任务,让他在动物园里找一种他从没见过的动物,叫斑马,并告诉了小暗有关于斑马的信息:“斑马有着马的轮廓,身上有像老虎一样的条纹,而且它像熊猫一样是黑白色的。”最后,小暗根据爸爸的提示,在动物园里找到了斑马(意料之中的结局。。。)。

上述例子中包含了一个人类的推理过程,就是利用过去的知识(马、老虎、熊猫和斑马的描述),在脑海中推理出新对象的具体形态,从而能对新对象进行辨认。Zero-shot learning就是希望能够模仿人类的这个推理过程,使得计算机具有识别新事物的能力。

2 One-shot learning

单样本学习

Zero-shot learning 指的是我们之前没有这个类别的训练样本。但是我们可以学习到一个映射X->Y。如果这个映射足够好的话,我们就可以处理没有看到的类了。

One-shot learning 指的是我们在训练样本很少,甚至只有一个的情况下,依旧能做预测。这是如何做到呢?可以在一个大数据集上学到general knowledge(具体的说,也可以是X->Y的映射),然后再到小数据上有技巧的update。

2.1 One-Shot Learning的意义

① 减少训练数据

深度学习需要大量的数据。如MNIST为了10个类别的区分,需要60000张训练图像,平均一个类别需要6000张训练图像。

One-Shot试图将一个类别的训练图像减少,极端情况时只有一张图片。

② 在新类别的数据出现时,无需重新训练

传统的神经网络无法处理没有出现在训练集中的类别。

如以员工刷脸打卡为例,使用深度神经网络,每一个新员工入职,都是一个类别,需要重新训练深度神经网络。如果每天都有新员工入职,每天都要重新训练网络,成本非常高。

One-Shot Learning可以无需重新训练即可应用于新的类别的数据。

One-shot learning 属于Few-shot learning的一种特殊情况。

3 Few-shot learning

小样本学习

如果训练集中,不同类别的样本只有少量,则称为Few-shot learning.

就是给模型待预测类别的少量样本,然后让模型通过查看该类别的其他样本来预测该类别。比如:给小孩子看一张熊猫的照片,那么小孩子到动物园看见熊猫的照片之后,就可以识别出那是熊猫。

Few-shot Learning V.S Zero-shot Learning

  • 小样本学习的目的是在有少量训练数据的情况下能获得准确分类测试样本的模型

  • 零样本学习的目的是预测训练数据集中没有出现过的类

零样本学习和小样本学习有很多共同的应用,如:

  • 图像分类 (image classification)

  • 语义分割 (semantic segmentation)

  • 图像生成 (image generation)

  • 目标检测 (object detection)

  • 自然语言处理 (natural language processing)

另外单样本学习 (one-shot learning) 经常会和零样本学习混在一起。单样本学习是小样本学习问题的一个特例,它的目的是从一个训练样本或图片中学习到有关物体类别的信息。单样本学习的一个例子是,智能手机中使用的人脸识别技术。

完整专栏内容,尽在编程严选网免费阅读学习:

6838e79b80782980b3730525bd06cdd6.png

写在最后

编程严选网http://www.javaedge.cn/ 专注分享软件开发全生态相关技术文章视频教程资源、热点资讯等,全站资源免费学习,快来看看吧~

1b553a4a3ac6780428257298d720111c.png

欢迎长按图片加好友,我会第一时间和你分享软件行业趋势面试资源学习方法等等。

bead0bd96547b0762eaae7270edf5323.jpeg添加好友备注【技术群交流】拉你进技术交流群

关注公众号后,在后台私信:

  • 回复【架构师】,获取架构师学习资源教程

  • 回复【面试】,获取最新最全的互联网大厂面试资料

  • 回复【简历】,获取各种样式精美、内容丰富的简历模板

  • 回复 路线图,获取直升Java P7技术管理的全网最全学习路线图

  • 回复 大数据,获取Java转型大数据研发的全网最全思维导图

  • 更多教程资源应有尽有,欢迎关注并加技术交流群,慢慢获取

  • 为避免大量资源被收藏而浪费精力,以上全部需要收取1元门槛费

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值