代碼運行記錄

2019.7.15
avg + att_avg :在resnet後分別進行batch_normal後直接進行數學相加,
mAP:82.3
r1:93.4
r5:98.8

att_avg:將avg替換成att_avg:
mAP:76.5
r1:90.9
r5:96.8

att_avg, avg作爲兩個獨立分支分別求loss:
mAP:86.1
r1:94.3
r5:98.9

從resnet50截出layer2輸出,進行att_avg作爲兩個獨立的分支分別求loss:
mAP:79.1
r1:92.7
r5:96.9

2019 7.16
19:35分
突然發現原來有之前的代碼只有encode部分沒有decode,然後瘋狂修改,終於能跑通了。但願mAP能破90

直接將decode輸出的分類分數與baseline最終輸出分類分數相加(使用同一層batch_normal):
mAP:85.2
r1:94.1
r5:98.0

att_avg, avg作爲兩個獨立分支分別求loss(使用不同的batch_normal)::
mAP:85.1
r1:93.5
r5:98.8

下一步工作雙向GRU(運行速度過慢);使用可學習參數相加特徵,或者l2_normalization(速度過慢)

self_attention

下一步
將交叉熵損失換成triple loss
換成ADL處理方式與第一個mask版本進行比較

gloab_attention + part_attention + l2_normal:

實驗單支gloab_attention效果

實驗attention與resnet avg 相加

g(x)(1 + M(x))

cam_loss test前加上batch_normal

