天天看點

業界首批「首席AI架構師」出爐,百度黃埔學院推動飛槳在企業中的應用

去年 3 月 22 号,華為 HiAI 首席架構師楊鋆源第一次聽到 PaddlePaddle 這個名字。當時,他的内心想法是,「業界深度學習架構已經很多了,開發者已經是選擇困難,百度還有必要再做一個嗎?」

如今,他的想法發生了改變:「做深度學習架構需要大量的投入,無論是做架構的提供者,還是廣大的學員或者是開發者,都要花很大的精力去學習。平台必須堅持數年連續投入,百度願意做這件事是國内開發者的幸事。向所有願意在基礎能力投入的組織和個人緻敬,因為他們推動了整個産業的可持續性發展。」

楊鋆源想法的改變,源于一項為期六個月的教育訓練。

今年初,百度聯合「深度學習技術及應用國家工程實驗室」成立「黃埔學院」,旨在為各行各業培養第一批「首席 AI 架構師」。

第一期學員共 35 人,分别來自不同企業和機關(包括國家衛星氣象中心、中油瑞飛、中信銀行、神思電子、OPPO、廣東電網、廣東長隆集團、中國聯通軟體研究院、華為、米文動力、愛奇藝等),當然楊鋆源是其中之一。

他們在北京進修半年,在半年時間裡,他們結合自身行業和企業需求,使用飛槳(PaddlePaddle),将 AI 結合到業務實踐中應用落地。

上周日(6 月 16 日)下午,他們在百度科技園熊掌報告廳上完「最後一課」後,28 位通過畢業答辯的學員獲得了畢業證書,成為百度認證的業界首批「首席 AI 架構師」。

業界首批「首席AI架構師」出爐,百度黃埔學院推動飛槳在企業中的應用

飛槳(PaddlePaddle)核心架構 v1.5 即将釋出

在這半年時光裡,陪伴着楊鋆源們一起成長的,還有 PaddlePaddle——中文名為「飛槳」,是由百度自主研發,集深度學習訓練和預測架構、模型庫、工具元件、服務平台等為一體的開源深度學習平台。

2016 年,在百度世界大會上,百度宣布 PaddlePaddle 開源,國内首個也是目前唯一一個開源開放、功能完備的端到端深度學習平台誕生。

去年,PaddlePaddle 核心架構 Paddle Fluid v1.0 釋出了穩定版本;半年來,飛槳(PaddlePaddle)在易用性、性能、模型豐富度等方面取得了大量突破性進展,百度深度學習技術平台部總監、黃埔學院副院長馬豔軍說。

基于百度多年的産業應用經驗,以及百度大腦生态夥伴的人工智能解決方案實踐,飛槳(PaddlePaddle)目前已經支援六十多個經過真實業務場景驗證的官方模型,涵蓋視覺、自然語言處理、推薦等 AI 核心技術領域。

  • 在核心架構層面,它提供開發、訓練和預測一整套的技術能力,它同時支援稠密參數和稀疏參數場景,支援千億規模參數、數百個節點的高效并行訓練,為使用者提供業界最強的超大規模并行深度學習能力;它提供性能全面領先的底層加速庫和推理引擎、Paddle Mobile、Paddle Serving、高效自動化模型壓縮庫 PaddleSlim,為使用者提供端到端全流程部署方案;
  • 為适應工業大生産階段的「标準化、自動化和子產品化」,它提供包括遷移學習、強化學習、自動化網絡結構設計、訓練可視化工具、彈性深度學習計算等在内的工具元件;
  • 在服務平台層面,它提供零基礎定制化訓練和服務平台 EasyDL 和一站式開發平台 AI Studio,進一步降低深度學習應用門檻,讓零算法基礎加速推動産業智能化變革。
業界首批「首席AI架構師」出爐,百度黃埔學院推動飛槳在企業中的應用

飛槳(PaddlePaddle)全景圖

「飛槳(PaddlePaddle)核心架構 Paddle Fluid v1.5 馬上就要釋出」,馬豔軍當日透露。

飛槳(PaddlePaddle)總架構師于佃海、主任架構師胡曉光和董大祥分别從飛槳的基本能力、設計,模型的穩定性和易用性,飛槳在大規模分布式應用場景中的應用等方面,對飛槳在這半年裡取得的進展做了更詳細的介紹。

于佃海說,最近半年,他們在 OP 的完備性上做了很多建設;飛槳(PaddlePaddle)的 API 也逐漸穩定下來;他們還完善了對應的中英文雙國文檔,優化了底層性能,并增加了對動态圖程式設計的支援。

胡曉光表示,飛槳(PaddlePaddle)模型庫中模型的數量已經從早期的不到二十個模型,增長到六十多個,覆寫方方面面,還包含「非常前沿」的模型。

他還表示,飛槳(PaddlePaddle)提供的算法模型全部源于百度的工業實踐,曆經大規模資料、場景訓練,特别是針對中文的語義表示、情感分析等,百度基于特有的資料算法已可提供成熟穩定的模型,大幅提升訓練速度和實作效率。比如機器翻譯的模型,在訓練上比其他架構快 60% 以上,預測速度快近 4 倍。

