訓練優化:降低loss


 

概念:

通常機器學習每一個算法中都會有一個目標函數,算法的求解過程是通過對這個目標函數優化的過程。在分類或者回歸問題中,通常使用損失函數(代價函數)作為其目標函數。損失函數用來評價模型的預測值和真實值不一樣的程度,損失函數越好,通常模型的性能越好。

refer:https://blog.csdn.net/weixin_37933986/article/details/68488339

________________________________________________________________________________________________

以下的結果是針對模型(faster_rcnn_inception_resnet_v2_atrous_coco)訓練多個分類且不同分類的樣本集不均勻的實踐

 

讓loss快速下降方式

訓練集:

Config設置:

a、采用dropout

use_dropout: true #false
dropout_keep_probability: 0.6

b、多階段學習率,開始設置很高且盡量讓其迭代到loss足夠的低

initial_learning_rate: 0.003 
          schedule {
            step: 0
            learning_rate: .003 
          }
          schedule {
            step: 30000 
            learning_rate: .0003 
          }
          schedule {
            step: 45000 
            learning_rate: .00003 
          }
......

c、為了發現更多的box,對IOC閾值進行調整(與loss沒什么關系)

first_stage_nms_iou_threshold: 0.4
second_stage_post_processing {
      batch_non_max_suppression {
        score_threshold: 0.0
        iou_threshold: 0.5 
        max_detections_per_class: 100
        max_total_detections: 100
      }
      score_converter: SOFTMAX
    }

效果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM