YOLOv3v4-ModelCompression-MultidatasetTraining-Multibackbone
YOLOv3v4-ModelCompression-MultidatasetTraining-Multibackbone copied to clipboard
关于蒸馏时计算lcls 的问题
trafficstars
你好!
请问一下,以compute_lost_KD3为例,以下代码为什么把objness也计算进softmax里面?
output_s_i = ps[..., 4:].view(-1, model.nc + 1)
output_t_i = pt[..., 4:].view(-1, model.nc + 1)
lcls += criterion_st(nn.functional.log_softmax(output_s_i / T, dim=1),
nn.functional.softmax(output_t_i / T, dim=1)) * (T * T) / ps.size(0)
为什么不是下面这样从类别置信度开始呢?
output_s_i = ps[..., 5:].view(-1, model.nc)
output_t_i = pt[..., 5:].view(-1, model.nc)