2684億銷(xiāo)售額背后的阿里AI技術(shù)全景圖
剛剛結(jié)束的雙十一,天貓交易額達(dá)到 2684 億元,較去年同比增長(zhǎng) 25.7%。這一結(jié)果背后,云計(jì)算、人工智能等技術(shù)以及阿里巴巴工程師們的努力功不可沒(méi)。在正在召開(kāi)的 AICon 全球人工智能與機(jī)器學(xué)習(xí)技術(shù)大會(huì) 現(xiàn)場(chǎng),阿里云智能計(jì)算平臺(tái)事業(yè)部研究員林偉介紹了阿里基于飛天 AI 平臺(tái)的人工智能技術(shù)及能力,揭開(kāi)雙 11 大規(guī)模交易場(chǎng)景下,阿里人工智能技術(shù)的神秘面紗。
人工智能生態(tài)發(fā)展趨勢(shì)
大家好,我是林偉,我今天演講的主題是《AI 突破無(wú)限可能—5 億消費(fèi)者的云上雙 11》。我本人是做系統(tǒng)出身的,但在最近的一些會(huì)議上發(fā)現(xiàn),越來(lái)越多做系統(tǒng)出身的人開(kāi)始研究 AI。在 90 年代末的那波熱潮里,我有幸在學(xué)校的人工智能實(shí)驗(yàn)室呆過(guò),那時(shí)還在糾結(jié)模型效果,最后發(fā)現(xiàn)是自己想多了,那時(shí)做出來(lái)的東西還遠(yuǎn)遠(yuǎn)達(dá)不到可用的狀態(tài)。在后來(lái)的一段時(shí)間內(nèi),AI 進(jìn)入沉寂,最近幾年又突然火爆,我在一些學(xué)校做交流的時(shí)候發(fā)現(xiàn)很多同學(xué)都在研究 AI 算法,但其實(shí)神經(jīng)網(wǎng)絡(luò)、遺傳算法和模擬算法很多年前就已經(jīng)出現(xiàn),最近幾年才爆發(fā)的最主要原因是數(shù)據(jù)和算力的提升。
在這之中,云計(jì)算也起到了很大作用,只有算力更加充足,才可以擬合出更加有效的模型,這也是阿里巴巴 2009 年堅(jiān)定投入云計(jì)算的重要原因。說(shuō)到阿里云,其實(shí)阿里云有個(gè)非常大的客戶就是阿里巴巴自己的電商業(yè)務(wù),而阿里電商全年最重要的一個(gè)活動(dòng)就是雙 11。
過(guò)去幾年,阿里雙 11 的營(yíng)業(yè)額逐漸升高,這背后更深層次的原因其實(shí)是我們實(shí)現(xiàn)了核心系統(tǒng)的 100% 上云。上云之后,我們發(fā)現(xiàn) AI 離不開(kāi)計(jì)算,只有具備強(qiáng)大的計(jì)算力才可以利用 AI 技術(shù)提高效率,雙 11 就是一個(gè)很好的練兵場(chǎng)。在這樣的規(guī)模下,如何構(gòu)造系統(tǒng)、處理數(shù)據(jù)以及迅速挖掘數(shù)據(jù)背后的價(jià)值是我們?cè)谒伎嫉膯?wèn)題。
在整個(gè)大趨勢(shì)下面,我們可以看到三個(gè)因素:
一是實(shí)時(shí)化。 雙 11 就一天,我們必須理解數(shù)據(jù)并及時(shí)反饋給商家,實(shí)時(shí)性非常重要,雙 11 大屏背后的支撐系統(tǒng)就是通過(guò) Flink 實(shí)現(xiàn)實(shí)時(shí)計(jì)算。單純的銷(xiāo)售額可能沒(méi)有特別大的意義,我們需要進(jìn)行實(shí)時(shí)分析以得到更細(xì)致的指標(biāo),比如用戶的購(gòu)買(mǎi)興趣、商品類(lèi)別、供銷(xiāo)比、渠道、倉(cāng)儲(chǔ)位置和貨源等,我們需要通過(guò)實(shí)時(shí)分析及時(shí)反饋給商家、快遞公司等,讓各方都可以明確如何調(diào)整雙 11 當(dāng)天的策略。今年雙 11,我們每秒可以處理 25.5 億條消息,包括買(mǎi)賣(mài)消息、快遞請(qǐng)求等。
二是規(guī)模性。 我們不僅需要實(shí)時(shí)反饋,雙 11 結(jié)束還需要精細(xì)對(duì)賬給銀行和商家。今年,我們僅花費(fèi)一天時(shí)間(也就是 11 月 12 日)就完成了所有報(bào)表匯報(bào),這就是通過(guò)云平臺(tái)的彈性來(lái)實(shí)現(xiàn)的。在這么大的規(guī)模下,商家服務(wù)效率也是一個(gè)問(wèn)題,原來(lái)就是靠人,用電話和小二來(lái)服務(wù)商家,現(xiàn)在這樣的規(guī)模體系下就需要用 AI 技術(shù)來(lái)服務(wù)商家,并通過(guò) AI 輔助快遞配送,比如機(jī)器人可能會(huì)詢(xún)問(wèn)用戶:在不在家?包裹放在哪里等問(wèn)題。在大家以往的印象中,AI 離生活很遠(yuǎn),但輔助快遞配送就是一個(gè)很具體的場(chǎng)景,可以為用戶帶來(lái)更好的體驗(yàn),包括淘寶首頁(yè)的個(gè)性化推薦等。
如今,淘寶推薦也會(huì)有一些動(dòng)態(tài)封面,這背后是我們一天分析了 2.5 億個(gè)視頻的結(jié)果,現(xiàn)在的淘寶上也有很多用短視頻賣(mài)貨宣傳的,我們分析了 2.5 億視頻,最后日均商品分析達(dá)到 15000 萬(wàn)。我們統(tǒng)計(jì)了當(dāng)天通過(guò)視頻購(gòu)買(mǎi)商品的人,發(fā)現(xiàn)平均有效時(shí)長(zhǎng)是 120 秒。通過(guò)這種新技術(shù)可以促進(jìn)新的場(chǎng)景。
三是 AI。 這一切的背后是數(shù)據(jù)的力量,整個(gè)雙 11 都是 AI 和數(shù)據(jù)在驅(qū)動(dòng)。實(shí)時(shí)性、規(guī)模性和 AI 三者相輔相成讓雙 11 的效率得到了大幅提高,計(jì)算處理能力也有了很大提高,這就是 2684 億銷(xiāo)售額背后的技術(shù)力量。
云上雙 11 的 AI 能力
回歸技術(shù)本身。2017 年以前,我們的系統(tǒng)是比較簡(jiǎn)單的,更多的任務(wù)是處理數(shù)據(jù)和生成報(bào)表。一年半以前,我們開(kāi)始加入更多實(shí)時(shí)性,用實(shí)時(shí)數(shù)據(jù)反饋商業(yè)決策,這就有了 MaxCompute 的出現(xiàn)。
如今,整個(gè)技術(shù)后臺(tái)非常復(fù)雜,我們有非常好的一些計(jì)算引擎,可以進(jìn)行全域數(shù)據(jù)集成,具備統(tǒng)一的源數(shù)據(jù)管理、任務(wù)管理,智能數(shù)據(jù)開(kāi)發(fā)和數(shù)據(jù)合成治理等能力。
說(shuō)到底,AI 和計(jì)算其實(shí)是共生體,AI 的繁榮依賴(lài)于計(jì)算力的積累,所以我們需要很好的數(shù)據(jù)處理平臺(tái)進(jìn)行分析和提取,服務(wù)好算法工程師進(jìn)行創(chuàng)新,比如嘗試各種各樣的模型、各種各樣構(gòu)造機(jī)器學(xué)習(xí)的方式,看看能否提高人工智能的效率和準(zhǔn)確度。
企業(yè)如何構(gòu)建云上 AI 能力
上述這些主要是 AI 的場(chǎng)景,接下來(lái),我會(huì)著重介紹這些場(chǎng)景背后的 AI 技術(shù),主要圍繞飛天 AI 平臺(tái),上層是 PAI 和在線推理服務(wù) EAS,然后分為 DSW 開(kāi)發(fā)平臺(tái),PAI Studio 和 Auto Learning 三部分,基于訓(xùn)練優(yōu)化引擎和推理優(yōu)化引擎,解決大規(guī)模分布式數(shù)據(jù)處理問(wèn)題。
此外,我們還有在線機(jī)器學(xué)習(xí)系統(tǒng),可以對(duì)用戶行為日志進(jìn)行實(shí)時(shí)和離線計(jì)算,然后抽取特征庫(kù),生成批流統(tǒng)一樣本,進(jìn)入樣本庫(kù),最終進(jìn)行批流統(tǒng)一模型訓(xùn)練。為什么我們要做這個(gè)?一是因?yàn)閷?shí)時(shí)性,傳統(tǒng)的搜索是非常不敏感的,而我們是在遵循用戶興趣的變化,如果兩周更新一次模型可能已經(jīng)錯(cuò)過(guò)了幾輪熱銷(xiāo)商品,我們需要通過(guò)在線機(jī)器學(xué)習(xí)的方式進(jìn)行實(shí)時(shí)判斷,這非常接近于深度學(xué)習(xí)。在非實(shí)時(shí)的狀態(tài)下,工程師可以非常精細(xì)的做特征工程,花更多的時(shí)間理解數(shù)據(jù),利用深度學(xué)習(xí)本身的特性捕獲數(shù)據(jù)之間的關(guān)系,而不是靠專(zhuān)家提取,這是深度學(xué)習(xí)的好處,但這需要海量的計(jì)算才可以完成,而在線機(jī)器學(xué)習(xí)系統(tǒng)會(huì)把雙 11 當(dāng)天的日志及時(shí)傳遞到實(shí)時(shí)計(jì)算平臺(tái)做集合,然后通過(guò)分析按照 ID 對(duì)數(shù)據(jù)進(jìn)行聚合形成樣本,最后根據(jù)樣本做增量學(xué)習(xí)、驗(yàn)證、部署,只有這樣才能快速更新模型,使其遵循用戶或者商業(yè)的變化。
在這個(gè)過(guò)程中,我們面臨的第二個(gè)挑戰(zhàn)是模型非常大,因?yàn)橐?ldquo;千人千面”,因此需要一個(gè)非常大且針對(duì)稀疏場(chǎng)景的分布式訓(xùn)練。目前的開(kāi)源機(jī)器學(xué)習(xí)框架還遠(yuǎn)遠(yuǎn)達(dá)不到我們的規(guī)模要求,我們需要進(jìn)行大量的優(yōu)化,以便在稀疏場(chǎng)景下訓(xùn)練大規(guī)模數(shù)據(jù)。如果對(duì)深度學(xué)習(xí)有了解,就應(yīng)該知道深度學(xué)習(xí)可以描述非常大的細(xì)粒度圖,在圖上如何進(jìn)行切割讓圖的計(jì)算和通訊可以更好地平衡是需要考慮的問(wèn)題。
通過(guò)通信算子融合和基于通信代價(jià)的算子下推,我們實(shí)現(xiàn)了分布式圖優(yōu)化技術(shù)。通過(guò)高效內(nèi)存分配庫(kù),比如 thread 庫(kù)、Share Nothing 執(zhí)行框架;利用 Spares 特性的通訊;異步訓(xùn)練,通訊和計(jì)算充分 overlap;容錯(cuò)、partial checkpoint、autoscale、動(dòng)態(tài) embedding;支持大規(guī)模梯度 optimizer 的方法實(shí)現(xiàn)運(yùn)行框架的優(yōu)化,如下圖所示:
優(yōu)化之后,性能上達(dá)到了七倍提升。稀疏特征規(guī)模從數(shù)十億到數(shù)百億,樣本從數(shù)百億到上千億,同時(shí)還有上千億 worker 的分布式增量訓(xùn)練。
在動(dòng)態(tài)封面層面,我們分析了大量視頻文件,視頻比圖片更復(fù)雜,因?yàn)橐曨l牽涉的環(huán)節(jié)非常多,需要做視頻的預(yù)處理,提取視頻幀,但不可能每一幀都進(jìn)行提取,這樣做的代價(jià)實(shí)在是太大了,需要提取視頻的關(guān)鍵幀,通過(guò)圖片識(shí)別和目標(biāo)檢測(cè)提取,這是很復(fù)雜的工作。因此,我們研發(fā)了視頻平臺(tái),幫助視頻分析和算法工程師解決問(wèn)題,具體架構(gòu)如下圖所示:
在視頻里面,在線服務(wù)其實(shí)也很復(fù)雜,有分解,也有合成。首先對(duì)視頻進(jìn)行分解,然后加以理解并提取,最后進(jìn)行合成。通過(guò)視頻 PAI-EAS 在線服務(wù)平臺(tái),算法工程師只需要編寫(xiě)簡(jiǎn)單的 Python 代碼就可以通過(guò)接口調(diào)用相應(yīng)服務(wù),讓他們有更多的時(shí)間進(jìn)行創(chuàng)新。
除了上述場(chǎng)景,整個(gè)平臺(tái)最重要的就是支持算法工程師的海量創(chuàng)新。五年以前,阿里的算法模型非常寶貴,寫(xiě)算法的人不是特別多。隨著深度學(xué)習(xí)的演進(jìn),現(xiàn)在越來(lái)越多的算法工程師在構(gòu)造模型。為了支撐這些需求,我們進(jìn)行了 AI 自動(dòng)化,讓算法建模同學(xué)專(zhuān)注業(yè)務(wù)建模本身,由系統(tǒng)將基礎(chǔ)設(shè)施(PAI)完成業(yè)務(wù)模型的高效、高性能運(yùn)行執(zhí)行。
在深度學(xué)習(xí)方面,我們分別進(jìn)行了前端和后端優(yōu)化。我們希望通過(guò)編譯技術(shù),系統(tǒng)技術(shù)服務(wù)實(shí)現(xiàn)圖優(yōu)化、任務(wù)分割、分布式調(diào)度、數(shù)據(jù)分片、模型分片,通過(guò)系統(tǒng)模型選擇我們認(rèn)為最好的方案執(zhí)行,這是我們整個(gè)平臺(tái)做 PAI 的理念。整個(gè) PAI-Blade 通用推理優(yōu)化框架分為如下幾部分:
通過(guò)系列改進(jìn),我們也取得了一些優(yōu)化成果。我們有一個(gè)非常大的集群,在集群足夠大的時(shí)候,我們就可以很好地實(shí)現(xiàn)復(fù)用。通過(guò)資源調(diào)度和引擎的配合能夠提升 GPU 集群 30% 的利用率。
此外,我們很多 AI 服務(wù)都加載在線服務(wù)框架,我們叫做 PAI EAS,這個(gè)框架是云原生的,可以更好地利用云平臺(tái)本身的規(guī)模性和可擴(kuò)展性,撐住雙 11 當(dāng)天的海量 AI 請(qǐng)求。因?yàn)殡p 11 不僅是商業(yè)數(shù)據(jù)、購(gòu)買(mǎi)數(shù)據(jù)在暴漲,AI 請(qǐng)求也在暴漲,比如智能客服、菜鳥(niǎo)語(yǔ)音當(dāng)天的服務(wù)量都非常大,通過(guò)利用云平臺(tái)的能力,我們可以提供更好的體驗(yàn)。
綜上,這些技術(shù)支撐了阿里巴巴的所有 BU,支持單任務(wù) 5000+ 的分布式訓(xùn)練,有數(shù)萬(wàn)臺(tái)的機(jī)器,數(shù)千 AI 的服務(wù),日均調(diào)用量可以達(dá)到上十萬(wàn)的規(guī)模。最后,阿里雙 11 的成長(zhǎng)和 AI 技術(shù)的成長(zhǎng)以及數(shù)據(jù)的爆發(fā)密不可分。
嘉賓介紹:
林偉,阿里云智能計(jì)算平臺(tái)事業(yè)部研究員,十五年大數(shù)據(jù)超大規(guī)模分布式系統(tǒng)經(jīng)驗(yàn),負(fù)責(zé)阿里巴巴大數(shù)據(jù) MaxCompute 和機(jī)器學(xué)習(xí) PAI 平臺(tái)整體設(shè)計(jì)和構(gòu)架,推動(dòng) MaxCompute2.0,以及 PAI2.0、PAI3.0 的演進(jìn)。加入阿里之前是微軟大數(shù)據(jù) Cosmos/Scope 的核心成員,在微軟研究院做分布式系統(tǒng)方面的研究,分別致力于分布式 NoSQL 存儲(chǔ)系統(tǒng) PacificA、分布式大規(guī)模批處理 Scope、調(diào)度系統(tǒng) Apollo、流計(jì)算 StreamScope 以及 ScopeML 分布式機(jī)器學(xué)習(xí)的工作。在 ODSI、NSDI、SOSP、SIGMOD 等系統(tǒng)領(lǐng)域頂級(jí)會(huì)議發(fā)表十余篇論文。