2
本文作者: 李詩 | 2018-07-28 10:09 | 專題:AutoML 祛魅 |
7月24日,在Google Cloud Next大會上,Google帶來Cloud AutoML的全新進展,又成功吸引一大波注意。
Google AI首席科學家李飛飛宣布,推出正式版的Cloud AutoML Vision,同時,新增用作自然語言處理的AutoML Natural Language和用作翻譯的AutoML Translation。至此Google Cloud AutoML擁有視覺、自然語言處理、翻譯等多種服務。
對于承載著AI民主化使命的AutoML,大多數(shù)媒體都是一片贊譽。而fast.ai創(chuàng)始者之一Rachel Thomas特意撰寫三篇博文對AutoML的局限進行反思。為了深入理解AutoML,雷鋒網(wǎng)也特意采訪了一些國內(nèi)致力于AutoML的公司,一起探討AutoML真的是AI的未來,還是大家期望過高?創(chuàng)業(yè)公司要進入AutoML領域如何與大公司競爭?
要完成一個機器學習項目,不管是圖像識別、語音識別還是自然語言處理,其實現(xiàn)的過程都需要包括:數(shù)據(jù)預處理、特征選擇、模型算法選擇、調(diào)參、上線后模型的再優(yōu)化、效果評估。
人工設計機器學習模型的過程中,神經(jīng)網(wǎng)絡的設計是一大難點,需要設計師非常有經(jīng)驗。Google CEO Sundar Pichai曾經(jīng)這樣介紹AutoML,“目前,設計神經(jīng)網(wǎng)絡非常費時,并且需要專家只在科學和工程領域中的一小部分進行研究,為了解決這一問題我們創(chuàng)造了一種名為AutoML的工具,有了它,神經(jīng)網(wǎng)絡可以設計神經(jīng)網(wǎng)絡?!?/p>
據(jù)Google介紹,Google Cloud AutoML有三大核心技術:神經(jīng)架構搜索技術(Neural Architecture Search Technology)、learning2learn以及遷移學習(transfer learning)。Cloud AutoML主要承擔了機器學習中特征選擇、模型算法選擇以及調(diào)參部分。神經(jīng)架構搜索技術可以自動搜索出一個好的參數(shù)+神經(jīng)網(wǎng)絡結構組合,而遷移學習則可以記住最終開發(fā)者認可的模型,下一次可以做得更好更快。
雷鋒網(wǎng)也曾發(fā)文分析,Google Cloud AutoML中的神經(jīng)架構搜索技術用神經(jīng)網(wǎng)絡設計神經(jīng)網(wǎng)絡的方式其實就是如下圖所示:
左邊有一個名為「控制器」(the controller)的 RNN,它設計出一個「child」的模型架構(雷鋒網(wǎng)覺得可以稱之為「雛形/子架構」),而后者能夠通過某些特定任務進行訓練與評估。隨后,反饋的結果(feedback)得以返回到控制器中,并在下一次循環(huán)中提升它的訓練設定。這一過程重復上千次——生成新的架構、測試、再把反饋輸送給控制器再次學習。最終,控制器會傾向于設計那些在數(shù)據(jù)集中能獲得更高準確性的架構,而反之亦然。
AutoML Vision是Google Cloud AutoML的首個版本,據(jù)Google介紹,即使是沒有機器學習專業(yè)知識的小白,只需了解模型基本概念,就能借這項服務輕松搭建定制化的圖像識別模型。只需在系統(tǒng)中上傳自己的標簽數(shù)據(jù),就能得到一個訓練好的機器學習模型。整個過程,從導入數(shù)據(jù)到標記到模型訓練,都可以通過拖放式界面完成。
聽起來很厲害,不少人對AutoML Vision也是一片贊譽,特別是李飛飛和李佳也都對此寄予厚望。李飛飛在2018年發(fā)布Google Cloud AutoML時,說到:“在差不多一年多以前我們兩個人共同加入谷歌云的時候,我們都心懷一個使命,那就是讓 AI 平民化。我們的目標是降低 AI 的使用門檻,讓 AI 對盡可能多的開發(fā)者、研究者和商業(yè)用戶來說變得觸手可及?!?/p>
李飛飛表示谷歌AutoML是在TensorFlow和Cloud Vision API之間的產(chǎn)品,能讓非專業(yè)機器學習人士根據(jù)需求開發(fā)機器學習模型,這個定位如何理解,什么樣的人用TensorFlow,什么樣的人用Cloud Vision,以及什么樣的人用AutoML?
智鈾科技創(chuàng)始人夏粉告訴雷鋒網(wǎng),TensorFlow比較適合于算法科學家,適合于有一定機器學習基礎的人用來研究算法以及應用。Cloud Vision適合于關心AI應用的人,希望用AI模型直接解決應用場景問題,比如說像人臉識別,直接拿API進行人臉識別,這里的模型是已經(jīng)建好的模型。AutoML介于兩者之間,它適用于機器學習背景較弱或者沒相關經(jīng)驗的人來建模,根據(jù)手頭場景數(shù)據(jù),建立針對該場景的模型??梢哉fTensorFlow研究如何建模,AutoML是幫助建模,Cloud Vision是直接使用模型。
有不少媒體在報道AutoML時都寫到,無需寫一行代碼就能自動生成機器學習模型,這或許有些言過其實,即使AutoML不寫代碼也能用,但是沒有經(jīng)驗的人不太可能從中獲得想要的結果。
Rachel Thomas在博文中分析到,Google Cloud AutoML目前還有不少限制。第一個最大的限制就是其需要大量的算力,Google 采用的神經(jīng)架構搜索方法需要用500GPU訓練4天。在2018年3月的TensorFlow開發(fā)者峰會上,Jeff Dean表示在未來,Google Cloud將會以100倍的算力取代機器學習專家,而對于算力有強大要求的神經(jīng)架構搜索就是例證。
其次,機器學習的步驟很復雜,數(shù)據(jù)清洗和模型訓練是機器學習中最為耗時的部分,雖然AutoML解決了模型的訓練,但是數(shù)據(jù)清洗依然對數(shù)據(jù)科學家有很高的要求。
此外,神經(jīng)架構搜索要做的是尋找新的架構,而目前大多數(shù)人其實并不需要全新的架構,通過遷移學習已知的架構就能解決問題。
云腦科技核心算法工程師徐昊告訴雷鋒網(wǎng),AutoML目前還面臨三個問題。第一是計算量:目前的AutoML優(yōu)化算法要能發(fā)揮效能,在超參數(shù)空間中要能夠采樣足夠多的點。每一個采樣點都是一種超參數(shù)的配置,需要經(jīng)過一次完整的訓練過程。在較大的項目,如在線CTR預估中,模型大數(shù)據(jù)大,每一次完整的訓練都很耗資源。這種情況下,使用AutoML進行自動調(diào)優(yōu)耗時極長,往往不是項目周期所能接受的。
二是局限性:AutoML算法目前主要針對的是調(diào)參,以及部分特征抽取方面的問題,可以說只是機器學習項目中的一個環(huán)節(jié)。在實踐中要搭建一個能夠落地的模型,還有很多因素需要考慮。例如對于不同類型數(shù)據(jù),如何選取合適的模型;模型大小,特征選擇與最終deloy時serving延時的trade off等等。
三是人類工程師的參與:AutoML在當前的狀態(tài)下,在大項目中完全取代人類工程師難度是很大的。我們認為較好的方式,應該是AutoML能夠與人類工程師協(xié)作,AutoML的優(yōu)化算法能夠展示調(diào)參過程與方向,便于工程師參與介入。并且提供合適的接口,將人工經(jīng)驗引入自動學習的過程。
與AutoML Vision同理,AutoML Natural Language和AutoML Translation也是為了促進AI民主化,讓更多的公司和開發(fā)者能夠輕松打造自己的自然語言處理應用,或者是AI翻譯應用。
Cloud AutoML Natural Language能夠用于自動預測客戶所需要的自定義文本類別,比如美國出版與多元化傳媒巨頭赫斯特集團(Hearst)就在使用Google的這項新工具對其內(nèi)容進行管理,他們的高級副總裁Esfand Pourmand表示,這個工具能夠讓赫斯特生成自定義的AI模型應用于內(nèi)容管理,其精度高于其他方案。
Cloud AutoML Translation則可以為客戶提供定制化的翻譯需求,日本經(jīng)濟新聞社(Nikkei Group)數(shù)字業(yè)務常務董事Hiroyuki Watanabe表示,Cloud AutoML Translation這項工具能夠快速對內(nèi)容進行定制化的翻譯,其準確率“讓人印象深刻”。
Google Cloud研發(fā)負責人李佳談到,“至此,AutoML可以為各行各業(yè)缺乏AI經(jīng)驗的企業(yè)和開發(fā)者提供自動生成圖像、語言、翻譯功能。AutoML的注冊用戶也已經(jīng)超過18,000家,服務行業(yè)橫跨媒體、零售、金融、保險、能源、醫(yī)療、環(huán)境等等。”
為什么谷歌要針對不同的應用場景推出相應的AutoML版本?
云腦科技中國區(qū)數(shù)據(jù)算法負責人黃頌認為,不同領域的數(shù)據(jù)處理,特征抽取,模型選擇與調(diào)優(yōu)過程差別較大。例如NLP模型中,需要抽取很多與語法有關、甚至與關鍵詞在句中文中的位置有關的特征。而Vision模型中,需要抽取與圖像histogram有關的特征,差異較大。Google推出的細分場景的AutoML,應該能夠提高自動學習在各領域的效率。至于先推出AutoML Vision是因為飛飛更懂vision。相對于自然語言領域來說,圖像視覺領域目前研究更加充分,數(shù)據(jù)集也更加豐富。另外,圖像和語音領域可以獲得更加原始的數(shù)據(jù)信息,而自然語言的文本其實已經(jīng)是經(jīng)過人腦處理和抽象的結果,前者更容易為神經(jīng)網(wǎng)絡所處理。
但對于AutoML來說,背后很多技術是相通的。從AutoML Vision獲得的經(jīng)驗,也可以遷移。根據(jù)谷歌的介紹,新出的兩個系列應該也是搭建在AutoML引擎中的自動調(diào)優(yōu)和Transfer Learning兩大模塊之上,是各自細分領域的升級版。
AutoML的本質(zhì)是利用優(yōu)化算法代替人類工程師進行模型調(diào)優(yōu)等工作,從而降低專家成本。在細分領域上,如果該領域的數(shù)據(jù)特點和處理流程比較獨特(因而不能直接套用其它領域的AutoML方案),或者人類專家在解決此領域問題時存在大量機械重復無創(chuàng)造性的勞動,那這部分工作就很有可能將來被AutoML取代掉。
夏粉認為就像ML(機器學習)里的研究點非常多一樣,AutoML里也有很多可研究的技術。并且技術會不斷更新進步,每個場景下適用的數(shù)據(jù)、特征、算法以及應用過程都不一樣,需要針對性的AutoML版本,不同場景要用不同的機器學技術來做。AutoML的技術也會逐漸深入細分,比如AutoML Vision里面有AutoML圖像和AutoML視頻,NLP里面也有中文和英文。
Google將自家的項目取名為Google Cloud AutoML,在名字上占了很大的便利,以至于現(xiàn)在很多人以為AutoML就是Google家的。
AutoML的概念其實源自于2012年學術界提出的新觀念——Programming by Optimization(PbO),意在解決編程時人工調(diào)校參數(shù)的問題。學界和業(yè)界對AutoML已有諸多的實踐,我們也看到了一些產(chǎn)品,例如微軟的CustomVision.AI、國內(nèi)智鈾科技的“小智”、云腦科技的Deepro平臺。
雷鋒網(wǎng)好奇,在這個領域,創(chuàng)業(yè)公司如何與大公司競爭?
夏粉告訴雷鋒網(wǎng),我覺得跟Google AutoML做差異化競爭的話,一個是說AutoML技術點非常多,那么創(chuàng)業(yè)公司可以從里面挑一個點然后集中精力去做,解決某一類AutoML問題,把它做到商業(yè)化、做到垂直化。第二個是說Google AutoML這個策略主要是配合Google Cloud平臺,希望讓更多客戶使用Google Cloud。而對于創(chuàng)業(yè)公司的話可以注重于私有化部署這塊市場,可以做一些非云方面的事情。第三個是可以做不同行業(yè)的AutoML解決方案(比如說金融行業(yè),安全行業(yè),營銷行業(yè),我們也有針對不同行業(yè)的版本),專門為了一個垂直行業(yè)而降低機器學習的門檻。對于智鈾來說,類似 AutoML Vision 和NLP這種類似的產(chǎn)品未來可能會做,眼前還是做跟Google有些差異化的產(chǎn)品。
云腦科技核心算法工程師徐昊表示,Google的AutoML是搭配在其云平臺上進行銷售的。用戶使用AutoML的時間越長,Google Cloud的收益也越大。然后對于普通公司,往往不一定有Google Cloud那樣的計算資源。即便擁有大量的計算,往往也限于項目的周期限制,對現(xiàn)有AutoML的計算效率有更高的要求。
在計算資源不是賣點的情況下,往往需要中小創(chuàng)業(yè)公司給出更精細化的AutoML方案。云腦在研發(fā)AutoML產(chǎn)品的時候有三個優(yōu)化方向。首先是更高效,我們在更深層次進一步降低AutoML的計算量,讓自動調(diào)參能夠達到工程實踐的需求。其次是更全面,通盤考慮了整個ML流程落地的全局因素,進行全局優(yōu)化。其三高透明度,更注重AutoML的工具性,讓人類工程師能夠更好的觀察與介入。
看來,正如很多行業(yè)人士對雷鋒網(wǎng)所說,人工智能是一個全新的時代,目前還沒有出現(xiàn)真正的類似互聯(lián)網(wǎng)時代的巨頭,能夠直接霸占所有的領域。新的時代,新的機遇,正適合創(chuàng)業(yè)公司開辟自己的土壤。
相關文章:
谷歌大腦撰文解析 AutoML:神經(jīng)網(wǎng)絡如何自行設計神經(jīng)架構? | Google I/O 2017
李飛飛發(fā)文發(fā)布谷歌云AutoML Vision平臺,訂制化的企業(yè)級機器學習模型不再是難題
成立一年發(fā)布 AutoML 商用產(chǎn)品“小智”,智鈾科技希望降低機器學習門檻
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。