阿里巴巴深度學習框架X-Deep Learning,要開源了

2020-12-13 千家智客

[導讀]阿里巴巴將於12月開源其內部深度學習框架 X-DeepLearning,面向廣告、推薦、搜索等高維稀疏數據場景,以填補TensorFlow、PyTorch等現有開源深度學習框架主要面向圖像、語音等低維稠密數據的不足。

阿里巴巴內部透露將開源內部深度學習框架 X-DeepLearning的計劃,這是業界首個面向廣告、推薦、搜索等高維稀疏數據場景的深度學習開源框架,可以與TensorFlow、PyTorch 和 MXNet 等現有框架形成互補。

X-Deep Learning(下文簡稱XDL)由阿里巴巴旗下大數據營銷平臺阿里媽媽基於自身廣告業務自主研發,已經大規模部署應用在核心生產場景,在這次的「雙11」中也發揮了重要作用。

阿里媽媽研究人員介紹,XDL整體上跟TensorFlow和PyTorch是同級的,它們很好地解決了目前已有開源深度學習框架分布式運行能力不足,以及大規模稀疏特徵表徵學習能力不足的問題。

XDL 採用了「橋接」的架構設計理念。這種架構使得 XDL 跟業界的開源社區無縫對接。例如,用戶可以非常方便地在XDL框架上應用基於TensorFlow或者PyTorch編寫的最先進開源深度學習算法。此外,對於已經在使用其他開源框架的企業或者個人用戶,也可以在原有系統基礎上輕鬆進行擴展,享受XDL帶來的高維稀疏數據場景下極致的分布式能力。

數據的高維稀疏性是廣告、推薦、搜索等網際網路眾多核心應用場景的特徵,覆蓋了大多數網際網路企業的數據應用模式。

對於難以與BAT研發能力比肩的眾多網際網路公司而言,工業級深度學習框架XDL及內置算法方案的開源,將助力各大公司的技術升級,大大提升廣告/推薦/搜索場景的精準性,縮短技術迭代周期。

面向廣告、推薦、搜索場景的工業級分布式開源DL框架

2016年左右,阿里媽媽團隊在研發基於深度學習的廣告點擊率預估算法時發現,當時已有的TensorFlow、MXNet等開源框架,用來實驗算法原型可以,但真正面臨網際網路尺度的規模化數據時,運行效率面臨巨大的挑戰。

「我們第一次基於TensorFlow訓練我們實際生產系統的深度點擊率預估模型時,一天的數據量需要運行超過3天的時間模型才能收斂,」阿里媽媽研發人員告訴新智元:「典型的生產模型需要用到的訓練樣本往往都是歷史幾個月的數據,顯然直接使用TensorFlow是不現實的。」

隨後,阿里媽媽團隊也試圖對TensorFlow做一些簡單優化,但發現改動成本巨大。進一步剖析框架後,他們發現本質的原因是TensorFlow、MXNet、PyTorch等框架大都是面向圖像、語音等領域的稠密數據設計,對廣告、推薦等場景的高維稀疏數據上的深度學習計算考慮不足。

為此,阿里媽媽啟動了XDL框架的研發,希望能夠在復用已有開源框架對稠密數據的計算能力基礎上,重點打造面向工業級應用的分布式規模能力,單機能夠處理的計算則引用現有開源框架。

經過2年的研發與打磨,XDL目前已經在阿里媽媽成功部署到內部的生產系統。以阿里媽媽定向廣告為例,2017年,以 XDL 為基礎的深度學習算法升級帶來的廣告收入提升超過百億。

「我們注意到今天業界的很多團隊還在類似的重複性工作。開源XDL,是希望把阿里巴巴的能力賦能給大家,推高全行業的整體技術水位,同時也希望能夠吸引業界的夥伴們一起來建設高維稀疏數據場景上的深度學習技術,一起成長與獲益。 」

「在現有的版本中,我們在單節點稠密深度網絡計算上採用橋接技術,復用了 TensorFlow、MxNet 的能力,也是最大程度上復用了已有開源深度學習框架的能力。」

研究人員表示,後續 XDL 也會考慮加入ONNX。「ONNX針對稀疏計算的表徵能力目前是不完善的,我們也在考慮對ONNX的協議標準進行擴充。」

研究人員表示,他們預計12月在Github公開 XDL的原始碼和使用文檔。除了核心的 X-DeepLearning 訓練框架,阿里還將開源面向高維稀疏數據場景的系統化解決方案,計劃分批次對外發布,包括面向在線實時服務的高性能深度學習預估引擎、面向全庫實時檢索的全新深度學習匹配引擎;同時還內置阿里媽媽自主研發的一系列創新算法,涉及CTR預估模型、CVR預估模型、匹配召回模型、模型壓縮訓練算法等等。

不管是以廣告、推薦、搜索為代表業務的企業級用戶,還是對此感興趣的個人用戶,都可以加入到開源計劃當中。

 

 

 

相關焦點

  • Spark與深度學習框架——H2O、deeplearning4j、SparkNet
    例如,深度學習算法能創建一個識別動物圖片的函數:給一張動物的圖片,它能分辨出圖片上的動物是一隻貓還是一隻狗。深度學習可以看作是組合了許多神經網絡的一種深度結構。與其他已有的機器學習算法相比,深度學習需要大量參數及訓練數據。這也是我們介紹能在Spark上運行的深度學習框架的原因。要想在企業環境中穩定地進行深度學習的訓練,必須要有一個可靠而快速的分布式引擎。
  • 百度開源移動端深度學習框架mobile-deep-learning(MDL)
    2017 年 9 月 25 日,百度在 GitHub 開源了移動端深度學習框架 mobile-deep-learning(MDL)的全部代碼以及腳本,希望這個項目在社區的帶動下能夠更好地發展。寫在前面深度學習技術已經在網際網路的諸多方向產生影響,每天科技新聞中關於深度學習和神經網絡的討論越來越多。
  • 【專知-Deeplearning4j深度學習教程01】分布式Java開源深度學習框架DL4j安裝使用: 圖文+代碼
    為此,我們推出來自中科院自動化所專知小組博士生Hujun創作的-分布式Java開源深度學習框架Deeplearning4j學習教程,第一篇,Deeplearning4j配置使用。Deeplearning4j開發環境配置ND4J(DL4J的矩陣運算庫)教程基於DL4J的CNN、AutoEncoder、RNN、Word2Vec等模型的實現簡介Deeplearning4j是由SkyMind公司開源的分布式Java/Scala深度學習框架
  • Java 工程師快速入門深度學習,從 Deeplearning4j 開始
    這些都是以 Python 和 C/C++ 語言為主,而在目前企業項目中,無論是 Web 應用、Andriod 開發還是大數據應用,Java 語言都佔有很大的比例。此外,我們必須看到,越來越多的從事傳統 Java 應用開發的工程師嘗試將 AI 技術融入到項目中,或者自身在嘗試轉型 AI 領域。
  • ...Java工程師轉型AI的秘密法寶——深度學習框架Deeplearning4j...
    雷鋒網AI研習社按:深度學習是人工智慧發展最為迅速的領域之一,Google、Facebook、Microsoft等巨頭都圍繞深度學習重點投資了一系列新興項目,他們也一直在支持一些開源深度學習框架。目前研究人員使用的深度學習框架有 TensorFlow、Torch 、Caffe、Theano、Deeplearning4j等,而Deeplearning4j是為數不多以Java/JVM為基礎,能與Apache Spark無縫結合,支持CPU/GPU集群分布式計算的開源框架。本文就來為大家詳細介紹一下深度學習框架Deeplearning4j的重要組件,不同環境下的操作用法及實例分享。
  • 深度學習——你需要了解的八大開源框架
    深度學習八大開源框架導讀:深度學習(Deep Learning)是機器學習中一種基於對數據進行表徵學習的方法,深度學習的好處是用非監督式或半監督式的特徵學習、分層特徵提取高效算法來替代手工獲取特徵作為當下最熱門的話題,Google、Facebook、Microsoft等巨頭都圍繞深度學習重點投資了一系列新興項目,他們也一直在支持一些開源深度學習框架。
  • 新書推薦 | Deep Reinforcement Learning
    深度強化學習是實現智能決策的關鍵技術之一,對人工智慧、機器人、認知科學、金融、資源調配、等重大應用需求和研究方向有重要的意義。深度學習是基於深度神經網絡的機器學習方法。深度強化學習是強化學習和深度學習的結合體,隨著近幾十年來深度學習發展的熱潮,深度強化學習作為一個新的重要學科分支吸引了越來越多的科研和產業人員的關注。
  • 深度學習(Deep Learning) 學習資料
  • 機器學習(Machine Learning)&深度學習(Deep Learning)資料(之一)
    《Deep Learning in Neural Networks: An Overview》 介紹:這是瑞士人工智慧實驗室Jurgen Schmidhuber寫的最新版本《神經網絡與深度學習綜述》本綜述的特點是以時間排序,從1940年開始講起,到60-80年代,80-90年代,一直講到2000年後及最近幾年的進展。涵蓋了deep learning裡各種tricks,引用非常全面.
  • 微軟打造深度學習開源框架「自動翻譯機」:不同框架輕鬆切換
    【新智元導讀】微軟Cortana智能和機器學習小組的數據科學家最新在Giuhub開源項目,對各個深度學習框架進行了基準測試,提供了很多有參考價值的數據以及GPU優化代碼。眾多的深度學習框架,就像世界上各種不同的語言一樣,但是,不會「外語」並不可怕,他們希望構建一個深度學習框架的羅塞塔石碑,讓開發人員和研究者能在這個眾多框架並存的環境中,好好生存。
  • 用PyTorch做深度學習實驗!Facebook新框架Ax和BoTorch雙雙開源
    這兩個框架旨在簡化PyTorch應用中的自適應實驗流程。在現代機器學習應用中,對實驗到生產的流程進行簡化是最難實現的任務之一。在已經市場化深度學習框架中,Facebook的PyTorch因其高度靈活性成為數據科學界的最愛,PyTorch能夠實現快速建模和實驗。但是,深度學習應用中的許多實驗面臨的挑戰已經超出了特定框架的能力範圍。
  • 大牛的《深度學習》筆記,Deep Learning速成教程
    為什麼擁有大數據的網際網路公司爭相投入大量資源研發深度學習技術。聽起來感覺deeplearning很牛那樣。那什麼是deep learning?為什麼有deep learning?它是怎麼來的?又能幹什麼呢?
  • DeepMind悄咪咪開源三大新框架,深度強化學習落地希望再現
    作者 | Jesus Rodriguez譯者 | 夕顏【導讀】近幾年,深度強化學習(DRL)一直是人工智慧取得最大突破的核心。儘管取得了很多進展,但由於缺乏工具和庫,DRL 方法仍難以應用於主流的解決方案。因此,DRL 主要以研究形式存在,並未在現實世界的機器學習解決方案中得到大量應用。解決這個問題需要更好的工具和框架。
  • ​機器學習(Machine Learning)&深度學習(Deep Learning)資料(之二精選161-315網址)
    Aho-Corasick算法利用添加了返回邊的Trie樹,能夠在線性時間內完成匹配。但如果匹配十萬個正則表達式呢?這時候可以用到把多個正則優化成Trie樹的方法,如日本人寫的Regexp::Trie171.《Deep learning Reading List》介紹:深度學習閱讀清單172.《
  • ​大牛的《深度學習》筆記,Deep Learning速成教程
    為什麼擁有大數據的網際網路公司爭相投入大量資源研發深度學習技術。聽起來感覺deeplearning很牛那樣。那什麼是deep learning?為什麼有deep learning?它是怎麼來的?而Deep learning的deep是不是就表示我存在多少層,也就是多深呢?沒錯。那Deep learning是如何借鑑這個過程的呢?畢竟是歸於計算機來處理,面對的一個問題就是怎麼對這個過程建模?因為我們要學習的是特徵的表達,那麼關於特徵,或者說關於這個層級特徵,我們需要了解地更深入點。
  • Keras vs PyTorch:誰是第一深度學習框架?
    【IT168 資訊】「第一個深度學習框架該怎麼選」對於初學者而言一直是個頭疼的問題。本文中,來自 deepsense.ai 的研究員給出了他們在高級框架上的答案。在 Keras 與 PyTorch 的對比中,作者還給出了相同神經網絡在不同框架中性能的基準測試結果。
  • 6月29日發售 | Deep Reinforcement Learning
    深度強化學習是實現智能決策的關鍵技術之一,對人工智慧、機器人、認知科學、金融、資源調配等重大應用需求和研究方向有重要的意義。深度學習是基於深度神經網絡的機器學習方法。深度強化學習是強化學習和深度學習的結合體,隨著近幾十年來深度學習發展的熱潮,深度強化學習作為一個新的重要學科分支吸引了越來越多的科研和產業人員的關注。
  • Deep learning與Neural Network
    深度學習是無監督學習的一種。深度學習的概念源於人工神經網絡的研究。含多隱層的多層感知器就是一種深度學習結構。深度學習通過組合低層特徵形成更加抽象的高層表示屬性類別或特徵,以發現數據的分布式特徵表示。Deep learning本身算是machine learning的一個分支,簡單可以理解為neural network的發展。
  • 從TensorFlow到Theano:橫向對比七大深度學習框架
    最近,來自數據科學公司 Silicon Valley Data Science 的數據工程師 Matt Rubashkin(UC Berkeley 博士)為我們帶來了深度學習 7 種流行框架的深度橫向對比,希望本文能對你帶來幫助。在 SVDS,我們的研發團隊一直在研究不同的深度學習技術;從識別圖像到語音,我們也在各類框架下實現了不少應用。
  • 十個值得一試的開源深度學習框架 - OSCHINA - 中文開源技術交流社區
    無疑,來自Google軍火庫的TensorFlow必然是開源深度學習軟體中的明星產品,登陸GitHub當天就成為最受關注的項目,當周獲得評星數就輕鬆超過1萬個。對於希望在應用中整合深度學習功能的開發者來說,GitHub上其實還有很多不錯的開源項目值得關注,首先我們推薦目前規模人氣最高的TOP3:一、Caffe。