原理
Triplet是一个三元组,这个三元组是这样构成的:从训练数据集中随机选一个样本,该样本称为Anchor,然后再随机选取一个和Anchor (记为x_a)属于同一类的样本Positive (记为x_p)和不同类的样本Negative (记为x_n),由此构成一个(Anchor,Positive,Negative)三元组。
Triplet loss中的margin取值分析
我们的目的是为了让loss在训练迭代中下降的越小越好,即使Anchor和Positive越接近越好,Anchor和Negative越远越好,并且要让x_a与x_n之间的距离和x_a与x_p之间的距离之间有一个最小的间隔。简而言之,Triplet loss就是要使类内距离越小,类间距离越大。
|
|
相关
区分相似图形,除了triplet loss,还有一篇CVPR:《Deep Relative Distance Learning: Tell the Difference Between Similar Vehicles》提出的Coupled Cluster Loss.
本文参考: