Ian Goodfellow專訪:我為什麼可以在一夜之間建立GAN
Sanyam Bhutani:您好,GAN 之父,感謝您接受此次採訪。
Ian Goodfellow:不客氣!非常感謝您來採訪我,也感謝您撰寫採訪部落格為其他學生提供幫助。
Sanyam Bhutani:您現在是谷歌的研究科學家,還發明瞭深度學習領域最令人振奮的工具——GAN。您能不能談談您是怎麼開始的?是什麼激發了您對深度學習的興趣?
Ian Goodfellow:那時候我還是一名人工智慧專業的本科生,當時機器學習主要是支援向量機(SVM)、增強樹等。此外,我還是一名業餘遊戲程式員,用 OpenGL 著色器語言製作一些業餘專案。我在 Zoox 工作的朋友 Ethan Dreyfuss 告訴我兩件事情,一是 Geoff Hinton 在谷歌關於深度信念網路的科技演講,二是當時新出的 CUDA GPU。
顯然,當時的深度學習可以在很大程度上消除我對 SVM 的抱怨。用 SVM 設計模型自由度很低。扔給 SVM 更多資源也無法輕易讓它變得很聰明。但 深度神經網路 卻有越大越好用的發展趨勢。同時,CUDA GPU 可以幫助我們訓練更大的神經網路,而且由於做遊戲程式設計,我已經學會了寫 GPU 程式碼。
寒假期間,我和 Ethan 在斯坦福建立了第一個 CUDA 機(據我所知是第一個),那時我開始訓練玻爾茲曼機。
Sanyam Bhutani:您剛剛提到,您在一夜之間就編寫了第一個 GAN 模型,但取得研究突破通常需要耗費數年,或至少幾個月的時間。您能否談談是什麼幫助您在那麼短的時間就實現那麼大的突破呢?
Ian Goodfellow:如果你有良好的相關程式設計基礎,那麼快速實現自己的想法將變得非常簡單。幾年來,我和我的同事一直在致力於軟體庫的開發,我曾用這些軟體庫來建立第一個 GAN、Theano 和 Pylearn2。第一個 GAN 幾乎是複製-貼上我們早先的一篇論文《Maxout Networks》中的 MNIST 分類器。即使是 Maxout 論文中的超引數對 GAN 也相當有效,所以我不需要做太多的新工作。而且,MNIST 模型訓練非常快。我記得第一個 MNIST GAN 只花了我一個小時左右的時間。
Sanyam Bhutani:自建立以來,GAN 已經取得了顯著進展,您對哪個最感興趣?
Ian Goodfellow:很難選。Emily Denton 和 Soumith Chintala 的 LAPGAN 讓我第一次知道 GAN 在往「大」的方向發展。當然,LAPGAN 只走出了一小步。
Sanyam Bhutani:除了 GAN,您認為深度學習研究還有哪個領域比較有前景?
Ian Goodfellow:我多數時間都在研究對抗樣本的魯棒性。我認為這點對於在安全性要求比較高的場景中使用深度學習非常重要。我還希望它能夠幫助我們更好地理解深度學習。
Sanyam Bhutani:對於那些希望有一天在谷歌工作並且對深度學習研究感興趣的讀者和初學者,您有什麼建議嗎?
Ian Goodfellow:開始階段要紮實地打好基礎:程式設計、除錯、線性代數、概率論。與瞭解非常前沿的工作相比,大多數前沿研究專案更需要紮實的基礎知識和技能。例如,今天我正在解決一個妨礙我執行一個實驗的記憶體洩露問題,同時試圖加速一個軟體庫的單元測試,以更快地嘗試更多的研究 idea。我在本科和博士早期階段曾經多次向吳恩達尋求建議,他經常告訴我要徹底精通這些基礎知識和技能。我曾經覺得這實在很無聊,並希望他能建議我去學習超實數或類似的東西。但幾年以後,我發現當初那些建議實在太正確了。
Sanyam Bhutani:您能告訴我們在谷歌研究所的一天是什麼樣子的嗎?
Ian Goodfellow:這因人而異,甚至對於同一個人而言在生涯的不同時刻也是不同的。我有一段時間幾乎只在寫程式碼,跑實驗,讀文獻。還有一段時間幾乎只在寫《深度學習》這本書。我有一段時間幾乎只是每天跑幾個會議,辦理登記手續,這些會議都是關於很多不同的專案。如今,我正嘗試按 6:4 的比例分配時間,即 6 成的時間用於監督其它的專案,4 成的時間用於直接開發我自己的專案。
Sanyam Bhutani:人們普遍認為需要大量的資源才能在深度學習中得到效果顯著的結果。您認為某個不能擁有和在谷歌工作的人一樣的資源條件的人,是否能對這個領域做出傑出的貢獻?
Ian Goodfellow:無疑可以的,但你需要恰當地選擇你的研究專案。例如,證明一個有趣的理論結果可能不需要任何計算資源。設計一個可以從極端小量資料泛化得很好的新演算法可能需要一些資源,但不會像在大規模資料集上訓練那麼多。儘管如此,如果沒有大量的平行計算資源,嘗試開發全世界最快的ImageNet分類器可能不是個好主意。
Sanyam Bhutani:在深度學習的學術領域突飛猛進的今天,您如何保持不落後於研究前沿?
Ian Goodfellow:不久之前,我總是緊跟深度學習研究的任何新進展,尤其是在我寫那本《深度學習》的時候。如今看來似乎已經不可行了,我基本上只關注那些和我自己的研究相關的課題。我甚至不知道 GAN 領域發生的 everything。
Sanyam Bhutani:您是否認為機器學習已經被過度炒作?
Ian Goodfellow:從 ML 的長期潛力來看,實際上我認為機器學習仍然沒被過度炒作。因為從某個角度看來,在技術行業之外的人們談論機器學習的熱度並沒有我想象的那麼高。但我也認為機器學習經常被「錯誤炒作」:人們經常誇大如今已有的技術水平,或誇大某個專案的進步意義,等等。
Sanyam Bhutani:您認為博士或碩士學位對做深度學習研究是否有必要,或者非專業人員是否可能在這個領域做出成績?
Ian Goodfellow:我確實認為發展專業技能是很重要的,但我不認為博士學位是獲得這種專業技能的唯一方式。最優秀的 PhD 學生通常是非常自我導向型的學習者,只要有足夠的學習時間和自由,就能在任何工作中進行這種學習。
Sanyam Bhutani:在我們結束之前,您能給那些對如何入門深度學習感到不知所措的初學者提一些建議嗎?
Ian Goodfellow:從簡單的專案開始,並且只復現那些你已經知道應該可行的專案,例如 CIFAR-10 分類器。很多人想在一開始就直接做出新的東西來,但這樣其實很難弄清楚導致專案不可行的原因究竟是你的 idea,還是對某些已知東西的錯誤理解。我確實認為動手做一個專案很重要,儘管深度學習有點像開飛機。你做大量的閱讀,但你也需要獲得動手實踐的經驗,以學習深度學習更加直觀的層面。
原文連結:https://hackernoon.com/interview-with-deep-learning-researcher-and-the-ganfather-dr-ian-goodfellow-cd300863ecff