日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > pytorch >内容正文

pytorch

如何步入深度学习刷榜第一重境界

發布時間:2025/3/20 pytorch 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何步入深度学习刷榜第一重境界 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實際上筆者也沒多少刷榜經驗,畢竟不擅長,之前老大也沒有任務指派,今年10月份得閑了個把月,沒那么多事就參加了一個場景分類的比賽,鏈接如下,https://challenger.ai/competition/scene/leaderboard/test_a

刷了一個月之后最好成績也就殺進前15然后就接著干項目去了。

與第一名差一個點,7000張測試圖,80類,基本上每一類差1張圖。到比賽結束的時候排在第20名左右,與第一名還是差一個點。說出去好像是有點不太好意思,但是作為第一次刷比賽,一個月也不能白費,畢竟績效打在那里。現在的比賽聽說還有專業刷榜團隊的,也是666。

下面也簡單分享一下。

0 刷的是什么比賽?

場景分類,80類日常生活中比較多的場景,這個在以后的社交應用中還是有需求的,相關最大的比賽是place365,有興趣可以去看。眼下這個,是創新工場,今日頭條,搜狗等一起搞的比賽,train數據集就不大,只有50000+,測試數據集7000+。

下面舉10類吧

0/航站樓:airport_terminal

1/停機坪:landing_field

2/機艙:airplane_cabin

3/游樂場:amusement_park

4/冰場:skating_rink

5/舞臺:arena/performance

6/藝術室:art_room

7/流水線:assembly_line

8/棒球場:baseball_field

9/橄欖球場:football_field

10/足球場:soccer_field

1 為什么叫第一境界?

我覺得怎么著刷榜這事也得有個三個境界,像筆者這樣,一個人拿現有的模型,4塊K40,兼職刷上一個月,最后提交也只融合了兩個模型的,怎么看都是處于剛入門的第一境界,大部分人其實也就是這個境界。


而到了第二三境界,至少得有個集群,得有一群人來嘗試各種方案,而頂尖的團隊對網絡結構肯定是需要調優設計的,歷年奪冠的那些網絡alexnet,googlenet,resnet,senet無一例外。

不過設計強大的網絡結構從時間代價,計算資源代價和算法能力都有比較高的要求,大部分人可能就是從數據層面做文章了,比如清洗數據,數據增強,搞搞不均衡樣本等。

2 怎么一步刷到比較優的單模型?

這是最關鍵的第一步。

有幾點一定是要形成共識的。


(1) 由于我是只有4個卡,用caffe或者tensorflow都是不可能的,我用了mxnet,并且在訓練的過程中都放開了所有參數,實際上也做過固定某些參數的實驗,但是效果并不好。224的尺度,放開全部訓練的話,4塊卡resnet152 batchsize可以到96。在實驗的過程中,batchsize越大,指標就越高,幾個網絡都能觀測到相關結論。


(2) 由于訓練數據少,使用當前數據從頭訓練大模型不太現實,所以,先找到相關數據集比賽finetune過的大網絡,resnet系列找了一個resnet152,dpn系列找了一個dpn92,各自先訓練。


(3) 從盡量大的模型開始,機器啃得動的就行,畢竟這個任務里面有很多類還是很難的,小網絡搞不定,resnet系至少得50層以上。

在刷這個比賽的時候,從imagenet mxnet model的模型fine-tune過來,鏈接在下面。

http://data.mxnet.io/models/

實驗了18,50,152層的網絡,使用本比賽50000+的數據進行簡單的參數調優,

解釋一下,lr是學習率,Lr=0.01(10)代表在10個epochs后下降一個數量級,從0.01到0.001,實際上在10個epoch以后都收斂了,所以后面沒有做更多step lr的比較,大家感興趣可以去嘗試。w是weight decay,m是momentum,bs是batch size,單個k40 gpu。

從上面可以看出,從18層到152層精度毫無疑問是提升的。雖然參數沒有調到各自最優,但基本能反應問題。尤其注意的是res18我加了weight decay來增加模型復雜度,不然沒有上90%的可能。從resent152到resent200指標就沒什么提升了,而且res200遠遠沒有res152參數好調。單模型單個crop 94%的精度已經差不多了,


