biubug6 / Face-Detector-1MB-with-landmark

1M人脸检测模型(含关键点)
MIT License
1.02k stars 271 forks source link

关于损失函数部分confidence的损失值的计算 #17

Open HuColin opened 4 years ago

HuColin commented 4 years ago

https://github.com/biubug6/Face-Detector-1MB-with-landmark/blob/2b075657aef954b9426f938ac7fce100b6910fe6/layers/modules/multibox_loss.py#L101-L117 作者您好,我在阅读您的代码的这一部分产生了一点疑问,这一部分的代码在计算正负置信度的时候似乎与SSD那篇论文的方法不太一样,您在这里采用这种方法的依据或者原因是什么呢? 主要是log_sum_exp函数的实现原因,因为我看到有其他人计算(包括论文中)计算损失函数都是直接使用softmax loss进行计算不知道这里作者您的考量是什么呢?以及在log_sum_exp函数中使用x_max这个变量的原因是什么呢? https://github.com/biubug6/Face-Detector-1MB-with-landmark/blob/2b075657aef954b9426f938ac7fce100b6910fe6/layers/modules/multibox_loss.py#L104 这里的 = 0是不是应该换成 = -math.inf,因为这里如果loss_c为负的话,降序排列 0 还是会排在负样本前面,在L109-L110处得到的neg不是会包含有正样本吗?

HuColin commented 4 years ago

关于第一个classification loss的计算问题我似乎在在另一份代码里找到了解答 https://github.com/biubug6/Pytorch_Retinaface/issues/41#issuecomment-553703628