孪生网络

孪生网络(Siamese network)

孪生神经网络用于处理两个输入"比较类似"的情况。
比如,我们要计算两个句子或者词汇的语义相似度,使用siamese network比较适合;

伪孪生网络(pseudo-siamese network)

伪孪生神经网络适用于处理两个输入"有一定差别"的情况。
如果验证标题与正文的描述是否一致(标题和正文长度差别很大),或者文字是否描述了一幅图片(一个是图片,一个是文字),就应该使用pseudo-siamese network。

## Siamese network loss function一般用哪一种呢?

Softmax当然是一种好的选择,但不一定是最优选择,即使是在分类问题中。传统的siamese network使用Contrastive Loss。损失函数还有更多的选择,siamese network的初衷是计算两个输入的相似度,。左右两个神经网络分别将输入转换成一个"向量",在新的空间中,通过判断cosine距离就能得到相似度了。Cosine是一个选择,exp function也是一种选择,欧式距离什么的都可以,训练的目标是让两个相似的输入距离尽可能的小,两个不同类别的输入距离尽可能的大。

Siamese network的用途有哪些?

这个可以说太多了,nlp&cv领域都有很多应用。

前面提到的词汇的语义相似度分析,QA中question和answer的匹配,签名/人脸验证。
手写体识别也可以用siamese network,网上已有github代码。
还有kaggle上Quora的question pair的比赛,即判断两个提问是不是同一问题,冠军队伍用的就是n多特征+Siamese network,知乎团队也可以拿这个模型去把玩一下。
在图像上,基于Siamese网络的视觉跟踪算法也已经成为热点《Fully-convolutional siamese networks for object tracking》。

作者:fighting41love
链接:https://www.jianshu.com/p/92d7f6eaacf5
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

当网络做单样本学习(One-shot learning)的时候,孪生网络简单的分类一下测试图像与训练集中的图像中哪个最相似就可以了。

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值