阿里雲推出機器學習平台,降低人工智慧門檻與開發成本
機器之心原創
作者:高靜宜
2017 年 3 月 29 日,阿里雲首席科學家周靖人博士在 2017 雲棲大會?深圳峰會上重磅推出升級版的機器學習平台 PAI 2.0,可以大幅度降低人工智慧門檻以及開發成本。
近年來,人工智慧迎來新浪潮,逐漸擴展至城市治理、交通調度、工業製造、健康醫療、司法等應用場景。在大會上,周靖人博士表示:「在過去一年的時間裡,我們協助客戶落實了多項重大的人工智慧應用,人工智慧已經成為觸手可及的普惠技術,變成真正幫助人類解決實際問題的得力助手,PAI 正是為此而來。」
2015 年,阿里雲對外發布國內首個機器學習平台 PAI (Platform of Artificial Intelligence),不僅可以實現高性能雲端計算從而降低存儲和計算成本,還具備相應的工具和演算法庫進而降低技術門檻。此次版本的重大升級建立在阿里雲機器學習平台 1.0 之上,標誌著阿里雲在構建 AI 核心技術能力上又進一步。
阿里雲機器學習平台 PAI 2.0 的主要特性包括以下方面:
全面兼容深度學習框架
自 2012 年深度學習的代表模型 AlexNet 在 ImageNet 大賽中力壓亞軍,以超過 10 個百分點的絕對優勢奪得頭籌之後,依託於建模技術的進步、硬體計算能力的提升、優化技術的進步以及海量數據的累積,深度學習在語音、圖像以及文本等多個領域不斷推進,相較於傳統作法取得了顯著的效果提升。工業界和學術界也先後推出了用於深度學習建模用途的開源工具和框架,包括 Caffe、Theano、Torch、MXNet、TensorFlow、Chainer、CNTK 等等。TensorFlow、Caffe 和 MXNet 是目前全球主流的深度學習開源框架;TensorFlow 開源演算法和模型最豐富;Caffe 是經典的圖形領域框架,使用簡單;MXNet 分布式性能優異。
深度學習通過設計複雜模型,依託于海量數據的表徵能力,從而獲取相較於經典淺層模型更優的模型表現,這樣的建模策略促使對底層訓練工具提出了更高的要求。現有的開源工具,往往會在性能上、顯存支持上、生態系統的完善性上存在不同層面的不足,在使用效率上對於普通的演算法建模用戶並不夠友好。
PAI 2.0 編程介面完全兼容深度學習框架:TensorFlow、Caffe 以及 MXNet,用戶只需要將自己本地編寫的代碼文件上傳至雲端就可以執行。
對於底層計算資源,PAI 2.0 提供了強大的雲端異構計算資源,包含 CPU、GPU、FPGA。在 GPU 方面,PAI 2.0 可以靈活實現多卡調度。
藉助這些框架以及強大的計算資源,用戶非常方便地就可以將計算任務下發到對應的分布式計算機群上,實現深度學習模型訓練與預測。
演算法庫的豐富與創新
PAI 2.0 提供 100 余種演算法組件,涵蓋了分類、回歸、聚類等常用場景,還針對主流的演算法應用場景,提供了偏向業務的演算法,包含文本分析、關係分析、推薦三種類別。
「演算法全部脫胎於阿里巴巴集團內部的業務實踐,所有演算法都經歷過 PB 級數據和複雜業務場景的錘鍊,具備成熟穩定的特點」,阿里雲首席科學家周靖人說。
支持更大規模的數據訓練
PAI 2.0 新增了參數伺服器(Parameter Server)架構的演算法。不僅能進行數據並行,同時還可將模型分片,把大的模型分為多個子集,每個參數伺服器只存一個子集,全部的參數伺服器聚合在一起拼湊成一個完整的模型。
其創新點還在於失敗重試的功能。在分布式系統上,成百上千個節點協同工作時,經常會出現一個或幾個節點掛掉的情況,如果沒有失敗重試機制,任務就會有一定的幾率失敗,需要重新提交任務到集群調度。PS 演算法支持千億特徵、萬億模型和萬億樣本直至 PB 級的數據訓練,適合於電商、廣告等數據規模巨大的推薦場景。
人性化的操作界面
從操作界面來看,PAI 沒有繁瑣的公式和複雜的代碼邏輯,用戶看到的是各種分門別類被封裝好的演算法組件。每一個實驗步驟都提供可視化的監控頁面,在深度學習黑箱透明化方面,PAI 也同時集成了各種可視化工具。
周靖人博士在現場展示了在搭架實驗的過程中,只需要設置數據源、輸出,就可以讓系統實現人工智慧訓練,拖拽組件即可快速拼接成一個工作流,大幅提升了建立的調試模型的效率。可視化方式則有助於使用戶清楚地了解問題本身以及深度學習的效果。
事實上就目前而言,大規模深度學習優化還是一個方興未艾的技術方向,作為一個交叉領域,涉及到分布式計算、操作系統、計算機體系結構、數值優化、機器學習建模、編譯器技術等多個領域。按照優化的側重點,可以將優化策略劃分為計算優化、顯存優化、通信優化、性能預估模型以及軟硬體協同優化。PAI 平台目前主要集中在以下四個優化方向。
顯存優化
內存優化主要關心的是 GPU 顯存優化的議題,在深度學習訓練場景,其計算任務的特點決定了通常會選擇 GPU 來作為計算設備,而 GPU 作為典型的高通量異構計算設備,其硬體設計約束決定了其顯存資源往往是比較稀缺的,目前在 PAI 平台上提供的中檔 M40 顯卡的顯存只有 12GB,而複雜度較高的模型則很容易達到 M40 顯存的臨界值,比如 151 層的 ResNet。
36 層的 ResNet 模型示例
PAI 在顯存優化上做了一系列工作,期望能夠解放建模工作中的的負擔,使用戶在模型尺寸上獲得更廣闊的建模探索空間。在內存優化方面,通過引入 task-specific 的顯存分配器以及自動化模型分片框架支持,在很大程度上緩解了建模任務在顯存消耗方面的約束。其中自動化模型分片框架會根據具體的模型網路特點,預估出其顯存消耗量,然後對模型進行自動化切片,實現模型並行的支持。在完成自動化模型分片的同時,框架還會考慮到模型分片帶來的通信開銷,通過啟發式的方法在大模型的承載能力和計算效率之間獲得較優的 trade-off。
通信優化
大規模深度學習,或者說大規模機器學習領域裡一個永恆的話題就是如何通過多機分布式對訓練任務進行加速。而機器學習訓練任務的多遍迭代式通信的特點,使得經典的 map-reduce 式的並行數據處理方式並不適合這個場景。對於以單步小批量樣本作為訓練單位步的深度學習訓練任務,這個問題就更突出了。
依據 Amdahl"s law,一個計算任務性能改善的程度取決於可以被改進的部分在整個任務執行時間中所佔比例的大小。而深度學習訓練任務的多機分布式往往會引入額外的通信開銷,使得系統內可被提速的比例縮小,相應地束縛了分布式所能帶來的性能加速的收益。
PAI 平台通過 pipeline communication、late-multiply、hybrid-parallelism 以及 heuristic-based model average 等多種優化策略對分布式訓練過程中的通信開銷進行了不同程度的優化,並在公開及 in-house 模型上取得了比較顯著的收斂加速比提升。
在 Pipeline communication 中,將待通信數據(模型及梯度)切分成一個個小的數據塊從而在多個計算結點之間充分流動起來,可以突破單機網卡的通信帶寬極限,將一定尺度內將通信開銷控制在常量時間複雜度。
Pipeline communication
在 Late-multiply 中,針對全連接層計算量小,模型尺寸大的特點,對於多機之間的梯度匯總邏輯進行了優化,將「多個 worker 計算本地梯度,在所有結點之間完成信息交互」的分布式邏輯調整為「多個 worker 將全連接層的上下兩層 layer 的後向傳播梯度及激活值在所有計算結點之間完成信息交互」,當全連接層所包含的隱層神經元很多時,會帶來比較顯著的性能提升。
Without late-multiply
With late-multiply
在 Hybrid-parallelism 中,針對不同模型網路的特點,引入數據並行與模型並行的混合策略,針對計算佔比高的部分應用數據並行,針對模型通信量大的部分應用模型並行,在多機計算加速與減少通信開銷之間獲得了較好的平衡點。下圖看出將這個優化策略應用在 TensorFlow 里 AlexNet 模型的具體體現。
AlexNet with hybrid-parallelism
AlexNet 模型示例
性能預估模型
對於建模人員來說,他們關心的往往是以最具性價比的方式完成他們的建模訓練任務,而不是用多少張卡,以什麼樣的分布式執行策略來完成他們的訓練任務。而目前深度學習訓練工具以及訓練任務的複雜性,使得建模人員往往不得不透過 leaky abstraction 的管道,去關心為了完成他們的一個建模實驗,應該使用多少張 GPU 卡,多少個 CPU 核、什麼樣的通信介質以及選擇哪種分布式執行策略,才能有效地完成自己的訓練任務。
基於性能預估模型,是期望能夠將建模人員從具體的訓練任務執行細節中解放出來。具體來說,給定建模用戶的一個模型結構,以及所期望花費的費用和時間,PAI 平台會採用模型+啟發式的策略預估出需要多少硬體資源,使用什麼樣的分布式執行策略可以儘可能逼近用戶的期望。
軟硬體協同優化
上面提到的三個優化策略主要集中在任務的離線訓練環節,而深度學習在具體業務場景的成功應用,除了離線訓練以外,也離不開在線布署環節。作為典型的複雜模型,無論是功耗、計算性能還是模型動態更新的開銷,深度學習模型為在線部署提出了更高的要求和挑戰。在 PAI 平台里,關於在線部署,除了實現軟體層面的優化,也探索了軟硬體協同優化的技術路線。目前在 PAI 平台里,阿里雲技術團隊正在基於 FPGA 實現在線 inference 的軟硬體協同優化。在 PAI 里實現軟硬體協同優化的策略與業界其他同行的作法會有所不同,我們將這個問題抽象成一個 domain-specific 的定製硬體編譯優化的問題,通過這種抽象,我們可以採取更為通用的方式來解決一大批問題,從而更為有效地滿足模型多樣性、場景多樣性的需求。
在 PAI 2.0 介紹的最後環節,周靖人博士展示了它的相關使用案例以及已經廣泛的應用前景。
※學界|谷歌聯合英偉達重磅論文:實現語音到文本的跨語言轉錄
※下一代PS工具:Adobe照片級圖像風格轉換的Torch實現
※GMIS 2017嘉賓:AI「標準教科書」作者Russell
※亞馬遜Alex Smola:為什麼你的機器學習代碼運行速度慢
※自然語言處理領域歐洲頂級會議EACL 2017傑出論文出爐
TAG:機器之心 |
※比亞迪降低動力電池成本的技術研發之戰開啟
※這家公司旨在降低觸覺技術開發難度,加速VR技術開發
※斯坦福大學研發無需用電的系統 將熱量散發到太空來降低冷卻成本
※降低運營成本 智能導購機器人亮相CES
※降低運輸成本,他們攜手構建物流新模式
※降低直播門檻 創新科技發高清外置音效卡K3
※將量化計算和 AI 用於藥物固相篩選與設計,晶泰科技擬降低不斷攀升的藥物研發成本
※撞機事故頻發,刺激美軍開發更先進系統進一步降低事故概率
※京東眾籌上線僅2天完成目標 可編程機器人HEXA降低機器人開發門檻
※思必馳發布 DUI 對話開放平台,降低 AI 定製化門檻
※聯發科試圖迫使台積電降低代工價格有難度
※弘量研究,正用智能投顧幫助金融機構降低成本,提升資產管理能力
※微信支付發布境外開放平台 全面降低接入門檻
※科學家發現新型抗癌化合物 有望降低化療副作用
※小程序降低開發門檻,支持授權託管給第三方平台
※HTC汪叢青:VR產業蓄勢待發 門檻正逐步降低
※飛機的顫動和亂流導致的阻力增大會降低機動性能!
※垂直起降能力的飛機不需要專門的機場和跑道,降低了使用成本
※成為世界全面隱身艦艇的先驅,暴露位置的機會降低,擁有極佳的機動表現!