董大祥透露,他們在大資料訓練的過程中做了很多優化,包括資料分布式的 I/O,随機打亂等功能。他們将在飛槳(PaddlePaddle)的開源項目裡逐漸增強模型的異步能力,以更高成本效益擴充節點。「易用性方面,1.5 版本會釋出分布式訓練的 API。」

「最後一課」:探讨飛槳(PaddlePaddle)在企業中的應用

當日,答辯結束後,百度黃埔學院的導師——百度馬豔軍、于佃海、胡曉光、董大祥給學員們上了「最後一課」,分享了飛槳(PaddlePaddle)在百度産品落地的經驗。

他們還與學員——華為 HiAI 首席架構師楊鋆源、愛奇藝深度學習平台架構師周海維、米文動力 CTO 蘇俊就「飛槳(PaddlePaddle)在企業中的應用」展開了圓桌讨論,他們圍繞深度學習架構落地過程中的痛點、IoT 趨勢給深度學習部署帶來的挑戰、國産深度學習平台應該如何發展等話題進行了探讨。

業界首批「首席AI架構師」出爐,百度黃埔學院推動飛槳在企業中的應用

以下為圓桌讨論實錄,經筆者編輯、删減後,以對話體的形式呈現給讀者:

馬豔軍:首先,請三位學員介紹在使用深度學習架構的過程中,遇到了哪些開發上的痛點?

愛奇藝周海維:我們公司工程師團隊人數不是特别多,特别是做平台的人數不是特别多,是以我們很希望能夠看到飛槳(PaddlePaddle)有一些端到端的解決方案,特别是設計方面,比如直接提供 RPC 接口或者直接把最終的産品形态能夠提供出來,對于我們開發的效率還有上線的時間壓力,特别有保證。

華為楊鋆源:飛槳(PaddlePaddle)進步非常大,無論從基礎能力還是開發資源上面都取得很可觀的進步,同時我們也要看到在飛槳對于開發者的文檔體系或者描述還有提升的空間,因為很難通過直截了當的東西看明白問題在哪兒,要從底層代碼一層層去看。經過與飛槳的架構的內建的過程,我覺得飛槳(PaddlePaddle)在移動端有很大的發展空間。在整個業界發展來看,隐私以及執行速度方面飛槳都占很大的優勢,我們希望在未來的發展裡,能夠通過晶片和飛槳,在移動端做更多工作。

米文動力蘇俊:我們更加注重融合場景。深度學習對于傳統算法提高的性能很多,但是一般來說,我們的檢測手段有限。深度學習是基于現有的資料集做判斷,但是實際情況和我們掌握的情況有比較大的差別,這個時候,深度學習的局限性會展現出來。

一般的人機檢測,大家覺得沒有什麼問題,都比較成熟,但工業場景中不可避免會出現檢測和人臉識别失效的問題,如何用基于資料分析的方法論和部署相結合,是一個痛點。

另一方面,深度學習并不适合所有的場景,怎麼劃定深度學習真正适用的領域的邊界,讓它可複制化,是現在很多場景裡做的不太夠的地方。

馬豔軍:深度學習在很多場景下都有很成功的應用;同時,在真實的業務場景實作部署,并把它的效果調到最優的狀态,還是有不小的挑戰。一般項目的落地會有一定的周期,接下來請胡曉光和董大祥分别介紹飛槳(PaddlePaddle)在百度産品的經驗。

胡曉光:2014 年底,機器翻譯領域提出深度學習算法的應用;2015 年 5 月,百度翻譯就率先上線了深度學習系統。我們那個時候開發架構,面臨一些多機和分布式多卡的問題,攻克了一系列技術問題。

而線上應用的時候又面臨新的問題:內建飛槳之後,預測速度能不能滿足相應的需求?百度整體流量很大,每天有上億的請求,我們又花了很多時間做加速。百度翻譯需要用大量伺服器,我們花了接近小半年的時間針對不同場景做優化,使預測速度快了近 4 倍。

是以,做一個任務,如果用好架構,速度會很快;但真正在大規模的應用場景裡落地,還有很多針對性的任務要做,包括針對不同場景做加速。

董大祥:百度有很多大資料的場景,資料的存儲、壓縮以及和深度學習架構之間的融合是需要很多工作的。我們的業務環境非常複雜,并不是說任何一個架構進去之後都可以很容易地和業務資料串聯起來,進行快速的訓練,并且是分布式的訓練。

如果大家使用深度學習架構,首先,要對自己的業務非常了解,了解業務上整個資料流的來源以及特點,能夠快速定義自己的問題,并用最簡單的模型快速調試。小規模資料調試沒問題,要考慮上規模訓練,也就是分布式訓練(百度基本上使用的是分布式訓練,數百 CPU 節點的任務十分常見)。

