業界|對話阿里媽媽 XDL 團隊:希望這一框架成為國內推薦搜索廣告領域最主流的選擇

AI 科技評論按:11 月 28 日,阿里巴巴宣佈將旗下的大數據營銷平臺阿里媽媽的算法框架 X-Deep Learning(下文簡稱 XDL)進行開源,其中,XDL 的面向高維稀疏數據場景、工業級分佈式訓練以及橋接多後端支持三大主要特點,更是引起了業界的廣泛關注。

12 月 21 日,阿里媽媽正式對 XDL 開源,雷鋒網 AI 科技評論也借這一機會對阿里媽媽 XLD 團隊進行了採訪,來了解 XDL 研發背後的契機和技術積累、應用場景、特點優勢及未來規劃。

XDL 四位主要負責人:

靖世:研究員,阿里媽媽定向廣告技術團隊負責人兼阿里媽媽算法平臺負責人

見獨:資深技術專家,阿里媽媽工程平臺技術負責人

懷人:資深算法專家,阿里媽媽算法平臺深度學習方向負責人兼定向廣告排序算法團隊負責人

樂迪:資深技術專家,阿里媽媽大數據計算與機器學習平臺的工程架構負責人

據悉,XDL 這一框架的研發萌芽於 2016 年年初,當時 XDL 團隊就開始探索深度學習在廣告技術中端到端建模的方法,在這個過程中遇到的來自業務和技術方面的挑戰,則促成了 XDL 研發。

在採訪中,XDL 團隊透露,在阿里發佈開源 XDL 這一消息後,就有超過十家以上的大中型公司向阿里媽媽團隊表達了它們的需求,這無疑大大也大大增強了團隊對於這一框架的信心。採訪最後,他們還表達了對 XDL 的願景:「希望在國內的推薦、搜索、廣告領域,XDL 是深度學習框架最主流的選擇。」

XDL 研發背後的契機和技術積累

1.這一框架是從什麼時候開始進行研發的?基於怎樣的契機和阿里已有的技術積累?

XDL 是從 2016 年中期開始研發的。不過實際上,早在 2016 年初的時候,我們就在探討深度學習在廣告技術的發展方向,並在當時提出了面向核心的點擊率(CTR)預估建模的 Deep Interest Network 算法雛形;2016 年年中,我們啟動了第一個基於深度學習的端到端 CTR 模型的研發,並且希望不只是採用 Embedding+MLP 這樣的簡單架構,而是實現深度學習模型更靈活多樣的創新迭代。這是 XDL 項目啟動前的一個大背景。

具體來說,XDL 的研發主要受業務和技術兩個層面的驅動,這也是該項目啟動的契機:

  • 一方面是業務場景對深度學習提出了更高的要求。在淘寶這樣的電商場景下,數據具有高維稀疏的特點,比如在淘寶上的一個用戶對應一個商品,二者間的樣本非常稀疏,因而給數據表示、組織以及傳輸、計算帶來了極大的挑戰。一開始,我們也曾嘗試過使用 TensorFlow 來構建技術框架來解決這一問題,但實踐後很快得出結論,單純使用 TensorFlow 很難解決阿里媽媽面對的問題。

  • 另一方面則是技術的變革驅動了我們在該技術領域的研究。隨著深度學習的發展,其網絡結構變得特別複雜,我們認為這種複雜的複合網絡結構的迭代、優化的效率,在硬件和軟件層面都有很大的提升空間。

XDL 研發前,阿里主要有兩個技術積累:一是阿里媽媽事業部牽頭做的阿里巴巴最早一代的基於MPI 協議搭建的分佈式機器學習平臺,其中實現了邏輯迴歸、MLR、GBDT 等一系列大規模並行算法;另一個是阿里巴巴內部之前啟動的圖像深度學習項目,做了一個類似分層的深度學習端到端的框架,但是由於這個框架跟 Caffe 的功能有較大重合,因此沒有對其進行開源,而之後我們也發現它對業界可能並沒有那麼大的增量,因而只在內部進行使用,最後也轉向其他框架的研發了。

2. 研發至今,經歷了哪些比較大的迭代?

