「大量的實踐經驗已被提煉成這份強大的深度學習模型調參指南。」——Geoffrey Hinton。
眾所周知,AI 的超參數決定著模型學習效果和速度。相比普通機器學習任務,深度學習需要的訓練時間較長,因此調參技巧就顯得尤為重要。
但鑑於深度學習「煉丹」的特性,不同的模型需要不同的超參數,而每個超參的意義又不同,在不同實驗中,參數和調整的方向又都不一樣。調參這件事一直以來沒有固定的套路,每個人都有自己的經驗,因此經常會出現一些似是而非的理論,比如:
- Random seed = 0 得到壞的結果
- Random seed = 42 得到好的結果
為了破除「迷信」,高舉科學旗幟,近日來自Google大腦、哈佛大學的研究人員發佈了《Deep Learning Tuning Playbook》,旨在幫助大家解決這一 AI 領域的老大難問題。
項目 GitHub 上線僅一天就已收穫了上千 Star 量:

項目地址:https://github.com/google-research/tuning_playbook
該項目也得到了圖靈獎獲得者,Google AI 科學家 Geoffrey Hinton 等人的轉推支持。Geoffrey Hinton 表示「大量的實踐經驗已被提煉成這份強大的深度學習模型調參指南。」

文件意義
這份調參指南適用於對改進深度學習模型性能感興趣的工程師和研究人員。閱讀這份指南需要掌握機器學習和深度學習的基本知識。
這份指南的主要內容是調整超參數,也涉及深度學習訓練的其他方面,例如 pipeline 實現和最佳化。指南假設機器學習問題是一個監督學習問題或自監督學習問題,但其中的一些規定也適用於其他類型的問題。
當前,深度神經網路就像一個黑箱,要想在實踐中獲得良好的性能,需要付出大量的努力和猜測。更糟糕的是,很少有人記錄各種研究獲得良好結果的實際方法。人們似乎在迴避詳解實踐中的調參問題,也極少分享經驗。這讓深度學習專家獲得的實驗結果,與普通從業者復現相似方法獲得的結果差距懸殊。
隨著深度學習方法的成熟並對世界產生重要影響,深度學習社區需要更多涵蓋有用方法的資源,包括對於獲得良好結果至關重要的所有實用細節。
本項目是一個由五名研究人員和工程師組成的團隊,他們在深度學習領域工作多年,其中一些人早在 2006 年就開始了。

該團隊已經將深度學習應用於從語音識別到天文學的各個領域的問題,並在此過程中學到了很多東西。本文件源於工程師們訓練神經網路、教授新機器學習工程師以及為同事提供深度學習實踐建議的經驗。雖然深度學習早已從實驗室實踐的機器學習方法發展為數十億人使用的技術驅動產品,但它作為一門工程學科仍處於起步階段。
該指南是Google研究人員在構建自有深度學習方法時產生的,它代表了作者在撰寫本文時的觀點,而不是任何客觀規律。為此,作者鼓勵發現其中存在問題的讀者提出替代建議和令人信服的證據,以便不斷更新完善這份指南。
需要說明的是,這不是 TensorFlow 等Google產品的官方支持文件。
指南內容
該指南包含哪些內容?可以分為四大部分:
- 指導開始新項目
- 改善模型性能的科學方法
- 如何決定每次訓練運行步數
- 訓練過程中的其他經驗
例如第一部分,你開始新項目時如何選擇模型架構、最佳化器、batch 大小等,都有詳細的經驗指導。

該指南中關於選擇模型架構的經驗。
而後關於「煉丹」的模型性能改進、訓練運行的步數等也有經驗分享。
可以說,這份指南可以教你提升模型性能的大量細節。看完下面目錄,大家可以去Github細緻學習下。

