最近在搞三元组损失来做分类的任务,用了VGG16模型进行主干网络进行特征提取,最后用triplet loss来约束网络进行学习。
三元组损失是来优化正样本,负样本与锚点之间的距离的,以margin作为阈值。
但是我在训练时发现使用数据增强的情况下triplet loss并不能降到margin以下,反而是停留在margin附近,此时正样本,负样本,锚点距离都为0,聚在了一起。
而不使用数据增强时只要特征维度不是太小loss就可以降到margin以下。
我的学习率设置为0.0005,MomentumOptimizer,momentum=0.9。
是因为样本本身的原因吗?或者是网络本身的原因?
希望能得到大家的指点,感谢。