(4) 理論上隨著訓練尺度增加,在一定范圍內性能也會增加,但是訓練尺度的增加會導致能使用的batchsize減小,所以筆者最后統一采用224這個尺度。聽說有人用到了700以上的尺度,只能說,真土豪也。


(5) 單個模型,多個crop會對結果有所提升,有的團隊用到了上百個crop,筆者最后用了10個crop,沒有去嘗試更多,畢竟測試也是很花時間,這點資源一個人搞不過來。


有了以上的共識后,那就開始干起來,過段時間我會重新整理把項目git傳上去,前段時間服務器意外格式化丟了全部訓練文件,一時還沒有恢復。如果對此感興趣,請持續關注。


總結:單模型,以resent152為例。

訓練尺度224*224,數據增強采用了水平flip和隨機crop,random resize參數照搬googlenet那套,放開所有參數,使用resnet152-place365,即在place365數據集上進行訓練過的模型,然后使用當前的訓練數據集進行finetune,validation數據集進行測試。


數據增強參數偷懶截個圖,實際上這些mxnet全部都已經集成好了,直接設置開關即可。

訓練參數,lr=0.01,分別在10,20,40個epoch時下調學習率,最后采用10個crop,分別為四個角,中心以及水平翻轉。在試用了多個batchsize之后,最大的能用的batchsize取得最優,resnet152單個模型能到97%。

在測試的時候有trick,采納dpn的思想,使用較小的尺度訓練,使用較大的尺度測試,最終在略大于224的尺度上,有微小的提升,對于刷榜來說還有很重要的,畢竟0.5%可以干掉10個人。

3 怎么做模型融合?

不同網絡架構,但能力相當的模型進行融合,結果會穩定提升。筆者單模型10個crop,resnet152得到0.971,dpn92得到0.965,兩者融合后即到0.978。要想得到最優,需采用不同的epoch進行融合,這個需要花時間去測試;所以就會出現兩個單模型最優,融合之后缺不是最優的情況。這個時候,需要把各自錯誤樣本拿出來分析,我當時沒有太多時間和耐心去嘗試各種方案。


這就是提交比賽的最后結果,兩個現有的模型在224尺度用4張卡訓練,融合之后,在比賽結束前的一個月,能排在15名左右,比賽結束后我回去一看,test_a也在20名以內,test_b也差不多,由于test_b比較難,所有參賽隊伍的成績都下降了4個點左右。

4 哪些trick比較關鍵

雖然提交的結果非常簡單,筆者還是實驗過很多參數的,稍微有些經驗拿出來分享下,有些參數是不能亂調的,有些則不需要調。


(1) finetune很關鍵

從相關大數據集上訓練好的模型開始finetune,基本上可以肯定會比從不相關大數據集上訓練的模型,或者從頭開始訓練更好,這個大家應該是通識了。


(2) 學習率lr和batchsize

學習率和batch size是成對的參數,batch size增大N倍,相當于將梯度的方差減少N倍,也就是梯度方差更小了,更加準確,更加容易跳出局部最優,帶來的后果就是收斂更慢,這時候為了提高訓練速度,可以將lr增加sqrt(N)倍。


學習率是最關鍵的參數了,沒得說,只能自己從大到小開始嘗試。

筆者列舉一個例子:dpn92, lr_step_epochs='10,20,30,40',w=0,m=0,bs=64,

lr取0.001,0.005,0.01,0.01,分別看train和val的acc。

從小到大,從欠擬合到過擬合,很明顯。


batch size相對來說沒有lr那么敏感,但是對結果也是至關重要的。

下面是resnet152的batchsize的實驗,mul_val是多個crop

下面是dpn92的batchsize的實驗,mul_val是多個crop

看的出來,指標有所上升。

當然了,還是那句話,單個最優的模型融合起來并不能保證結果最優。


(3) weight decay和momentum

這兩個參數,對于小模型的訓練是比較關鍵的,不過越大越不敏感。

下面是res18的訓練結果,從結果看來差異是很大的。

Res50,差距就不明顯了。

Senet50也是。

