[問題] YOLO訓練自己圖檔問題

看板DataScience作者 (fangggggg)時間4年前 (2020/04/02 23:17), 4年前編輯推噓16(16041)
留言57則, 11人參與, 4年前最新討論串1/1
作業系統:win10 問題類別:YOLOv2 使用工具:python 問題內容: 不好意思,小妹最近在學習用YOLOv2來分類自己的圖檔,有幾點問題十分困惑,故想請問 各位大哥大姐,還懇請各位幫忙解惑了.. 1.訓練的時間要如何加速? 目前我是用dgx跑YOLOv2 資料圖檔約4千多,分了6個label。 epoch 先設1000想先跑看看,但過了一天epoch才40幾...因此,想詢問這是正常的嗎? (真的是我的天啊!我以為會一天內或幾小時內就跑好了 ......)還是說可能是一些pa rameter要修改? 因為我其實只是想先快速看到第一次的結果準確率為何而已...... 遇到此狀況,就不確定是否以後每次一改參數,就要等好幾天... 還是各位大大有什麼建議,能加速訓練的時間呢? 2.指標部分 我瀏覽了些應用的paper 發現主要都用mAP來去評估模型好壞 但卻看不到一些實作評估用confusion box 或單precision與recall等來評估 想請問為何yolo或RCnn等的模型評估都不太使用confusion box、precision、Top-5等 是因為label可能會很多所以不使用嗎? 還是其實也是可以使用?(只是很少人用之類的) 3.loss 最後一個問題,想請問大大們是否有些經驗法則 好比loss降到多少其實就差不多收斂了 或是可以透過什麼方式來看模型訓練差不多 (還是只能看準確率、mAP呢?) 不好意思...一次問題有點多.... 而且問題有點雞毛蒜皮超羞恥,不過這些問題困擾我頗久(止不住地一直思考啊啊啊啊啊 ) 因此還懇請各位大大幫忙解答了 也謝謝各位願意看到這邊 小妹在此感恩不盡>< -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.143.225 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/DataScience/M.1585840625.A.3F9.html

04/03 00:07, 4年前 , 1F
我先說,我沒跑過YOLO,所以我說的可能有錯,不過我猜某些
04/03 00:07, 1F

04/03 00:07, 4年前 , 2F
東西ML應該是共同的吧,加速就看調大batch或者用更好的GPU
04/03 00:07, 2F

04/03 00:07, 4年前 , 3F
,如果只是測試可以考慮用小一點的Data,收斂也比較快。
04/03 00:07, 3F

04/03 00:09, 4年前 , 4F
2.我想是因為單個比較偏頗吧,但是如果目標符合還是能用
04/03 00:09, 4F

04/03 00:12, 4年前 , 5F
3.我是看lose沒有明顯變化就是收斂了
04/03 00:12, 5F
st大你好>< 好的!我會再試試看調整batch大小!loss部分..我一直在2.1至3.5徘迴,降不下去 我想我應該是要重整數據才會降下去了哈哈哈QQ謝謝你

04/03 00:22, 4年前 , 6F
dgx一天才40epoch,該不會沒縮圖吧...?
04/03 00:22, 6F
t大你好><..請問縮圖的意思是input進去的圖要先重新resize再餵嗎?(我想說餵進去model後,就會先resize就沒先整理圖檔了QQ..)

04/03 02:30, 4年前 , 7F
1圖片太大張or沒使用GPU 3如果data夠多 可以切val set驗
04/03 02:30, 7F

04/03 02:30, 4年前 , 8F
證 overfit的時候停掉
04/03 02:30, 8F
m大你好>< 我圖片大多長寬600或700,我想應該同t大意思一樣,餵進去太大所以才跑很久,這個我會再修改謝謝你QQ

04/03 03:13, 4年前 , 9F
mAP是拿來當objective metrics,模型出來後 你畫出
04/03 03:13, 9F

04/03 03:13, 4年前 , 10F
confidence level和precision recall之間的關係 利
04/03 03:13, 10F

04/03 03:13, 4年前 , 11F
用你最想要的precision recall value來決定你的confid
04/03 03:13, 11F

