然而,對於重要論文,復現其中的演算法仍然是值得的,不僅是因為“learning by doing”是一個高效的學習方法,而且有的時候你甚至會發現一些問題。
就拿今天開幕的ICLR 2018(在機器學習領域,可以算是頂會了)的最佳論文《On the Convergence of Adam and Beyond》來說吧。JKU的PhD Filip Korzeniowski就復現了論文中的AMSGrad演算法(Adam演算法的變體),並在比原論文更大、更貼近實際專案的資料集上做了一些試驗,發現AMSGrad相比Adam並沒有明顯優勢。
復現論文的演算法是一個很好的學習方法。
不過,你需要注意的是,復現論文並不是一件容易的事。特別是很多時候論文原作者並沒有釋出相關程式碼,甚至沒有在論文中寫清楚演算法的細節。
(左:原論文中描述的演算法;右:復現的演算法)
然而,對於重要論文,復現其中的演算法仍然是值得的,不僅是因為“learning by doing”是一個高效的學習方法,而且有的時候你甚至會發現一些問題。
就拿今天開幕的ICLR 2018(在機器學習領域,可以算是頂會了)的最佳論文《On the Convergence of Adam and Beyond》來說吧。JKU的PhD Filip Korzeniowski就復現了論文中的AMSGrad演算法(Adam演算法的變體),並在比原論文更大、更貼近實際專案的資料集上做了一些試驗,發現AMSGrad相比Adam並沒有明顯優勢。
上圖為Korzeniowski復現的AMSGrad演算法,可以看到,在論文構造的反例上,Adam(藍線)錯誤收斂於1,而AMSGrad(紅線)可以正確收斂,並且收斂曲線與原論文的曲線很接近,說明正確復現了原論文中的演算法。
(上圖中藍線為Adam,紅線為AMSGrad,淡色表示偏置糾正關閉。)
從圖中可以看到,Adam和AMSGrad基本是平局。