我的結論是這個參數可以去調一調,不過對于大模型可能不是很必要,我都用的是0


(4) 測試網絡

下面是單個crop和10個crop的比較

很明顯,不管是什么網絡,多個crop會有很明顯的提升,上面穩定提升2%以上,更多的crop筆者沒嘗試,因為實在是太慢了。


另一方面,借鑒dpn的思想,用小尺度訓練,大尺度測試可能也有微小的點提升,下面是一個比較。

(5) 數據增強

本任務中復雜的數據增強沒怎么用,使用的是mxnet? level=1的數據增強,估計是因為模型已經在大數據庫上訓練過,au=1就是基本的crop,flip,random resize,au=2會做圖像旋轉,au=3會再加上顏色擾動,實際的項目中我們還是會做一點的。

就這么多,不知道你對是否有用,下回搞點機器搞點時間去刷個大榜試試。




話說有個問題,刷比賽的各位覺得這個好玩嗎?

總結

以上是生活随笔為你收集整理的如何步入深度学习刷榜第一重境界的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲成人av一区二区 | 国产传媒视频在线观看 | 97精品在线视频 | 亚洲欧美在线视频免费 | www.99re.| 玩日本老头很兴奋xxxx | 国产高清一区在线观看 | 91视频看片 | 中文字幕日韩经典 | 亚洲精品一卡二卡 | 国产高清视频在线免费观看 | 亚洲日本视频在线观看 | 国产一区精品在线 | 日本一级黄色大片 | 美丽的姑娘在线观看免费 | 欧美人妻精品一区二区 | 日韩激情床戏 | 欧美区一区二区三 | 五月婷激情 | 自拍偷拍亚洲天堂 | 成人av免费播放 | 人与禽一级全黄 | 日韩精品视频免费 | 国产精品久久久久永久免费看 | 国产一区二区三区四区三区四 | 日韩av不卡在线 | 久久精品无码av | 女人脱下裤子让男人捅 | 特级西西人体 | 91国在线 | 亚洲最大视频网站 | 国产精品久久久久久久久久妞妞 | 色欲久久久天天天综合网 | 呦呦网| av老司机久久 | 91久久久久久久久久久 | 亚洲情在线 | 小敏的受孕日记h | 无码国产精品久久一区免费 | 99日精品| 精品国产专区 | 亚洲无吗在线观看 | 欧美手机看片 | 51精品国自产在线 | bbbbbbbbb毛片大片按摩 | 日韩精品无码一区二区三区 | 最近中文字幕av | 成人高清在线观看 | 女人性做爰24姿势视频 | 亚洲av无码专区在线播放中文 | 河北彩花av在线播放 | 偷拍一区二区三区 | 国产精品激情偷乱一区二区∴ | 1000部啪啪未满十八勿入超污 | 日本成人福利视频 | 能看毛片的网站 | 成人免费看片视频 | 99久久亚洲精品日本无码 | 日韩av中文字幕在线免费观看 | 欧美在线视频a | 麻豆成人91精品二区三区 | 欧美亚洲另类图片 | 香蕉视频性 | 我的公把我弄高潮了视频 | 黄色网页在线 | 国产精品一区二区精品 | 午夜色福利 | 久久久婷 | 天天爽夜夜爽人人爽 | 亚洲精品a级 | 久久久高清 | 日本精品一区视频 | 日本3级网站 | 亚洲第一页色 | 日本黄色xxxxx | 极品尤物一区二区三区 | 亚州欧美在线 | 国产盗摄精品一区二区酒店 | 亚洲综合视频在线 | 亚洲免费视频观看 | 人妻一区二区三区 | 日本欧美在线 | 欧美国产日韩综合 | 伊人夜色 | av在线免| 色无五月 | 精品三级在线 | 伊人网站 | 亚洲色图校园春色 | 亚洲一区二区三区午夜 | 黄色麻豆网站 | 国产精品一二三四五区 | 91日韩在线视频 | 久久久天堂| 97自拍偷拍视频 | 99久久久久久久久久 | 欧美一级乱黄 | 国产永久免费无遮挡 | 91香蕉国产在线观看软件 |