當前位置:
首頁 > 最新 > 揭秘出行巨頭Uber的機器學習平台與團隊

揭秘出行巨頭Uber的機器學習平台與團隊

李根 發自 凹非寺

量子位 報道 | 公眾號 QbitAI

科技巨頭加註人工智慧彷彿是場競賽。

前不久,Uber正式推出機器學習平台Michelangelo,希望通過這個平台全面處理工作流程,並推動AI普及化。恰巧就在當天,量子位在人工智慧計算大會(AICC)上注1,遇到並專訪了Uber機器學習負責人王魯明。

對於這個機器學習平台的意義,Uber機器學習負責人王魯明介紹說,Top級企業真正的核心競爭力就是數據和平台,如果我們把大數據看成一個金礦,那這個平台就是挖掘金礦的工具。

「一個好的機器學習平台,不光是個鐵鍬,它必須是個現代化大型自動化挖掘機。只有讓大數據以更廉價的方式得到,才能讓人工智慧更好走向最高峰。」

關於Uber這個名為Michelangelo的機器學習平台,其負責人王魯明還向量子位分享了更多幕後故事。

能做什麼?

我們先從結果上來看,Michelangelo到底可以做些什麼?

Uber方面的說法是,Michelangelo的主要作用是能夠讓內部團隊可以無縫構建、部署和運作適合Uber量級的機器學習解決方案,可以覆蓋端到端機器學習工作流,包含:管理數據、訓練、評估和部署模型,以及監控預測。該系統還支持傳統的機器學習模型、時間序列預測和深度學習。

在Uber內部,Michelangelo是Uber工程師和數據科學家實際使用的機器學習系統,有幾十個團隊使用它構建和部署模型。由於該系統部署在多個Uber數據中心上,還會影響到專門的硬體,以及對Uber最高載入量的在線服務提供預測。

歸根結底,Michelangelo的出現,把Uber內部分散在各個業務團隊中的機器學習開發需求集中起來,減少重複開發的資源浪費。

一開始走了彎路

王魯明稱,這個機器學習平台創建於2015年年底,當時最大的需求來自大量團隊在實際工作中需要用到機器學習。

在這個平台推出前,Uber內部每個團隊都「各自為政」——自己做自己的機器學習開發,所以中間必然有大量重複的工作,效率也比較低。

這直接促成了Michelangelo建立,不過也並不意味著一路順利。

現在總結起來,最大的彎路在於對深度學習不夠專註。而圍繞非深度學習切換了不同的平台,比如H2O之類的,最後才決定使用Spark ML作為自己的機器學習平台。

「當時的出發點是儘可能使用開源資源,在開源的基礎上有一些Uber的開發和創新,也儘可能把這些開源和創新回饋給整個社區。在Spark ML我們做了很多工作,比如加了很多新的演算法,像我們前段時間加了Siri的演算法,這個是原來Spark ML不支持的。」王魯明透露說。

其後直到2016年7月,Uber機器學習平台才加入了對深度學習的支持。這才算真正讓Michelangelo走上了正軌。

現在,有幾十個來自Uber的內部用戶通過Michelangelo來滿足自己在機器學習方面的要求,並且讓任務變得更富效率,幾乎所有的測試工作,都可以在Michelangelo上完成。

「具體業務團隊只需要專註他們所需的業務需求上,然後思考用什麼樣的演算法去解決業務需求的問題。他們不需要考慮數據從哪裡來、需要多少台機器、機器在何方?這些問題都由Michelangelo承擔。」

王魯明進一步明確說,Michelangelo實際上提供的就是一個端到端的解決方案,可以幫助Uber內部團隊完成挑選數據、建立模型、訓練模型、模型比較、管理,最後把最佳模型進行分析、計算和處理。

因為Uber的業務涉及全球成百上千個城市,而且每一個城市還可以按照區域往下建模型,因此一個「用戶」可能就會有幾千個模型,這就要求Michelangelo能夠給這幾千個模型同時支持、平衡和分析。

過去,涉及較大數據的模型,單機訓練可能要將近1個月的時間,但現在整個效率已經大大提升,整個技術從定向到開發,時間周期大大縮短。

王魯明舉例說,內部一個項目此前花了4個月時間,但換到Michelangelo後,整個周期變成了1個月。

實際應用

對於Michelangelo的實際應用,王魯明舉了幾個例子。

一是Uber的無人駕駛業務,之前圍繞深度學習方面的工作都在其他平台或買一台4GPU的單機進行訓練,但現在已經完全轉到了Michelangelo上。

二是Uber的街景車業務,在獲取了眾多高精度相片中,需要對圖像中的價值信息進行提取。一開始街景車團隊在Caffe1.0上進行,不過只有單機版的Caffe1.0顯然拖慢了效率。

20人規模的團隊,需要在模型和機器之間的管理、共享和資源分配上浪費精力,甚至需要人工去修改機器是否在用,非常落後且低效。

而換到Michelangelo之後,「用戶」不用再去記住模型和具體機器的對應關係,整個平台互聯互通,就好似在一台機器上一樣。

以上都是深度學習的案例,Uber還有一些非深度學習解決的問題。

比如有人叫車時,周圍有十幾個司機,選哪個司機來與乘客匹配?如果沒有選好的話,司機和乘客都有可能取消,而取消就是對所有人都存在損失——即便沒有經濟上的,也有時間成本和用戶體驗上的。

所以這個模型核心要解決的問題是最大概率減少「取消」的操作,「取消率」越低,效果越好。

類似的模型也應用於Uber Eats上,其中關於食物的推薦、下訂單後所需時長,其中都是機器學習的應用,而目前所有這些機器學習的應用,都在Michelangelo上實現。

深度學習非萬能

王魯明也解釋了為什麼Michelangelo平台並非全部使用深度學習的原因。

一方面跟深度學習目前存在的「瓶頸」有關,另一方面與Uber實際應用需要密不可分。

這位Uber機器學習負責人表示,深度學習的第一個問題是「不好解釋」:為什麼起作用、為什麼不起作用,無據可查。

另一個問題是在具體應用中模型層數的問題,以自動駕駛舉例,可能一千層在測試中效果很好,但真正實際應用中,40毫秒之類的時間內,如此深的計算來不及,即便配上最好的GPU,也迫使你需要把模型層級變得更窄,這就會造成限制。

目前,對於上述情況,Uber內部的解決方案主要通過降低計算量和提升計算力兩大方面來展開。

Uber機器學習負責人王魯明

揭秘Uber機器學習團隊

關於Uber機器學習團隊,王魯明也向量子位透露了規模、優勢和招聘要求。

他表示,目前Uber機器學習團隊維持著30人規模,最早的時候才有10人。現在隨著客戶數量的不斷增加,團隊規模也在不斷擴充。

對於人才吸引,這位Michelangelo負責人並不擔心。

他認為Uber對機器學習工程師吸引力明顯。

首先,Uber的工作,是一個比特(數字世界)和原子(現實世界)結合的事業,可以通過演算法去影響人在實際生活中的行為,這是很多互聯網公司所缺乏的。

其次,同樣因為核心業務的原因,Uber源源不斷的數據相對更富價值,這也是Uber有信心在AI領域一展身手的原因。

王魯明透露說,在對數據模型的並行處理方面,Uber目前甚至比Google還要出色。

不過,並不意味著機器學習方向的工程師都能進入Uber機器學習團隊。

在解釋Michelangelo所需人才的素質時,王魯明希望找到那些熟悉具體應用領域,又對機器學習有較深理解的技術人才。

「我們團隊不是真正在做應用,但需要對具體領域非常了解,這樣才能知道用戶痛點,才能給他提供最有效的支持。還需要較強的技術背景,比如在並行計算、性能優化等方面有技術能力。」

OMT:對其他公司的建議

最後,對於其他公司從無到有建立一個類似Michelangelo的機器學習平台,王魯明也向量子位表達了建議:

一方面是向優秀公司或優秀平台學習,比如在Uber機器學習平台建設過程中,就從Facebook學習了很多經驗;

另一方面是選擇合適的開源架構,比如完全學習Google並不容易,但從Google開源平台TensorFlow中選擇合適的開源技術,會讓所有的事情事半功倍。

注1:人工智慧計算大會(AICC)由中國工程院信息與電子工程學部主辦、浪潮集團承辦的聚焦「人工智慧計算」領域的行業大會。

加入社群

量子位AI社群9群開始招募啦,歡迎對AI感興趣的同學,加小助手微信qbitbot3入群;

此外,量子位專業細分群(自動駕駛、CV、NLP、機器學習等)正在招募,面向正在從事相關領域的工程師及研究人員。

進群請加小助手微信號qbitbot3,並務必備註相應群的關鍵詞~通過審核後我們將邀請進群。(專業群審核較嚴,敬請諒解)

誠摯招聘

量子位正在招募編輯/記者,工作地點在北京中關村。期待有才氣、有熱情的同學加入我們!相關細節,請在量子位公眾號(QbitAI)對話界面,回復「招聘」兩個字。

量子位QbitAI

? ? ? 追蹤AI技術和產品新動態

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器學習 的精彩文章:

人工智慧、機器學習和深度學習的區別是什麼?
一文清晰講解機器學習中梯度下降演算法
當機器學習遇上3D列印,大型工業製造革命指日可待
五種機器學習是革命性製造
Splunk在.conf2017上帶來的新解決方案使機器學習成為主流

TAG:機器學習 |