tricks mAP R1 R5
只使用part_attention 87.0 94.9 98.3
使用part_at,使用lnn(最後一個維度) 79.5 92.3: 97.1
使用part_att,gloab_att,使用ln(最後一個維度) 85.6 94.3 98.2
使用part_att,gloab_att,使用ln(最後兩個維度) 86.0 94.8 98.1
使用part_att,gloab_att,使用ln(最後兩個維度) 86.0 94.8 98.1
使用part_att,gloab_att,使用ln(最後兩個維度) 權值不共享,l2 80.0
使用part_att,gloab_att,權值不共享,l2 80.2
權值不共享 weight*gloal_weight: 84.9 94.1
weight*gloal_weight: 87.6 94.9最高95 98
調參backbone*0.1: 不收斂______________ ———————— ——————————–
layer0,1 * 0.5 layer2 * 0.7layer3 * 0.9layer4 * 1other * 1.2: 不收斂
將part_q-global_q 做交叉熵損失求co_loss與 avg_loss相加:50*co_loss + avg_loss + [max(q) - max(p)] 68.2 85.6 95.6
將part_q-global_q 做交叉熵損失求co_loss與 avg_loss相加:10*co_loss + avg_loss + [max(q-p] 72.8 88.4 96.3
將part_q-global_q 做交叉熵損失求co_loss與 avg_loss相加;div_sqrt(k), diff用fusionconv處理:co_loss + avg_loss 87.6 94.9 98.3
weight*gloab_weight改變weight生成維度由一維變爲與k維度相同 80.0 92.4 97.7
將part_q-global_q 做交叉熵損失求co_loss與 avg_loss相加;div_sqrt(k), diff用fusionconv處理:co_loss + avg_loss,q處理同上 86.7(200epoch) 94.8 98.5
將part_q-global_q 做交叉熵損失求co_loss*1.6與 avg_loss相加;weight後加bn;div_sqrt(k), diff用fusionconv處理:co_loss + avg_loss 86.7(epoch200) 94.7 98.5
weight * gloal_weight 特徵mean+max獨立分支求loss:co_loss*1.6 weight: 88.3 95.1 98.5
weight * gloal_weight獨立分支求loss:co_loss*1.6 88.5 95.3 98.5
將part_q-global_q 做交叉熵損失求co_loss*1.6與 avg_loss相加;div_sqrt(k), diff用fusionconv處理:co_loss + avg_loss 87.3 94.9 98.4
weight * gloal_weight獨立分支求loss:co_loss*1.6;mask_att(0.75, 0.5) 86.7 94.4 98.3
weight * gloal_weight獨立分支求loss:co_loss*1.6;mask_att自學習參數 86.3 94.4 98.5
weight * gloal_weight獨立分支求loss:co_loss*1.6; test時cat(feat, diff) 89.1 95.5 98.6
weight * gloal_weight獨立分支求loss:co_loss*1.6,同上兩個weight相乘後再做softmax 88.4 95.3 98.5
同上+cam; cam_loss*1.6 88.9 95.6 98.5
weight * gloal_weight獨立分支求triple_loss(係數都爲1) 89.5 95.5 98.4
weight * gloal_weight獨立分支求loss:co_loss*1.6; test時cat(feat, diff),加上mask(thr=0.25, down=0.6, up=1.2) 88.6 95.1 98.4
weight * gloal_weight獨立分支求loss:co _loss1.6;(mask後加softmax)cam_loss0.75,加上mask(thr=0.5, down=0.6, up=1.2) 89.3(240) 95.6 98.6
weight * gloal_weight獨立分支求loss:co_loss * 1.6 ,cam_loss * 0.75 89.3(200) 95.3 98.6
weight * gloal_weight獨立分支求triple_loss(係數爲1, 0.875) 89.1(200) 95.5 98.5
weight * gloal_weight獨立分支求triple_loss(係數都爲1)(mask在dim=2進行 standard_normal sigmoid)mask(thr=0.5, down=0.6, up=1.2) 89.0(200) 95.6 98.6
weight * gloal_weight獨立分支求triple_loss(係數都爲1)(mask在max-min normal)mask(thr=0.5, down=0.6, up=1.2) 89.5 95.5 98.8
weight * gloal_weight獨立分支求triple_loss(係數都爲1)(mask在max-min normal)mask(thr=0.5, down=0.2, up=1.2) 89.3 95.5 98.7
weight * gloal_weight獨立分支求triple_loss(係數都爲1)(mask在max-min normal)mask(thr=0.75, down=0.2, up=1.2) 89.5 95.5 ()
weight * gloal_weight獨立分支求triple_loss(係數都爲1)(mask在max-min normal)mask(thr=0.75, down=0.2, up=1.6) 89.2 95.1 98.4
weight * gloal_weight獨立分支求triple_loss + cam_loss(係數爲1,1, 0.17) 89.4 95.4 98.5
weight * gloal_weight獨立分支求triple_loss + cam_loss(係數爲1,1, 0.17)(cam增加捲積層,test前將att_cls進行bn) 89.3 95.5 98.3
weight * gloal_weight獨立分支求triple_loss + cam_loss(係數都爲1, 0.17)(mask在max-min normal)mask(thr=0.25, down=0.6, up=1.2) 89.1(200) 95.3 98.6
weight * gloal_weight獨立分支求triple_loss(係數都爲1)(故障)(mask在max-min normal)mask(thr=0.25, down=0.6, up=1.2)
取消self.training,weight * gloal_weight獨立分支求triple_loss(係數都爲1) (thr=0.5,de_rate=0.6, in_rate=0, change_rate=0.75 ) (220)89.3 95.2 98.6
取消self.training,weight * gloal_weight獨立分支求triple_loss(係數都爲1) (thr=0.5,de_rate=1, in_rate=0, change_rate=0.75 ) 89.2 95.4 98.5
取消self.training,weight * gloal_weight獨立分支求triple_loss(係數都爲1) (thr=0.75,de_rate=1, in_rate=0, change_rate=0.75 ) 89.5 95.3 98.6
取消self.training,weight * gloal_weight獨立分支求triple_loss(係數都爲1) (thr=0.75,de_rate=0.6, in_rate=1.2, change_rate=1) 89.3 95.4 98.6
取消self.training, weight * gloal_weight獨立分支求triple_loss(係數都爲1) (thr=0.5,de_rate=0.6, in_rate=1.2, change_rate=0.75 ) 89.3 95.7 98.5
weight * gloal_weight獨立分支求triple_loss(係數都爲1) (thr=0.75,de_rate=1, in_rate=0, change_rate=0.75 ) 89.5 95.3 98.6
加入gloab_att+mask(thr=0.75,de_rate=1, in_rate=0, change_rate=0.75 ) 90.2 95.8 98.5
加入gloab_att+mask(thr=0.5,de_rate=1, in_rate=0, change_rate=0.75 ) 90.1 95.9 98.5
gloab_att,part_att每一塊求loss 效果差
加入gloab_att不進行mask 90.0 95.4 98.7
加入gloab_att+mask(thr=0.5,de_rate=0.6, in_rate=1.2, change_rate=1 ) 90.2 96.0 98.4
加入gloab_att(正則化係數爲0.01) 89.9 95.8 98.6
加入gloab_att(正則化係數爲0.1) 90.2 95.9 98.4(收斂慢300epoch)
加入gloab_att(正則化係數爲0.0005)
加入gloab_att(正則化係數爲0.001) 90.2 95.8 98.7(收斂快200epoch)
加入gloab_att(正則化係數爲0.002)
加入gloab_att(正則化係數爲0.004) 90.0 95.6 98.4
加入gloab_att(正則化係數爲0.006) 90.1 95.9 98.6
加入gloab_att(正則化係數爲0.008) 90.2 95.7 98.6
加入gloab_att(正則化係數爲0.008partreg) 90.1 95.6 98.6
加入gloab_att, two_part_att 82.8 92.5 97.3
加入gloab_att+mask(thr=0.5,de_rate=0.6, in_rate=1.2, change_rate=1 ), two_part_att+mask(thr=0.5,de_rate=0.6, in_rate=1.2, change_rate=1 )
(dukemtmc)加入gloab_att, mask(thr=0.5,de_rate=0.6, in_rate=1.2, change_rate=0.75 ) 80.4 89.9 95.4
(cuhk03-detected)加入gloab_att, mask(thr=0.5,de_rate=0.6, in_rate=1.2, change_rate=1 ) 73.5 74.9 89.1
(cuhk03-detected)加入gloab_att, mask(thr=0.5,de_rate=0.6, in_rate=1.2, change_rate=1 ) 76.9 78.9 90.7
base no (random erasing ;lable smoooth center) 84.6 94.5 97.9
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章