這裡記錄一下關於yolov3做模型微調的相關命令.
首次訓練都會載入預訓練模型darknet53.conv.74,假如首次訓練出了模型1,要在模型1的基礎上finetuning模型2,當然前提是模型2與模型1之間網路結構沒有發生變化,類別也沒有增加.(類別增加的話我暫時還不太清楚)這個時候有兩種解決方法:
通過模型1訓練出的backup或者final.weights檔案代替預訓練模型darknet53.conv.74,並在訓練命令的末尾加上-clear命令,這樣模型的訓練會從初始狀態開始,比如:
./darknet cfg/yolo.data cfg/yolo.cfg backup/model_pre.backup -clear
這樣重新訓練的模型2就是在模型1微調的基礎上訓練的結果,如下圖所示,這樣模型的收斂速度較快,迭代次數將從0開始計算.
不用-clear命令,訓練則不會從初始狀態開始,讀取模型1的backup的時候也會讀取其中的迭代次數及learning rage.比如模型1的迭代次數微40000次,最終的學習率為0.00001,那麼模型2訓練的時候也會從40000次開始迭代,並從0.00001的學習率開始,那麼此時就需要修改cfg檔案的max_batches以及learning rate .
比如我的模型1的cfg是這樣的,初始learning rate為0.001:
那麼模型2如果想迭代30000次,並有初始0.001的學習率你需要修改max_batches和steps:
比較推薦通過-clear的方式來做微調,會方便一點.
yolov3模型微調相關
這裡記錄一下關於yolov3做模型微調的相關命令.首次訓練都會載入預訓練模型darknet53.conv.74,假如首次訓練出了模型1,要在模型1的基礎上finetuning模型2,當然前提是模型2與模型1之間網路結構沒有發生變化,類別也沒有增加.類別增加的話我暫時還不太清楚 這個時候有兩種解決方法...
yolov3模型微調 fine tune 備忘
專案需要用目標檢測模型,由於yolov3精度和效能突出,成為最後選擇的模型。但是因為在實際場景中會有誤檢測和漏檢測的情況,還需要採集實際場景的資料進行微調。思路是直接調整由imagenet coco資料集訓練出來的權重yolov3.weights,凍結前面的層數,只微調後面n層。系統 ubuntu ...
yolov3系列 零 yolov3詳解
目標檢測演算法與efficientdet講解 論 文 翻譯 yolov3主頁 yolo系列的目標檢測演算法可以說是目標檢測史上的巨集篇巨作,v3演算法是在v1 v2基礎上形成的,先看下 yolov1 yolov2 下圖為yolov3的網路結構 dbl darknetconv2d bn leaky 是...