業務落地的過程其實周期比較長,一般分兩個情況:一個情況是,這個業務以前已經在用某一種深度學習模型的實作,也可能不是使用深度學習的系統。這時,把一個新的深度學習架構做到線上是有挑戰的,需要很長時間的調研和打平,比如,怎麼和線上政策打通,包括深度學習的訓練效果和預測速度以及模型切換的周期,都需要精準打平。

像資訊流場景一般需要快速更新模型,除了要求對業務的了解以及資料流能夠精準的比對到系統外,它對深度學習架構的訓練速度也有非常高的要求,這也是為什麼我們持續建設異步并行能力的原因。

很多實際業務場景,并不是需要花更多的時間把 1% 的準确率提上來,而是要把這個模型運轉起來,能夠快速跟上資料産出速度,快速疊代新的模型,讓系統見到很多新的知識,這是資訊流裡面比較大的挑戰。

大家用上深度學習架構以後,後面拼的主要是疊代周期。使用飛槳(PaddlePaddle)的業務線,想疊代一個新模型,百度的通常情況是,每個人都可以支援一條線,如果資料流很完備,大概幾天可以疊代一個版本。

是以,在最開始選架構的時候,要注重長期維護的可能性。有一些架構第一部分使用起來比較容易,但如果後面疊代效率不高,對整個公司的貢獻度并不高,這是為什麼使用飛槳(PaddlePaddle)反而是比較快的實作方式。

馬豔軍:完整打通整個流程确實比較複雜,但是第一次流程打通了,後面更新資料、再疊代模型,讓效果變得更好,可以變得很快。是以,大家要把第一次上線做紮實。

關于深度學習的部署,是很多同學關注的點。現在,IoT 的趨勢越來越明朗,出現了各種各樣異構的裝置(不隻雲、端),這對于深度學習的部署是比較大的挑戰,并且直接關系到整個應用的效果和整個應用的效率。接下來,我們聊一下這個話題。先請佃海介紹一下現在飛槳(PaddlePaddle)的情況以及計劃。

于佃海:整體來說,我們對飛槳(PaddlePaddle)的預測部署能力是非常重視的。首先,我們公司内部業務的實際應用場景很就很多,我們的模型都要上線部署,是以必須把上線部署這個環節做好。第二,我們做端到端完整的深度學習架構,最大程度上便利開發者。

部署是很多開發者真正把這個東西落地的痛點。我們在這塊投入很大,做了多個方面的工作:包括服務化的支援,以及對飛槳(PaddlePaddle)移動端的工作,支援手機上的各種部署,已經在百度 APP 上有廣泛使用。還有很多場景都有類似的需求,比如自動駕駛。我們思考怎麼把速度做的最快,同時相容多種平台。我們讓飛槳能夠在不同的硬體平台上友善部署。端上的環境很複雜多樣,我們也在不斷完善,目标是做到更全的覆寫,并将模型做的更小。我們也提供壓縮工具,有量化等多種方式全方位支援,把這個工作做好。

周海維:昨天跟董大祥老師交流的時候,他說百度在推理方面特别看重性能,特别看重計算速度。但這跟原來傳統的有點差別,更看重單線程。

如果完全按照這個進行改造,我們要把整個引擎上下遊全部改造一遍,不管是工程還是工作量,難度都很大。但效果可能很多倍,是以我們很希望做到這個事情。如果我們公司做的話,可能請董大祥老師把這部分開源出來,我們把這個短闆能夠補上。

楊鋆源:現在,安卓的體系裡有一些算法支撐,但是,想發揮好晶片的極限性能,還是要針對晶片做單獨的定制。 

我們一直把模型作為資料檔案,如果模型部署能夠對于開發者提供模型托管能力,相當于根據不同的平台能夠把模型自動下載下傳到本地的方式,開發者可以節省很多适配工作,而百度天然具備這樣的平台和優勢。

蘇俊:IoT 有比較明顯的趨勢,比如在架構層面和應用層面。

架構層面包括華為開源和百度開源,給 IoT 的發展打了一個很好的基礎,能夠解決我們模型不斷疊代、自動部署的問題。随着業務推進,不斷擷取新的資料,如何有效地根據新的資料再調整模型,隻用其進行訓練還是有更好的方法?現在其實沒有方法論的東西,我們還是基于原來的基礎理論在做。

飛槳(PaddlePaddle)訓練出來後,如何直接使用在裝置上?針對這一點,我們的情況比較好,現在沒有什麼問題。

「我們今天擁有非常好的時機。國内現在有大量的需求在驅動着我們,我們能夠預見,人工智能和産業的深度結合勢必發展迅速。」百度 AI 技術平台體系執行總監、深度學習技術及應用國家工程實驗室副主任、黃埔學院院長吳甜在畢業典禮緻辭中表示,

「黃埔學院希望能切實幫助企業儲備既能分析業務問題,又掌握模型算法,還能操刀落地應用,深谙算法與工程的緊密結合的企業創新型人才,如此由内需驅動,讓我們擁有更多更好的創新機會。」

本文為機器之心原創,轉載請聯系本公衆号獲得授權。

繼續閱讀