現在開源的 XDL 已經經歷了三次迭代。第一個版本是由算法團隊主導的,第二個版本則是由引擎工程團隊主導,現在的第三個版本是由工程團隊和算法團隊合作迭代的。

XDL 的應用場景和特點優勢

3. XDL 目前用在阿里的哪些業務場景?未來是否會考慮將這一框架應用到其他場景?

XDL 作為阿里媽媽的一個橫向的機器學習平臺,在支撐阿里巴巴的各項業務,目前應用最多的是阿里媽媽的定向廣告,包括展示廣告和信息流廣告,在這個典型應用場景中,每天支撐大約 100 個模型的生產化訓練。

將這一框架應用到更多的其他場景中,也是我們對 XDL 進行開源的初衷。我們認為在廣告、推薦、搜索等互聯網業務中,在目前業內已有的框架基礎上去搭建一個深度學習平臺還有很多工作要做,包括結構化數據處理、模型結構的創新研發等,但是如果不只是遵循谷歌、Facebook 等國外公司的網絡結構的話,就對框架及框架邊界提出了更高的要求。因此,我們將結構化數據處理以及模型分佈式計算等與傳統結構不一樣的經驗沉澱下來,從算法包到底層計算框架賦能企業,使其在自己的業務上進行更好的迭代。

後期我們也會開放一些工業界的數據集,讓研究者也能以這些技術和數據集為基礎,進行獨立的創新研發。

4.相較於目前兩大深度學習開源框架 TensorFlow 和 PyTorch 來說,XDL 獨有的特色和產品優勢集中體現在哪些方面?

相較於目前兩大深度學習開源框架 TensorFlow 和 PyTorch 來說,XDL 的特色和產品優勢集中體現兩個方面:

  • 第一,XDL 面向超大規模高維稀疏特徵的深度學習進行了分佈式運行時的設計與優化,這個對推薦、搜索、廣告等互聯網場景的工業化應用至關重要,而 TensorFlow、PyTorch 等開源深度學習框架更多的是面向圖像、視頻、語音等低維稠密數據場景進行了優化。 例如,XDL 針對推薦、搜索、廣告等場景的訓練方式獨創了結構化壓縮、高階模型嵌套訓練等範式,對大規模深度網絡的存儲、通信、計算等有一個數量級以上的效率提升。

  • 第二,XDL 不僅僅只是一個訓練框架,我們開源的是面向高維稀疏數據場景的完整解決方案,尤其是一系列在阿里媽媽的核心業務場景經過生產驗證的算法模型,這對於推薦、搜索、廣告等領域從業者來說,有極高的參考價值,可以幫助這個行業的很多團隊實現技術的跨越式前進。

5.在具體的應用上,XDL 的性能達到了什麼程度,是否有針對 TensorFlow、PyTorch 的「槽點」進行更深層次的優化?

由於 XDL 主要針對推薦、搜索、廣告這些場景,因此我們會重點考量 XDL 在這些高維稀疏場景下的性能,我主要從三個層面來講:

  • 第一個是從分佈式水平擴展能力來看,TensorFlow、PyTorch 等適用於低維稠密數據的框架在機器並行度增加時,其性能無法實現較好的提升,例如 TensorFlow 在併發度達到百以上時,很難再通過增加更多的計算資源來提升整體的訓練吞吐率,而 XDL 在千級別的併發度上,也能實現線性的提升。

  • 第二個是從支持的特徵和參數的規模來看,XDL 支持模型的規模和參數比傳統情況下有所提升,XDL 可以支持千億參數的大規模深度學習模型訓練,包括批量訓練模式和在線訓練模式。

  • 第三個是從實際運行的性能來看,在高維稀疏分佈式訓練下,XDL 大部分模型比開源的 TensorFlow 模型整體高出十倍以上的一個量級。

6.開源之後,主要的用戶群體是哪些人?這一框架又是怎樣滿足不同領域的用戶需求的?

我們在 11 月 28 號發佈了開源計劃後,就有超過十家以上的大中型公司向我們表達了需求,這是因為我們將 XDL 定義為一個偏向企業級用戶的框架,包括 XDL 所面向的高維稀疏場景以及推薦、搜索、廣告這三個互聯網最核心的典型場景,因此我們會在 To B 這個方向上有較大的著力點。

在滿足不同領域的用戶需求方面,首先,由於 XDL 本身帶有很強的歸屬性,它跟 TensorFlow 等通用開源框架不太一樣。一方面非企業級用戶並不需要處理太多的工業場景數據,XDL 對他們的必要性不是很多;另一方面,在工業場景下,XDL 除了考慮訓練框架本身的基礎屬性,還需要考慮怎麼跟生產系統耦合、怎麼訪問和調度嵌入數據、數據訓練後又怎樣將模型發佈到生產系統中等等一系列問題。對此,我們給出的其實是一整套解決方案。當然,這套方案並不能覆蓋所有用戶的需求,我們之所以開源,也是希望以生態化的開放方式,來讓業界共同發展這個領域。

另外從業務價值上講,推薦、搜索、廣告三大場景已是互聯網信息爆炸時代的一個「標配」,因為這些場景足夠大且足夠有特點,而阿里媽媽又正好覆蓋了這些場景,從業務場景到整個解決方案,有助於實際解決各種各樣的技術挑戰。

未來規劃

7. 對這一框架未來的發展有怎樣的願景?

希望在國內的推薦、搜索、廣告領域,XDL 是深度學習框架最主流的選擇。

8.目前 TensorFlow 和 PyTorch 的用戶群體已經很大了,你們認為 XDL 的未來地位能否與二者並肩,又打算如何推廣 XDL?

XDL 確實對 TensorFlow 和 PyTorch 的一些能力進行了擴展,我們也希望能在推薦、搜索、廣告領域建立一個龐大的技術生態去與 PyTorch 和 TensorFlow 比肩,但目前還處於邁向這個目標的重要階段。當下,我們主要還是比較務實地將一些技術成果公佈出來,按照我們認為對的方向以及業界的需求,希望能夠填補在搜索、推薦、廣告等高維稀疏場景的技術真空,至於最終能否實現 TensorFlow 和 PyTorch 這樣的生態級別,需要我們和業界的共同努力。

9. 接下來是否會投入專門的團隊對這一框架進行維護和更新?有哪些更新計劃?

  • 一方面,這個框架進行開源後,一定會有很多人在使用過程中遇到一些問題或者需要我們幫助的地方,我們這邊會有專門的團隊來負責對用戶反饋的 bug 等整個社區的問題進行解答,社區建設是我們非常看重的一個方面。

  • 另一方面,針對對我們這個框架有迫切需求的公司,我們之後也會組織一些類似 workshop 這樣的會議和活動,來與他們進行面對面的交流。同時,我們還會有針對性地挑選出一些合作伙伴,以重點貼身服務的方式幫助其完成初期的全鏈路系統建設,並從它們的視角去考量用戶使用等方面的需求。

除此之外,我們還會結合阿里內部其他團隊的力量,來將這件事情做起來。至於之後的發展方向和更新規劃,還需要我們團隊進行討論後才能正式公佈。

10. 是否會考慮借用社區的形式,和開發者一起去維護這個框架?

當然會,因為我們希望給用戶帶來價值,我主要從以下三個層面來談一下:

  • 第一個層面是底層設計上的橋接兼容,可以讓用戶直接使用自己熟悉的編程方式就可以獲得 XDL 的結構化數據的分佈式建模能力以及大規模稀疏數據的計算能力;

  • 第二個我們將 XDL 進行開源,也是希望讓用戶(有能力的情況下)可以在框架中自行改動,而不是僅僅給他們一個 API 接口,讓他們在雲上跑一跑;

  • 第三個是我們也在框架中直接給了算法模板,展示了我們自己如何使用框架設計相關算法。

XDL 目前已在 Github 社區開放,大家可前往以下地址獲取:

https://github.com/alibaba/x-deeplearning

點擊閱讀原文,查看如何從數據挖掘比賽中脫穎而出?快來get阿里媽媽廣告算法賽亞軍套路吧!


分享到:


相關文章: