從AI School到AI Lab,微軟一直在為推進人工智能普及化、降低AI開發門檻做出努力。在微軟亞洲研究院副院長、人工智能系統聯合中心負責人周禮棟博士看來,突破目前深度學習瓶頸的一大關鍵就在于系統,系統的最高境界是“完全隱形”。為此,微軟亞洲研究院正著力打造一款針對深度學習的開源項目——深度學習智能探索Neural Network Intelligence (NNI),通過簡單易用的“隱形”系統、智能自動的學習幫助更多的開發者。
2017年微軟Build開發者大會上,微軟高級項目經理Cornelia Carapcea展示了一項技術:
用戶創建的自定義視覺API模型只需要一個訓練數據樣例(只有幾十個攝影樣本),而Custom Vision則可以完成其余的工作。
一旦創建了這個模型(只需幾分鐘),用戶就可以通過安裝在微軟服務器上的REST API訪問。Carapcea說它可以用于識別食物和地標,甚至是應用在零售環境中。
Custom Vision可以選擇最可能為模型增加最大增益的圖像,允許用戶手工標記圖像,然后繼續改進總體的準確性和可靠性。
微軟亞洲研究院副院長、人工智能系統聯合中心負責人周禮棟博士在接受AI前線記者采訪時說:Microsoft Custom Vision和Google Cloud AutoML都是針對視覺識別領域里的AutoML(自動學習)的一個應用,都非常的簡單易用。通過把復雜的模型選取、參數調優的過程掩藏在了產品的背后,Microsoft Custom Vision可以給用戶提供一個非常簡單易用的體驗,使非專業人士也能零門檻的定制自己的模型。
同時,Microsoft Custom Vision也是微軟認知服務(Cognitive Services)中的一部分,微軟推出的認知服務包括視覺、語音、語言、知識和搜索等五大類別的二十多個API,如人臉識別、情緒識別、語音識別、拼寫檢查、語言理解等等。微軟認知服務的側重點是為用戶提供一個通用的服務,用戶可以直接調用現成的智能API來開發出更智能、更有吸引力的產品,而不需要花費大量時間來自己訓練模型。
而對于最近剛剛興起的AutoML技術,周博士也發表了一些自己的看法:
近年來,“AutoML(自動學習)”已經成為了一個研究熱點。通過自動化的方式,機器試圖學習到最優的學習策略,從而避免機器學習從業者低效的手動調整。經典的AutoML方法包括用于超參數調節的貝葉斯優化(Bayesian Optimization),以及用于優化器和網絡結構調整的元學習技術(Meta learning/Learning-to-Learn)。除了在學術界引起了廣泛研究興趣,AutoML在工業界也已經得到了實際應用,例如此前提到的微軟Azure提供的自定義影像(Custom Vision)服務,它能夠方便云計算用戶自動訓練用于計算機視覺的機器學習模型。
AutoML讓用戶在沒有專業知識的情況下使用機器學習的門檻大大地降低,甚至可謂是零門檻。在沒有機器學習專家指導的情況下,用戶通過AutoML就能在一定情況下得到高質量的模型,這使機器學習的行業應用更加容易可行。周博士說,微軟亞洲研究院希望把這類技術的使用和研究更加普及化。微軟正在著力打造一款用于深度學習的項目,名曰:深度學習智能探索(Neural Network Intelligence),簡稱叫NNI。
開發NNI工具包的目的是為用戶提供智能化、自動化的深度學習工具包,可以幫助用戶或者開發者自動地進行數據分析,自動的幫他們搜索模型,進行參數調試和性能分析,通過這樣自動迭代的準備過程,用戶可以節省更多的時間,將精力放在探索更有深度的機器學習的道路上。
周禮棟博士表示,NNI集成了AutoML算法,是一個支持不同操作系統的,在本地也可以云端運行的工具包。它特別適合有一定人工智能基礎的科研人員更加有針對性、精準的選取模型。微軟為此制定了全新的語言,使得定義和描述搜索空間只需幾行代碼,所有的底層通信等復雜問題都被封裝起來,對使用者完全透明。NNI著重解決了一系列支持AutoML的系統問題,以開放的方式有效加速AutoML算法研究者在這一領域的創新。為了鼓勵更多人工智能的科研工作者一起加強這項研究,NNI計劃將在近期開源。
另辟行徑,打造智能系統
然而,微軟對降低人工智能門檻,提升深度學習普及化的想法可不止于此,AutoML技術只是其中的一環,微軟要做的是智能系統。
周博士表示,AutoML是人工智能系統的一部分,它也對人工智能系統提出了包括資源管理、任務分配等一系列挑戰。簡單的說:靈活可擴展的好的人工智能系統能夠更好的支撐AutoML,使其更好更快的生成結果。而好的AutoML則能夠使人工智能系統更加完備,更方便使用。
智能時代,系統為先
周禮棟博士首先表示:人工智能如果沒有系統的話,就只是一個海市蜃樓——看上去很美,但一點都不真實。
他認為,系統就是把復雜的東西變得有序易用。而在計算機領域,系統的重要性是不言而喻的,在整個計算機發展的過程當中,我們感受到的每一次大的突破,背后實際上都有很多計算機系統的理論和設計作為推動力。
周博士分析了每一個時代下,系統的重要性:
互聯網時代,有很多非常新的系統出現在我們的生活中,其中最有代表性的一個系統就是搜索引擎。大家很多人都用搜索引擎搜索網上的信息,而搜索引擎背后就有很多系統領域的技術、理論。其中一個典型的系統理論就是分布式系統理論。
在大數據或者說大家都熟知的云計算時代,云計算的系統就是非常典型的系統。現在我們看到很多公司都在提供云計算的服務。這里就用到了一些新的計算機系統的技術,其中有虛擬機技術、容錯技術等,因為這些技術才使得這樣的服務和系統成為了可能。
如今的人工智能時代,我們看到越來越多深度學習在計算機視覺、語音識別、自然語言等領域都取得了突破,這就對系統產生了更大的需求。我們研究開發了很多大規模深度學習的平臺,這其中也依托了最近在系統方面的進展和研究成果,包括怎么利用異構的硬件高效地執行這些深度學習的任務,也包括怎么進行高性能的并行計算。這些使得深度學習,特別是非常有深度的模型的處理成為可能。
周博士說:“我們還可以設想,未來量子計算將成為主流的技術。但是我們也可以看到,現在在系統方面的發展還沒有到能夠讓它付諸實用的階段。雖然理論上很成熟了,但若要變成現實,還需要在系統方面進行很多創新、研究、實踐,才能促成這一步大的變革。”
深度學習的瓶頸
在演講中,周博士提到了深度學習目前已經取得進一步的發展,但還是會遇到一些瓶頸,而且很多瓶頸還是產生在系統方面。他說:“現在,即便我們有很多不同的硬件加速,有很多不同的模型,我們能怎么解決把這個模型非常高效地映射到相應的硬件上,并且有不同定制的優化呢?整個深度學習領域里面的工作目前其實都是人工去做的,而不是用系統化的方法去完成的。”
此外,進行深度學習模型訓練的時候,開發者們一般使用GPU來進行加速,當訓練樣本只有百萬級別的時候,單卡GPU通常就能滿足我們的需求,但是當訓練樣本量達到上千萬、上億級別之后,單卡訓練的耗時會很長,所以這個時候通常需要采用多機多卡進行加速。在這種情況或者一些更復雜的情況下,我們就需要很多系統方面的設計和考慮。人工智能的實踐者不用再擔心是不是需要自己架一個GPU集群才可以做人工智能的事情。因為這是系統應該完成的事情,周博士說:“我們應該把這些事情都做了,那么人工智能方面的研究者就能被解放出來專注研究人工智能的問題了。”
人工智能領域的門檻非常高,所以人工智能從業者的身價也非常高。這也是因為系統層面的很多工作還不夠深入。周博士表示,他們推進自己的工作,就希望能夠把這個門檻降低,真正做到“人工智能普及化”。這將是非常可行、且必行的下一步工作。
微軟的智能系統
周博士認為:系統最關鍵的創新,就是把抽象實現的非常完美。用戶其實“看不到”系統,大家談起來,似乎看到的都是視覺等上層的突破,永遠看不到下面底層的進步。所以我們一直說,系統的最高境界就是完全不可見的,是隱形的。
他告訴我們:微軟一直認為,未來,整個世界就是一臺計算機。現實世界也好,虛擬世界也罷,所有這些部分都將連接在一起。
周博士說:“微軟亞洲研究院對系統這個領域的理解是:首先,系統是一個跨領域、有廣度的研究,我們需要對從底層的硬件一直到上層的應用,包括人工智能這樣新的應用,都有非常廣博的了解,這樣才能夠設計出適合應用的系統。其次,編譯器原理、編譯優化、數據庫系統這些領域,我們也都需要有深入了解,這樣才能夠通過合理的系統設計充分利用硬件的能力,也就是說,系統方面的研究也一定要有深度,這也是非常重要的。”
據介紹,微軟亞洲研究院系統領域的研究成果在現實的商業場景中已經有了廣泛的應用,并產生了實際的商業效能,例如:
GraM分布式并行圖處理引擎,能夠在內存里面通過集群處理具有超過10億條邊的圖;
Apollo大數據任務調度系統,可以直接部署在10萬臺機器上,每天能夠調度幾百萬條的任務,用來支持搜索引擎、廣告等部門的日常業務;
StreamScope分布式流數據處理平臺,能夠實時處理數十億的廣告信息;
KV-Direct Key/Value系統,可處理每秒12億次以上的操作,相比同類最前沿的研究系統有至少一個數量級的提升。雖然這個系統還沒有得到部署,但它是微軟目前研究的最前沿的一個代表,發表在計算機系統的頂級會議SOSP 2017。這些只是冰山一角,據說微軟在智能系統方面的探索遠不止于此,智能時代的微軟似乎擁有著更多的可能性。
智能系統的未來
最后,周博士表達了他個人對智能系統發展趨勢的一些看法:
首先,現在很多深度學習的框架,將來都將互通統一。其實數據庫就是一個很好的例子——很久以前有各種各樣的數據庫,但最后大家發明了所謂的以Relational algebra(關系代數)為基礎的數據庫,讓所有數據庫模型都成為一種統一的模型。在人工智能方面,這種互通的統一性,從系統角度來說也是肯定會發生的一件事情。
其次,系統的能力會越來越強,會有無界的資源。整個世界就是一臺計算機,所以我們最后希望能夠達到的目標就是,在資源無界的環境里,你所使用的資源,無論是來自于計算中心還是來自于自己的計算機,甚至是來自于一個不知道是什么的地方,都會被系統很好地隱藏起來。你只要把事情做好,而不用關心資源是從哪里來的。
最后,也是需要再強調的一點,在系統研究里最關鍵的創新在于要提出一種更簡約的抽象,并且用全新的工具和平臺來支持這個抽象,從而讓大家各方面的工作效率得到提升。
結尾
為了推進人工智能普及化、降低開發門檻,微軟正在不斷地努力和嘗試,相信用戶很快就能享受到這些努力的成果。就像周禮棟博士所說:系統的最高境界是無形的。也許技術的最高境界就是無形的,好的技術就是這樣在潛移默化中改變了我們的生活,雖然我們沒有感覺,但是它的確發生了。
以“系統|加速未來變革”為主題的2018微軟教育峰會將在北京時間8月1日至8月3日舉行,作為工業界與學術界公認的頂級對話平臺,本次大會將匯集來自全球學術界、微軟和微軟研究院的專家,共同探討如何構建當今由“智能云+智能邊緣”組成的覆蓋全球的“AI超級計算機”。點擊二條推送了解本屆峰會的亮點與線上直播安排。
評論
查看更多