04/03 03:13, 4年前 , 12F
ence值
04/03 03:13, 12F

04/03 03:16, 4年前 , 13F
一個好的model precision recall都不能太低。mAP 值
04/03 03:16, 13F

04/03 03:16, 4年前 , 14F
高的話 代表你如果confidence level threshold 高prec
04/03 03:16, 14F

04/03 03:16, 4年前 , 15F
ision 高 recall不會太低。 mAP值不高的話 妳precisio
04/03 03:16, 15F

04/03 03:16, 4年前 , 16F
n 高時 recall就低 所以有tradeoff。最慘情況是recal
04/03 03:16, 16F

04/03 03:16, 4年前 , 17F
l precision都很低 那這模型完全不能用。
04/03 03:16, 17F

04/03 03:17, 4年前 , 18F
所以當你mAP非常高的時候 你的recall precision都是
04/03 03:17, 18F

04/03 03:17, 4年前 , 19F
高的 是最好的情況
04/03 03:17, 19F

04/03 03:19, 4年前 , 20F
就類似ROC curve的概念
04/03 03:19, 20F

04/03 03:21, 4年前 , 21F
可以弄early stopping
04/03 03:21, 21F

04/03 03:23, 4年前 , 22F
我是用aws cloud computing比較不用煩惱效率問題 話
04/03 03:23, 22F

04/03 03:23, 4年前 , 23F
說我也是小妹哈哈 這行女的比soctware developer多些
04/03 03:23, 23F

04/03 03:23, 4年前 , 24F
歡迎加入DS
04/03 03:23, 24F
li大你好>< 超感動大家回我的!也謝謝妳回覆超詳細Q//Q 我其實還沒看到結果,是看很多實作文章,但沒怎麼用precision與recall, 所以我才再思考結果是否不會出現precision等指標,然後只會出現mAP,而我要自己反推precision這樣。 我想我還是先再重新數據,用小的epoch來看一次結果為何, 再來判定我到底要用什麼指標好了!不過您的回覆,讓我受益良多,增加很多概念!謝謝妳:) ※ 編輯: fangggggg87 (140.124.76.114 臺灣), 04/03/2020 11:37:19 ※ 編輯: fangggggg87 (140.124.76.114 臺灣), 04/03/2020 11:39:59 ※ 編輯: fangggggg87 (140.124.76.114 臺灣), 04/03/2020 11:42:03 ※ 編輯: fangggggg87 (140.124.76.114 臺灣), 04/03/2020 11:45:10

04/03 20:24, 4年前 , 25F
700不算太大張,你大概是沒使用到gpu
04/03 20:24, 25F

04/03 20:26, 4年前 , 26F
另外,看loss值不準,一定要用其他指標如recall來選模型
04/03 20:26, 26F
Sf大你好,我終於看懂了大家為啥說我gup沒使用了,原來語法上要自己加入 我以為電腦會自動使用哈哈哈哈哈QQ 目前使用了,速度快很多! 其他指標的部份...我想..應該也要自己加上語法讓它顯示出來的樣子 (原本也以為跑完就會出現精準度等等,所以就傻等了2天...哭..) 我會再研究看看怎加其他指標進去的~ 謝謝你:) ※ 編輯: fangggggg87 (140.124.76.106 臺灣), 04/04/2020 13:36:50 ※ 編輯: fangggggg87 (140.124.76.106 臺灣), 04/04/2020 13:39:34

04/04 14:00, 4年前 , 27F
ctrl+y可以刪除多餘的綠色行,注意不要刪到推文就好
04/04 14:00, 27F
st大你好,拍謝..我弱弱的看不太懂綠色行的意思是什麼QQ...

04/05 15:56, 4年前 , 28F
loss不同data 不同loss設計的話 彼此之間很難比較
04/05 15:56, 28F

04/06 03:54, 4年前 , 29F
loss觀察趨勢呀 每一種loss的計算方式不一樣要看定義
04/06 03:54, 29F

04/06 03:54, 4年前 , 30F
還有yolo前面好像有加resize了不需要自己縮
04/06 03:54, 30F

04/06 03:56, 4年前 , 31F
要看什麼時候停可以加validation看看mAP的狀況
04/06 03:56, 31F

