1.Siamese network
Siamese [saiə' mi:z] 孪生
左图的孪生网络是指两个网络通过共享权值实现对输入的输出,右图的伪孪生网络则不共享权值(pseudo-siamese network)。
孪生神经网络是用来衡量两个输入的相似度,可以用来人脸验证、语义相似度分析、QA匹配度,loss可以选择softmax或contrastive、其他,在计算loss时,可以选择cosine距离或者欧式距离。
三包胎网络Triplet network,是孪生神经网络的升级版,输入是三个,Anchor-Postive-Negative,训练的目标是让相同类别间的距离尽可能的小,让不同类别间的距离尽可能的大。