博客配套視頻鏈接: https://www.bilibili.com/video/BV1CP411G7VX/?spm_id_from=333.788 b 站直接看
0:10
這只是其中一種解釋:
對於 AI 模型,用不同的顯卡跑,結果很大可能不一樣
求偏導的結果一定是不準確的,有有限循環小數
然後由於每個顯卡精度不一樣
導致反向傳播和梯度下降的精度不一樣
一個不一樣,微乎其微,但是 1000 多萬個參數,都有一點區別,一點點小小的變化會導致最後發生一個很大的變化
我和他的顯卡一樣,但是性能還是和原作者不一樣:
第二個解釋(可能造假了):
賣論文,賣論文的人大都掌握了寫論文的精髓(花裏胡哨即可)
有能力的人基本不會做這種事
這個時候你需要叫他給你一份他保存的模型文件,然後用相同的代碼(一模一樣)跑
或者作者上傳的代碼最後進行了一種微調。
因爲我有一行代碼(看起來不重要的代碼),沒有註釋
這也是一種解釋
一個模型沒有設定隨機數種子,導致模型參數初始化的時候,每次結果不一致()
解決方案
用復現的結果,一定要記住,保存證據,保存你跑出來的模型文件,然後寫論文的時候記住,標明一下
你還可以做一件什麼事情呢?????
原論文91
復現後 89(它的模型,他論文標明的參數,最好是相同的顯卡)
那你只要達到 90 就行了。這個 90 不需要你和他的參數一致,
調參
它的 bs32,你的可以是 16,它的 lr 是 0.05,你的可以是,0.005
調到最優值後,你是 90