04/06 03:57, 4年前 , 32F
最後加速問題可以考慮用多張gpu 雖然4000多張感覺不
04/06 03:57, 32F

04/06 03:57, 4年前 , 33F
是很多就是
04/06 03:57, 33F
ms大你好,好的!我有去查一下YOLO的loss function內容設計為何了, 一開始我也在納悶有resize那我還要縮嗎哈哈 結果是我沒叫出要用gup的指令才跑那麼慢(汗) 不過還是感恩你><

04/06 11:29, 4年前 , 34F
會用mAP主要是因為object detection 有兩個變因threshol
04/06 11:29, 34F

04/06 11:29, 4年前 , 35F
d 會影響performance 結果,採用mean average 就是去計
04/06 11:29, 35F

04/06 11:29, 4年前 , 36F
算線下面積的平均,好處就是比較有公定基準來評估模型。
04/06 11:29, 36F

04/06 11:29, 4年前 , 37F
剩下我印象中蠻多網站都有評量方式,可以去看看怎麼實作
04/06 11:29, 37F

04/06 11:29, 4年前 , 38F
會比較了解我說的
04/06 11:29, 38F
sxy大你好,好的!這個部分我會再去多找找看變因有哪些,對這個領域剛接觸.. 弱弱的菜鳥,我加油QQ 謝謝你>< ※ 編輯: fangggggg87 (140.124.76.106 臺灣), 04/07/2020 21:49:18

04/07 21:57, 4年前 , 39F
綠色行就是編輯完之後出現的紀錄行,其實不刪也可以
04/07 21:57, 39F

04/07 21:58, 4年前 , 40F
我是在說PTT的功能
04/07 21:58, 40F

04/08 13:13, 4年前 , 41F
好的 謝謝你xd
04/08 13:13, 41F

04/13 21:46, 4年前 , 42F
我自己train 七個類別,training data 三萬多張,大概train
04/13 21:46, 42F

04/13 21:46, 4年前 , 43F
個兩天 Loss 就可以收斂了,然後一般設計 YOLO ,大概都會
04/13 21:46, 43F

04/13 21:46, 4年前 , 44F
先偵測你是否有GPU,沒有的話才會用CPU train吧?
04/13 21:46, 44F

04/13 21:48, 4年前 , 45F
Loss的部分,我用 darknet YOLOv2 tiny大概可以壓到0.0015
04/13 21:48, 45F

04/13 21:48, 4年前 , 46F
左右
04/13 21:48, 46F

04/20 14:04, 4年前 , 47F
sssh大你好!目前我應該是自用顯卡來跑,因為dgx所
04/20 14:04, 47F

04/20 14:04, 4年前 , 48F
用的環境跟自己弄的不相容QQ 希望之後我增量上去也可
04/20 14:04, 48F

04/20 14:04, 4年前 , 49F
以跑很快,謝謝你提供經驗讓我打了個強心針xd
04/20 14:04, 49F

04/28 00:30, 4年前 , 50F
YOLOV2沒跑過,V3可以參照AlexeyAB修改後的,支援輸
04/28 00:30, 50F

04/28 00:30, 4年前 , 51F
出成折現圖,每個類別的mAP...等。需要修改Makefile
04/28 00:30, 51F

04/28 00:30, 4年前 , 52F
做訓練過程加速。有時候看到數值降到理想值了,不代
04/28 00:30, 52F

04/28 00:30, 4年前 , 53F
表結果會是最好的,訓練過程中會產出暫存檔,可以取
04/28 00:30, 53F

04/28 00:30, 4年前 , 54F
出來做測試看看。
04/28 00:30, 54F

05/10 17:54, 4年前 , 55F
wargods你好 我目前有成功跑出來了>< 只是loss值還
05/10 17:54, 55F

05/10 17:54, 4年前 , 56F
很高,mAP不大理想QQ 我想我目前就是多改參數都跑看
05/10 17:54, 56F

05/10 17:54, 4年前 , 57F
看吧...... 謝謝你的回覆,希望可以快快看到理想數
05/10 17:54, 57F
文章代碼(AID): #1UXW7nFv (DataScience)