摘要:而道器相融,在我看來,那煉丹就需要一個好的丹爐了,也就是一個優(yōu)秀的機器學習平臺。因此,一個機器學習平臺要取得成功,最好具備如下五個特點精辟的核心抽象一個機器學習平臺,必須有其靈魂,也就是它的核心抽象。
*本文首發(fā)于 AI前線 ,歡迎轉載,并請注明出處。
摘要2017年6月,騰訊正式開源面向機器學習的第三代高性能計算平臺 Angel,在GitHub上備受關注;2017年10月19日,騰訊T4專家Andymhuang(黃明)將為QCon上海的聽眾奉上一場Spark on Angel的精彩分享。作為Angel的主要開發(fā)者和團隊負責人,同時也是Spark的早期研究者和布道者,他的工作經歷可以說同步了通用大數(shù)據(jù)平臺到專用機器學習平臺的轉變歷程。因此,在這之前,InfoQ對黃明的進行了一次采訪問答,他將與大家分享人工智能時代的大數(shù)據(jù)平臺演進之路,并結合Angel的開發(fā)經驗,談談如何打造一個優(yōu)秀的機器學習平臺,以及開源后Angel的最新消息和未來規(guī)劃。
人工智能到底會給企業(yè)帶來什么?——是改變,機遇,還是更大的挑戰(zhàn)?
在之前的大數(shù)據(jù)時代,企業(yè)開始意識到數(shù)據(jù)的重要性并著手搭建自己的大數(shù)據(jù)平臺,大數(shù)據(jù)成為業(yè)界關注的焦點,Hadoop、Spark等等各式各樣的大數(shù)據(jù)框架、組件、平臺層出不窮。隨著人工智能時代來臨,大數(shù)據(jù)平臺發(fā)生了新的變化,也提出了更高的要求。Spark等大數(shù)據(jù)平臺多是為通用數(shù)據(jù)處理而設計的,并非專用于機器學習任務,企業(yè)該如何更好地利用機器學習、深度學習等人工智能技術從實時數(shù)據(jù)中高效挖掘有價值的信息?
在過去的兩年(2015-2017),隨著機器學習、特別是深度學習在多個領域取得革命性成功,各種專用的機器學習平臺應運而生,百花齊放。Angel也是其中的一員。為此,我們對其進行了采訪。
人工智能時代,大數(shù)據(jù)平臺的演進之路InfoQ:您不僅是Angel的主要開發(fā)者和團隊負責人,還是Spark的早期研究者和布道者,并且一直從事分布式計算和機器學習領域的開發(fā)工作。能否結合您的工作經歷,為我們介紹一下通用大數(shù)據(jù)平臺到專用機器學習平臺的演進歷程?是什么推動了這一轉變?您認為將來大數(shù)據(jù)中心的大多數(shù)任務會變成機器學習任務嗎?
黃明: 其實推動這一轉變的,本質上是人們對更高層面的追求所驅動的。從了解過去,到預知未來;從有限空間的窮舉,到無限空間的探索;從有監(jiān)督的訓練,到無監(jiān)督的自我學習……無論是企業(yè)高管,還是產品用戶,大家都希望能得到更加智能的服務,而也只有提供了這種服務級別的的產品和公司,才能在殘酷的互聯(lián)網競爭中勝出。
2010年,業(yè)界的大數(shù)據(jù)剛剛興起,當時有很多受歡迎的項目都是統(tǒng)計類的,可以告訴大家昨天最流行的是什么。底層的框架是Hadoop和Hive,很多平臺的最大的功能就是出各種各樣的報表,天報表、月報表……這時的層次是知道發(fā)生了什么。
2012年,當時有兩個大發(fā)展方向,一種是更快的SQL,一種是機器學習,涌現(xiàn)了很多的開源項目。Spark能夠勝出,是因為它在兩者中間取得了均衡,并展現(xiàn)了機器學習的潛質。Matei Zaharia等人在NSDI的RDD Paper提到了,Spark的目標是為了解決iterative algorithms和interactive data mining tools這兩類問題,這個判斷從現(xiàn)在來看,依然是正確的。Spark后來普及開來,目前很多公司依然會把Spark當成他們首選的通用數(shù)據(jù)處理平臺兼機器學習平臺。這是人們希望知道,即將發(fā)生什么。
到了2014年,李沐等人在osdi關于Parameter Server的Paper中,給出了分布式機器學習一個更好的思路,后面Petuum和DMLC的ps-lite就出來了。Spark當時的跟進不是很到位,而且本身RDD的理念和PS也有些沖突。我們當時還給Spark提過一個PR,后來也沒被接受,但是引出了Glint。到現(xiàn)在為止,官方的Spark依然以RDD為核心來實現(xiàn)機器學習算法,這是個很大的約束和障礙。
但是在2015年,PS的發(fā)展也受到了深度學習的沖擊,隨著TensorFlow的出現(xiàn),大家紛紛轉向了深度學習的框架開發(fā)。包括微軟的DMTK轉向CNTK,DMLC的PS-Lite轉向MXNet……但是實際上,很多公司的數(shù)據(jù)中心依然有大量CPU機器,大量的非深度學習算法還是需要在大規(guī)模數(shù)據(jù)集上進行分布式訓練,這個領域是有空缺的,深度學習替代不了。
騰訊是2015年開始調研和開發(fā)Angel,其目的就是為了填補上面所說的空缺,2016年,Angel開始在內部使用,到了2017年,Angel終于開源,整個開源的過程還是很不容易的(詳情可查閱InfoQ早前的報道)。希望Angel還是能把這塊的空白填補上,成為一個專用的分布式機器學習平臺,服務更多的公司內外產品,推動人們對更高層次的追求。
最后,未來數(shù)據(jù)中心,相信依然會有很多數(shù)據(jù)處理任務的任務。因為無論什么樣的模型和算法,其前提都要建立在干凈的數(shù)據(jù)之上。脫離了完整的數(shù)據(jù)預處理流程,談機器學習和人工智能都是不現(xiàn)實的。但是大部分數(shù)據(jù)任務,它們的最終出口和末端,也將會是機器學習和人工智能的任務,因為如果沒有了這個終點,前面的數(shù)據(jù)處理,也將是毫無意義的,能把控住末端的人,才是最終的勝利者。
InfoQ:大數(shù)據(jù)平臺早期多以離線批處理為主,實時計算作為補充,但是現(xiàn)在越來越多應用場景對數(shù)據(jù)處理有了高時效性的要求。騰訊大數(shù)據(jù)平臺也歷經了離線計算、實時計算、機器學習三個階段的發(fā)展。未來批處理計算和實時流式計算在企業(yè)構建AI平臺的基礎架構中將分別起到什么作用?
黃明:對一個高科技企業(yè)來說,實時計算能力和機器學習能力,都是AI能力的基礎,確實是必備的。而且機器學習的訓練(Training)和推理(Inference)兩個階段的重要性會并駕齊驅,實時計算能力的優(yōu)勢還將進一步輻射到推理場景。但是這并不代表離線批量計算不重要了,尤其是訓練階段,離線批量計算依然是主要場景,原因是:
好的模型需要大量的數(shù)據(jù),反復迭代并達到一定的精確度才能上線,尤其是效果好的深度學習模型,通常需要多張GPU卡,訓練較長的時間,才能完成,所以這里高性能的分布式機器學習平臺,必不可少。
有很多的算法和場景不支持實時更新,本身就存在約束,或者數(shù)學證明不成立,或者不支持流式疊加,所以模型還是需要離線訓練好之后,再推送到手機端或者其它終端設端。
在線學習(Online Learning)這個領域,模型的持續(xù)優(yōu)化和更新的非常重要,但是總是需要一個基礎模型,而這個基礎模型的質量,很重要的制約了后續(xù)的改進效果。
綜合以上3點,離線批量處理,依然會是非常重要和核心的場景,不可替代。但是實時流式計算會快速發(fā)展,尤其是在推理階段。主要是因為在深度學習時代:
模型比以前復雜,從淺層模型變成了深度模型,其推理計算不是簡單的代數(shù)計算。
傳輸數(shù)據(jù)比之前大,輸入很可能是圖片、聲音、文本等,對吞吐量要求很高,而對推理過程依然要求在毫秒級別完成。這對推理的性能有更高的要求。
所以相信在未來1-2年,這方面,從硬件到軟件都將會涌現(xiàn)出很多優(yōu)秀的初創(chuàng)公司。
一個優(yōu)秀的機器學習平臺是如何煉成的InfoQ:計算是機器學習平臺的基礎,但不是全部,在你看來,一個優(yōu)秀的機器學習平臺需要具備哪些特性?
黃明: 在機器學習界,有些人喜歡把調參和訓練的過程,比喻為煉丹, 上升到”道”的層面。而道器相融,在我看來,那煉丹就需要一個好的丹爐了,也就是一個優(yōu)秀的機器學習平臺。它需要能為煉丹提供合適的火候,也就是為創(chuàng)新的模型和算法提供最佳的運行環(huán)境。因此,一個機器學習平臺要取得成功,最好具備如下五個特點:
1.精辟的核心抽象
一個機器學習平臺,必須有其靈魂,也就是它的核心抽象。當這個核心抽象和它要面對的模型和算法匹配時,這個平臺就成功了一半。如果一開始就錯誤了,例如SQL作為平臺的核心抽象,那么對后期的發(fā)展制約將會非常明顯,無異于緣木求魚,無論怎么努力都不會成功的。
Spark的RDD核心抽象,很好的解決了分布式大數(shù)據(jù)的通用問題;而TensorFlow中Tensor、Mutable Variables和Dataflow Graphs的3個核心抽象,高度概括了深度學習中的各個元素。Angel目前的核心抽象是PSModel,重點解決了分布式機器學習中模型切分,數(shù)據(jù)并行和模型并行,模式異步 這3大問題,基本上可以滿足大部分非深度學習的機器學習需求。
2.充分的性能優(yōu)化
在核心抽象正確的大前提下,性能是決定速度的關鍵。這就涉及了到平臺層對硬件層的理解、調優(yōu)和封裝。去年我們用500臺高性能機器,獲得了TeraSort比賽的冠軍,也是這種性能優(yōu)化能力的體現(xiàn),并將其嫁接到了Angel之上。
現(xiàn)在已經不是MR的時代走海量低配機器路線。無論是CPU機器,還是GPU機器,都在往更強更快的方向走。去年比賽我們用的是很高性能的單機,包括IBM的PowerPC,512G的內存,多個NVME的SSD,RDMA的100G網絡……都是業(yè)界的頂配。
但是光有硬件堆砌是不夠的,平臺要對硬件有充分的利用。對于非深度學習,Java系的莫過于JVM的調優(yōu)了。怎樣更好地使用內存,避免FullGC的產生,盡量讓計算不落地,預讀數(shù)據(jù)流水化處理……這些都是對平臺設計的考驗。而對于深度學習,CUDA和OpenCL的性能利用,顯存和內存的數(shù)據(jù)拷貝,浮點運算和定點運算的選擇,一機多卡的內部通訊……平臺都需要進行很多調整,甚至于引入像XLA這樣的黑科技。
既然是分布式機器學習平臺,肯定會涉及到分布式的拓撲結構。目前來看,比較成熟的分布式拓撲結構依然是MR、MPI、PS這3者。機器學習中,基本上MR已經出局了,MPI憑借深度學習卷土重來,和PS分庭抗禮,當然也有整體用PS、局部用MPI的做法,這也未嘗不可。在確定網絡拓撲之后,就要考慮網絡加速了。RDMA和NVLINK這2個關鍵技術很值得關注,也是未來的方向。畢竟數(shù)據(jù)是直接顯存落顯存,還是走兩次內存,差別是可想而知的,再加上不需要CPU開銷,對性能帶來的影響還是很可觀的。
所有這些優(yōu)化,最后暴露給平臺用戶的,最好是越簡單越好,平臺能夠依據(jù)簡單的參數(shù),自動選擇最佳的性能通道,這才是對算法工程師和數(shù)據(jù)科學家意義最大的。
3.強大的容錯能力
談到容錯,不得不再提一下MPI和MR。在Hadoop時代,海量低配機器理論的盛行,使MPI被MR打壓得很厲害。但是到了深度學習時代,大家發(fā)現(xiàn)這些高配機器和HPC也差不了太多,十幾萬一臺的機器,可靠性還是很強的,出錯的概率很低,相比之下性能更加重要了,所以MPI這種模式又活了過來。
都是從整體來看,規(guī)模上去之后,在大型的數(shù)據(jù)中心,高配版本的GPU機器和T級別的訓練數(shù)據(jù),對容錯性依然需要取得一定的均衡,這種情況下PS模式仍是最合適的。整體架構包括網絡的通訊性能是最靈活和魯棒的,可以做的容災措施很多,代價也小。最終能夠達到的效果會遠勝于簡單的定期Checkpoint。
4.靈活的接口設計
正如大家所知,2017年Python已經借助人工智能成為了第一編程語言。這在某種程度上,當然歸功于TensorFlow和PyTorch的神助攻,但是這個趨勢背后有其必然原因。Python語言的優(yōu)勢在于語法簡單、上手難度低,而且資源豐富,有充實的數(shù)據(jù)、可視化和機器學習算法庫,建立了非常良好的生態(tài)環(huán)境,同時它又能與C無縫結合,借助py4j還能和Java結合。基于以上原因,Python能夠為后臺強勁的平臺提供友好的接口層,達到簡約而不簡單的效果,也就難怪它會奇軍突起、一枝獨秀了。
但Python其實始終只是后臺接口的體現(xiàn),決定整體的,還是后臺的接口設計,這時架構師的整體設計能力就非常重要了。核心理念的封裝和延伸、多個機器學習概念的整合、系統(tǒng)的分層和解耦、多個子系統(tǒng)的一致性,這些最終都會體現(xiàn)到接口上,從而決定用戶基于接口編寫算法的難度。
5.完善的周邊系統(tǒng)
TensorFlow開源之初,吸引眼球的工具之一,莫過于它的TensorBoard,驚艷的超越了同期產品。當時還懷疑它是否會部分開源,不開源這個模塊。一個好的機器學習平臺還是要在周邊系統(tǒng)的完善上多做些功夫,如果用戶基于你的平臺,可以快速地調試和定位Bug,將會大大增強他們使用的信心,這會對用戶形成很強的吸引力,最終也有助于形成更好的生態(tài) 。
在您看來,如何才能高效的搭建一個優(yōu)秀的機器學習平臺?黃明: 先講個大家都知道的小插曲:TensorFlow的前身是DistBelief,當時并不太受深度學習界待見,大部分人做深度學習,要么Caffe,要么Torch,基本忽略DistBelief,后來TensorFlow推出,就很受歡迎。這里有個時間細節(jié),Hinton是2013年加入Google的,而DistBelief是2011年開始研發(fā)的,TensorFlow是2015年發(fā)布的,Jeff Dean由始至終,都在Google負責這個項目。作為外人,不太可能知道Hinton到底對TensorFlow做出了什么樣的貢獻,但是效果是很明顯的。DistBelief之前工程性太強,對深度學習的模型本質和算法友好度不足,Hinton加入后,第二代的TensorFlow的水準遠遠超越第一代的DistBelief。整個系統(tǒng)的設計,從上層到底層,從名字到周邊,都透露著對深度學習工程師的貼心理解。這也是TensorFlow成功的原因。
所以要設計和搭建一個優(yōu)秀的機器學習平臺,在我看來要具備如下3個條件:
首先,要搭建一支工程和算法模型能力都很強的團隊。整體上的這個團隊,需要很好的互補能力,要有算法工程師,也要有系統(tǒng)架構師,大家互相配合。算法工程師的數(shù)學功底和表達能力很重要,而系統(tǒng)架構師的理解能力和快速實現(xiàn)能力很重要。另外最好能將學術界的創(chuàng)新能力和工程界的落地能力結合,才能使系統(tǒng)創(chuàng)新性和可靠性兼得。騰訊的Angel項目從一開始,就是北大的博士生和騰訊的工程師聯(lián)合主導的項目,雖然遠比不上Hinton和Jeff Dean這樣的大神級別,但是模式是類似的,這是非常關鍵的一個要素。
其次,需要有大數(shù)據(jù)作為驅動。之前我們研究過Petuum,發(fā)現(xiàn)有些理念很不錯,但是穩(wěn)定性非常差,在大數(shù)據(jù)量下很難跑通,而且搭建也很難。所以在Angel的研發(fā)過程中,我們始終堅持以大數(shù)據(jù)為驅動的原則,各種Tricks和設計必須以最終壓測通過為原則,并緊密依靠內部業(yè)務,通過場景落地來檢驗效果,以此保障系統(tǒng)的設計合理性和可用性。這點對于大公司來說其實沒有太大的難度,只要有正確的理念和合作即可。但是這對于小公司來說則比較困難。所以這也是BAT等大企業(yè)開源的框架,和實驗室或者初創(chuàng)公司出品的框架相比的優(yōu)勢之一。
最后,需要保持很快的演進速度。TensorFlow現(xiàn)在經常被批評接口改動太快。其實最近Angel的接口改動也很多,而且有些不能向后兼容。這其中原因很簡單,一個是因為業(yè)界的深度學習發(fā)展太快,新算法和模型、技巧層出不窮,作為一個平臺必須能快速適應,不進則退。另一個原因是開發(fā)的人太多,即便是Angel目前Star還比較少,但是內部大量的并行開發(fā),很難保證所有的模塊都是合理的,定期重構是消除這些不合理的唯一方法。整體來看,只要是合理的重構,能提升性能,就標識著這個項目還在快速的生長期中,不失為一件好事。
InfoQ:創(chuàng)新工場的王詠剛老師在《為什么AI工程師要懂一點架構》中提到,研究不能只懂算法,算法實現(xiàn)不等于問題解決,問題解決不等于現(xiàn)場問題解決,架構知識是工程師進行高效團隊協(xié)作的共同語言。能不能談談您對架構能力的看法?
黃明: 王詠剛老師說的要懂“一點”。這個詞在我看來代表了兩個意思:
確實需要懂,不能什么都不懂。企業(yè)里的算法工程師和數(shù)據(jù)科學家一定要有動手能力,不能整天只會做研究、寫Paper,Matlab和單機版的Python試驗一下,自己獨占一臺GPU機器玩得很開心,模型做完了不會上線,溝通一到工程部分就聊不下去……其實是處于一種很不好的狀態(tài)。這樣的AI工程師,除非某方面特別強或特別突出,否則在企業(yè)是很難落地生存的。
不能指望懂太多。畢竟做算法和做工程的思維重點不一樣,腦回路也不太一樣,方法論也不一樣。兩方面都精通的人才,有,但是難找。這也是騰訊做Angel的初衷和目的,就是讓算法工程師不需要懂太多底層框架優(yōu)化,也能輕松地寫出高效的、能分布式運行的生產代碼,把一些通用的體系化的系統(tǒng)和架構細節(jié)屏蔽掉,這樣才能極大地提高企業(yè)生產力。
目前來看,包括Spark、TensorFlow這些比較好的框架,也正是因為它們能夠使數(shù)據(jù)工程師和AI工程師,在適當屏蔽掉底層的架構細節(jié)后,依然能夠寫出高效的算法代碼,才取得了成功。
Angel平臺的新變化和展望InfoQ:通過您之前的投稿,大家對Angel平臺開源前所做的一系列重構和升級已經有所了解,開源以來想必又有了不少新變化,能否介紹一下近三個月你們對Angel平臺又做了哪些優(yōu)化?
黃明:開源以來,Angel低調的發(fā)布了2個小版本:1.1.0和1.2.0,主要是加入了新的算法和優(yōu)化方法,加強了穩(wěn)定性,細化和完善之前的功能。這3個月內的優(yōu)化,以穩(wěn)定和性能提升為主。因為Angel的定位是工業(yè)級可用的平臺,所以非常看重大數(shù)據(jù)量下的穩(wěn)定性和性能,我們公布的算法都是生產驗證過。同時我們對Spark on Angel的接口進行了反復的重構,盡可能和Angel本身的接口接近一致和復用,這方面的工作到時候會在這次QCon的大會重點介紹。
另外根據(jù)用戶的反饋,Angel開發(fā)團隊正在開發(fā)2個大功能,尚未發(fā)布,包括:
Python接口:接口優(yōu)化和重構,以提升易用性。因為之前宣傳的時候,很多用戶的第一個問題,就是有沒有Python接口……所以我們不得不把這個作為第一優(yōu)先級來滿足。
Spark Streaming on Angel:支持在線學習,加入FTRL算法。就像之前說的,實時性也是機器學習必不可少的。那Angel本身不做實時這塊,但是支持Spark on Angel,那通過Spark Streaming來接入實時訓練,也是水到渠成的事情,成本也很低,不過對Angel的HA和內存管理,需要進一步的優(yōu)化。
這兩個新功能應該在下2個版本就能夠和大家見面了。至于深度學習的支持,其實也在進行了,但是有些難度,會晚點就推出。
InfoQ:開源后這段時間,Angel平臺的推廣情況如何?有沒有什么印象特別深刻的問題反饋?
黃明: Angel開源以來,其實我們并沒有太刻意推廣,包括我們在github上Public的第一天(6月16日)都沒有準備做任何PR,不過由于之前的影響力,最終各大媒體都報道了。但是騰訊TOSA(開源委員會)最近一年對開源項目的扶持非常大,態(tài)度也很Open,所以我們主要是借著騰訊開源的力量在做這個事情,發(fā)了幾篇文章。目前整體的Star數(shù)接近2.5k,我們比較欣慰的是Fork和Star數(shù)的比例比較高的,看得出很多人還是對項目很有興趣的。整體上,我們還是按照自己之前定好的節(jié)奏,小步快跑地進行新功能和版本的研發(fā)。
據(jù)了解和接觸,目前有部分公司(如小米、新浪微博等)正在試用Angel,也有了不少貢獻者。印象深刻的有幾個:
華為的一位工程師,項目剛發(fā)布不久就提交了一個比較大的PR,幫忙把Netty版本升級了,非常給力。后來他想把GraphX集成進來,但是我覺得這個方向不太對,就Reject掉了,不太好意思。
微軟LightBGM的開發(fā)者之一提了個Issue,和Angel開發(fā)GBDT的同學互動了10個來回左右,詳細地討論了機器學習任務中MPI和PS的網絡通訊開銷到底誰更小的問題,進行了很有意思的學術互動。
海外的一個用戶主動幫忙翻譯Angel的文檔,之前為了開源,團隊花了快1個月的時間邊寫文檔邊改Bug,所有文檔加起來應該有100篇左右,翻譯工作量巨大。但現(xiàn)在基本全部都翻譯完了。
這些都讓我們體會到了開源的力量和益處,一個平臺在開源之后,會受到來自全球的關注,只要你用心經營,并保持良好的功能和性能,能幫助到用戶,用戶就會主動幫你做很多事情。而你的視野,也會變得更加的開闊。很多外部用戶的需求非常客觀到位,正是他們推動著我們往前走。
InfoQ:開源三個月后再看Angel,與一眾機器學習平臺相比(比如Spark、Petuum、GraphLab、TensorFlow),Angel的優(yōu)勢是什么?Angel的什么特性最能吸引機器學習開發(fā)者?
黃明:首先目前其實Petuum、GraphLab都不開源,沒有可比性。Angel在研發(fā)初期借鑒參考過Petuum的一些思路,但是后來實驗中發(fā)現(xiàn),Petuum在可靠性和穩(wěn)定性上都達不到工業(yè)可用級別,所以基本上也都推倒重做了。
和Spark比的話,目前Spark的重心還是在SparkSQL上,這從每個版本的PR數(shù)就可以看出來,MLLib的比例很小。這在某種程度上也是因為Spark的RDD本質局限導致的。相比之下,Angel重點是機器學習算法,而基于PSModel的編程模型可以讓各種機器學習的優(yōu)化和Tricks都很方便地實現(xiàn),對于算法工程師非常友好。伴隨著Python接口的提供,這個優(yōu)勢將會變得更加明顯。
TensorFlow目前在深度學習上的地位還是遙遙領先,從7w個Star數(shù)就可略見一斑。但是在多機多卡的性能上TensorFlow的PS做得并不好,最近發(fā)布的最新版本還在嘗試走MPI路線,這是業(yè)界難題之一。Angel目前不會獨立做一套新的深度學習框架去和TensorFlow競爭,而是會發(fā)揮自身優(yōu)勢,把PS-Service做好做極致,來加速并行訓練并形成互補。
關于傳統(tǒng)機器學習算法的生命周期問題,我覺得不用太擔心。很重要的一點是傳統(tǒng)機器學習算法比深度學習更貼近problem solving而非模擬智能。深度網絡模擬大腦結構,所以在人類擅長的智能領域優(yōu)于傳統(tǒng)算法,比如視覺聽覺,各種對外界信號的理解……但是還有一些非智能領域,人大腦展現(xiàn)出各種認知缺陷(cognitive deficit),比如對模式是隨機還是真實的判斷,對概率的認知,對風險評估等等。這些方面?zhèn)鹘y(tǒng)機器學習方法仍然更有效,不需要通過大量的野蠻暴力嘗試,就能得到更好的結論。也許以后會改變。但目前傳統(tǒng)思路的機器學習還是有必要的,在很多場合,簡單有用,包括騰訊的很多場景,還是有剛需,所以Angel還是要把它經營好。
整體上來看,目前Angel是業(yè)界,包括國內和國外,比較成熟的開源參數(shù)服務器框架,能夠在十億級別的維度(其實百億也可以,只不過沒生產完全驗證過,所以不這樣宣傳)、T級別大小的樣本量規(guī)模下,開發(fā)和運行通用的機器學習算法的平臺。另外值得一提的是,Angel的算法開發(fā)難度也比較低,有一位開源貢獻者很輕松地在Angel上實現(xiàn)了阿里巴巴用于CTR預估的MLR算法,并貢獻給Angel社區(qū),這正是Angel團隊所期待的。
InfoQ:您認為目前機器學習平臺還存在哪些問題和難點?未來改進的重點是什么?
黃明:目前機器學習平臺還存在3個大問題:算力的水平擴展、模型的高效壓縮、快速的推理能力
機器學習平臺最大的難題還是算力。性能再強,接口再好用,底層優(yōu)化再極致,單機能力終有極限,需要能水平擴展,而深度學習大規(guī)模通用的多機多卡的分布式方案,目前依然是個難題,即便TensorFlow也沒解決得很好。這也是騰訊致力于Angel系統(tǒng)的原因,希望無論是CPU還是GPU,我們都能提供高性能分布式機器學習方案。
除此之外,利用龐大的集群規(guī)模,長時間訓練出來的精細模型,其大小一般比較大,像Angel訓練出來的模型一般都會上百G,而深度學習的模型,多數(shù)也到G級別。這么大的模型,需要壓縮之后才能給終端使用,如何在盡量減少精度損失的情況下,最大化的壓縮模型,也是平臺需要考慮的。
最后一個是快速的推理能力。無論是終端推理(手機端,無人駕駛車……),還是服務端推理(廣告,推薦……),要求都是一樣的,要盡可能速度快和高吞吐量。這時如何合理地利用和設計流式實時系統(tǒng),來快速接入數(shù)據(jù)進行推理,也是平臺需要考量的點。
在未來一年里,相信大部分的機器學習框架,包括深度學習框架,都會圍繞著上述幾個問題重點發(fā)力。這也是Angel需要面對的挑戰(zhàn)和機遇。
采訪嘉賓介紹Andymhuang(黃明),騰訊T4專家,Spark早期的研究者和布道者,對分布式計算和機器學習,有獨到的經驗和研究。目前于數(shù)據(jù)平臺部擔任海量計算組Leader,負責構建大規(guī)模分布式計算和機器學習平臺,助力騰訊各大數(shù)據(jù)和機器學習業(yè)務快速發(fā)展。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/19648.html
摘要:二對的修改一鍵關機寫上后保存是調出這個程序,是關閉的意思,是時間秒的意思。這里為零是指立即關機。四主題到來快捷關機將文件右擊選擇發(fā)送到的桌面快捷方式這樣就可以在桌面有個自己的快捷方式了。 ...
摘要:自由職業(yè)是一個令人向往的的職業(yè)。為了努力成為一個成功的自由職業(yè)者,犧牲了無數(shù)的休息時間,導致了身體過早的出現(xiàn)問題。 自由職業(yè)是一個令人向往的的職業(yè)。 如何成為自由職業(yè)者?自由職業(yè)的種類有很多, 自由撰稿人,網絡作家, 自媒體,微商, 淘寶店, 個人站長, 懂技術的還可以自己接活,豬八戒上面有很多這種任務, 開源中國還開發(fā)了一個眾包平臺, 如果英語過硬的話還可以上國外的網站接活,有名的f...
摘要:詳見騰訊正式版發(fā)布基于與的機器學習高性能計算平臺在談及新一代平臺時,黃明表示,是此次平臺升級的一大亮點,而只是生態(tài)圈的第一個成員。對此,黃明表示,在的開發(fā)過程中,我們一直都是在同和對標性能。 機器之心原創(chuàng) 作者:高靜宜 2017 年 6 月 16 日,騰訊新一代高性能計算平臺 Angel 在 Github 上低調開源。開源兩周,這個項目在 Github 上持續(xù)得到關注,截至目前為止,已...
閱讀 3328·2023-04-26 00:07
閱讀 3922·2021-11-23 10:08
閱讀 2939·2021-11-22 09:34
閱讀 858·2021-09-22 15:27
閱讀 1749·2019-08-30 15:54
閱讀 3742·2019-08-30 14:07
閱讀 912·2019-08-30 11:12
閱讀 677·2019-08-29 18:44