【译】Google's AutoML: Cutting Through the Hype
這是系列文章的第3部分。 第1部分在這里 , 第2部分在這里 。
為了宣布谷歌的AutoML,谷歌首席執行官桑達皮采寫道 :“今天,設計神經網絡是非常耗時的,并且需要專業知識限制其用于較小的科學家和工程師社區。 這就是為什么我們創建了一種名為AutoML的方法,表明神經網絡可以設計神經網絡。 我們希望AutoML能夠擁有一些博士今天擁有的能力,并且可以在三到五年內使數十萬開發人員能夠根據他們的特殊需求設計新的神經網絡 。“(強調我的)
谷歌首席執行官桑達皮采表示,我們都需要設計自己的神經網絡
當谷歌的人工智能負責人杰夫迪恩建議100倍的計算能力可以取代對機器學習專業知識的需求時 ,計算成本高昂的神經架構搜索是他用來說明這一點的唯一例子。 ( 在他的TensorFlow DevSummit主題演講中大約23:50左右 )
這提出了許多問題:成千上萬的開發人員需要 “根據他們的特殊需求設計新的神經網絡”(引用Pichai的愿景 ),還是神經網絡有一種有效的方法可以推廣到類似的問題 ? 大量的計算能力真的可以取代機器學習專業知識嗎?
在評估谷歌的聲明時,記住谷歌有一個既得的經濟利益,告訴我們有效使用深度學習的關鍵是更多的計算能力 ,因為這是一個他們明顯擊敗我們其他人的領域。 如果屬實,我們可能都需要購買Google產品。 就其本身而言,這并不意味著谷歌的說法是錯誤的,但很好地了解他們的陳述可能構成的財務動機。
在我之前的文章中,我分享了AutoML歷史的介紹 ,定義了什么是神經架構搜索 ,并指出對于許多機器學習項目,設計/選擇架構遠不是最困難,最耗時或最多的。痛苦的一部分問題 。 在今天的帖子中,我想特別關注Google的AutoML,這是一個受到很多媒體關注的產品,并解決了以下問題:
- 什么是Google的AutoML?
- 什么是轉學?
- 神經結構搜索與轉移學習:兩種相反的方法
- 需要更多證據
- 為什么所有關于Google的AutoML的炒作?
- 我們如何解決機器學習專業知識的不足?
什么是Google的AutoML?
盡管AutoML領域已經存在多年(包括開源AutoML庫 , 研討會 , 研究和競賽 ),但在2017年5月,Google為其神經架構搜索選擇了AutoML一詞。 在谷歌I / O大會上發布的博客文章中,谷歌首席執行官桑達皮采 寫道 : “這就是為什么我們創建了一種名為AutoML的方法 ,表明神經網絡可以設計神經網絡”和Google AI研究人員Barret Zoph和Quoc Le寫道: “在我們的方法( 我們稱之為”AutoML“ )中,控制器神經網絡可以提出一個”子“模型架構......”
Google的Cloud AutoML于2018年1月宣布為一套機器學習產品。 到目前為止,它包含一個公開可用的產品AutoML Vision ,這是一種識別或分類圖片中對象的API。 根據產品頁面 ,Cloud AutoML Vision依賴于兩種核心技術: 轉移學習和神經架構搜索 。 既然我們已經解釋了神經架構搜索 ,現在讓我們看一下轉移學習,看看它與神經架構搜索的關系。
關于谷歌的AutoML和神經架構搜索的許多文章中的一小部分的頭條新聞
注意:Google Cloud AutoML還有一個仍然處于alpha狀態的拖放式ML產品 。 我在2個月前申請訪問它,但我還沒有收到谷歌的回復。 我計劃在帖子發布后寫一篇文章。
什么是轉學?
傳遞學習是一種強大的技術,通過利用已經訓練過類似的大型數據集的預訓練模型,可以讓擁有較小數據集或較少計算能力的人獲得最先進的結果。 因為通過轉移學習學習的模型不需要從頭學習,所以與不使用轉移學習的模型相比,它通常可以以更少的數據和計算時間達到更高的準確度。
轉學習是我們在整個免費的實用深度學習編碼器課程中使用的核心技術 - 我們的學生一直在申請從他們自己的創業公司到財富500強公司的所有生產。 雖然轉移學習似乎被認為比神經結構搜索“不那么性感”,但它被用來實現突破性的學術成果,例如杰里米·霍華德和塞巴斯蒂安·魯德將轉學習應用于NLP ,后者實現了狀態。 - 對6個數據集進行分類,并作為OpenAI 該領域進一步研究的基礎。
神經架構搜索與轉移學習:兩種相反的方法
轉移學習的基本思想是神經網絡架構將針對類似類型的問題進行推廣:例如,許多圖像具有以各種不同類型顯示的基礎特征(例如角落,圓形,狗臉或輪子)的圖像。 相比之下, 促進神經架構搜索每個問題的基本思想恰恰相反 :每個數據集都有一個獨特的,高度專業化的架構,它將表現最佳。
來自Matthew Zeiler和Rob Fergus的4個特征的例子由圖像分類器學習:角落,圓圈,狗臉和輪子
當神經架構搜索發現新架構時,您必須從頭開始學習該架構的權重,而使用傳輸學習,您可以從預先訓練的模型開始使用現有權重。 從這個意義上說,你不能在相同的問題上使用神經架構搜索和轉移學習:如果你正在學習一個新的架構,你需要為它訓練新的權重; 而如果您在預訓練模型上使用轉移學習,則無法對架構進行實質性更改。
當然,您可以將轉移學習應用于通過神經架構搜索學習的架構(我認為這是一個好主意!)。 這只需要少數研究人員使用神經架構搜索并開源他們找到的模型。 所有機器學習從業者都沒有必要使用神經架構在他們可以改為使用轉移學習時搜索所有問題 。 然而, Jeff Dean的主題演講 , Sundar Pichai的博客文章 ,Google Cloud的宣傳材料和媒體報道都表明了相反的觀點:每個人都需要能夠直接使用神經架構搜索。
神經架構搜索有什么用處
神經架構搜索有助于尋找新的架構! 谷歌的AmoebaNet是通過神經架構搜索學習的,并且(包括fast.ai的進步 ,如積極的學習計劃和隨著訓練的進展改變圖像大小)現在是在一臺機器上訓練ImageNet最便宜的方式 !
AmoebaNet沒有設計具有擴展能力的獎勵功能,因此它不能像ResNet一樣擴展到多臺機器,但是可以在將來學習可擴展的神經網絡,針對不同的質量進行優化。
需要更多證據
我們還沒有看到證據表明每個數據集最好使用自己的自定義模型建模,而不是微調現有模型。 由于神經結構搜索需要更大的訓練集,因此對于較小的數據集尤其如此。 甚至谷歌自己的一些研究也使用可轉移技術,而不是為每個數據集尋找新的架構,例如NASNet ( 博客文章 ),它在Cifar10上學習了一個架構構建塊,然后使用該構建塊為ImageNet創建架構。 我不知道有任何廣泛進入的機器學習比賽已經使用神經架構搜索獲得了。
此外,我們不知道超級計算昂貴的神經架構搜索方法,谷歌的推廣是一種優越的方法。 例如,最近的論文,如高效神經架構搜索(ENAS)和
可區分架構搜索(DARTS)提出了更有效的算法。 DARTS只用了4個GPU天 ,相比之下,NASNet為1800 GPU天,AmoebaNet為 3150 GPU天 (所有人都在Cifar-10上學到了相同的精度)。 杰夫迪恩是ENAS論文的作者,該論文提出了一種計算成本低 1000倍的技術,這似乎與他在一個月后在TF DevSummit上強調使用計算成本高100倍的方法不一致。
那為什么所有關于Google的AutoML的炒作?
鑒于上述限制,為什么Google AutoML的炒作與其經過驗證的有用性(至少到目前為止)如此不成比例? 我想有幾個解釋:
谷歌的AutoML強調了將一個學術研究實驗室嵌入營利性公司的一些危險 。 試圖圍繞有趣的學術研究構建產品是一種誘惑,而不評估它們是否滿足實際需求。 這也是許多人工智能初創企業的故事,例如MetaMind或幾何智能,最終在沒有生產產品的情況下最終成為收購者。 我對創業公司創始人的建議是避免制作博士論文,避免只招聘學術研究人員。
谷歌擅長營銷 。 許多局外人認為人工智能是一個難以接近和令人生畏的領域,他們并不認為他們有辦法評估索賠,特別是像谷歌這樣的獅子公司。 許多記者也成了這個問題的犧牲品,并且不加批判地將谷歌的炒作引入了炙手可熱的文章。 我會定期與不參與機器學習的人交談,但他們對從未使用過的各種Google ML產品感到興奮,也無法解釋任何問題。
谷歌人工智能研究人員發布了 “深度學習技術來重建真正的人類基因組”,將自己的工作與諾貝爾獎獲獎發現(狂妄自大!)相比較,谷歌對其自身成就的誤導性報道的一個例子就出現了,故事被選中連線 然而,約翰斯·霍普金斯大學生物醫學工程,計算機科學和生物統計學的杰出教授史蒂文·薩爾茨伯格(Steven Salzberg) 駁斥了谷歌的帖子 。 薩爾茨伯格指出 ,這項研究實際上并沒有重建人類基因組,而是“僅僅是對現有軟件的漸進改進,甚至可能還不如此。”許多其他基因組學研究人員都贊同同意 Salzberg。
谷歌正在進行一些偉大的工作,但如果我們不必篩選如此多的誤導性炒作來弄清楚什么是合法的,那么它會更容易被欣賞。
谷歌有理由說服我們,有效使用深度學習的關鍵是更多的計算能力 ,因為這是一個他們明顯擊敗我們其他人的領域。 AutoML的計算成本通常非常高,例如谷歌使用450 K40 GPU 7天(相當于3150 GPU天)來學習AmoebaNet的例子。
雖然工程師和媒體經常在裸機和其他更大的東西上流口水 ,但歷史表明,創新往往是通過約束和創造力而產生的。 Google使用最昂貴的計算機處理最大的數據; 這真的可以歸結為我們其他人面對生活在資源有限的有限世界中的問題嗎?
創新來自不同的做事,而不是做大做事。 fast.ai最近在斯坦福大學DAWNBench比賽中取得的成功就是其中的一個例子。
我們如何解決機器學習專業知識的不足?
回到Jeff Dean在他的TensorFlow DevSummit主題演講中提出的關于機器學習從業者全球短缺的問題,可以采用不同的方法。 我們可以通過以下幾種方式消除使用深度學習的最大障礙:
使深度學習更容易使用
使深度學習更容易使用的研究具有巨大的影響,使培訓更好的網絡更快更簡單。 現已成為標準做法的令人興奮的發現的例子如下:
- Dropout允許對較小的數據集進行訓練而不會過度擬合。
- 批量標準化允許更快的培訓。
- 整流線性單元有助于避免梯度爆炸。
更新的研究旨在提高易用性,包括:
- 學習速率查找器使訓練過程更加健壯。
- 超級收斂加速了培訓,需要更少的計算資源。
- 現有體系結構的“自定義頭” (例如,修改ResNet,最初設計用于分類,以便可用于查找邊界框或執行樣式傳輸),可以在一系列問題中更輕松地重用體系結構。
以上發現均未涉及裸金屬電源; 相反,所有這些都是關于以不同方式做事的方式的創意。
解決關于深度學習需要什么的神話
另一個障礙是許多神話讓人們相信深度學習不適合他們:錯誤地認為他們的數據太小,他們沒有正確的教育或背景,或他們的計算機不夠大。 一個這樣的神話說,只有機器學習博士能夠使用深度學習,許多公司無法雇用昂貴的專家甚至不打擾嘗試。 但是,公司不僅可以培訓他們已經擁有的員工成為機器學習專家,甚至更可取,因為您現有的員工已經擁有您所在地區的專業知識!
在我在麻省理工學院技術評審會上的演講中,我提到了6個神話,這些神話導致人們錯誤地認為使用深度學習比現在更難。
?
對于與我交談的絕大多數人來說, 進入深度學習的障礙遠遠低于他們的預期 :一年的編碼經驗和訪問GPU。
增加訪問權限:Google Colab筆記本電腦
雖然云GPU(每小時約50美分)的成本在我們許多人的預算范圍內,但我會定期與世界各地的學生聯系,這些學生完全無法使用任何GPU 。 在某些國家/地區,有關銀行和信用卡的規定可能會使學生難以使用AWS等服務,即使他們有錢。 谷歌Colab筆記本電腦是一個解決方案! Colab筆記本提供了一個Jupyter筆記本環境,無需設置即可使用,完全在云端運行,并允許用戶訪問免費的GPU(盡管不允許長時間使用GPU)。 它們還可用于創建包含在交互式環境中運行的工作代碼示例的文檔。 谷歌colab筆記本將比谷歌的AutoML更多地實現深度學習的民主化; 也許這將成為未來谷歌營銷機器的更好目標。
http://www.fast.ai/2018/07/23/auto-ml-3/
總結
以上是生活随笔為你收集整理的【译】Google's AutoML: Cutting Through the Hype的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【译】An Opinionated In
- 下一篇: 【译】Notes on Blockcha