中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

從數(shù)據(jù)中心基礎設施的視角來看 Facebook 機器學習的應用

2019-01-10    來源:raincent

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

據(jù)國外媒體報道,F(xiàn)acebook 的 20 億用戶中,絕大多數(shù)人不清楚 Facebook 有多少服務在多大程度上依靠人工智能來運作。更沒多少人知道,在龐大的 Facebook 帝國,機器學習占有多大的分量。今天,我們翻譯了 Hazelwood 等人撰寫的文章,從數(shù)據(jù)中心基礎設施的角度,來窺視在 Facebook 內部的機器學習應用的情況。希望這篇文章能夠起到管中窺豹、拋磚引玉的作用。

這是一種奇妙的體驗:機器學習幾乎滲透到業(yè)務的每一個環(huán)節(jié),從頭到尾貫穿了整個堆棧;仡欉^去十年來,軟件系統(tǒng)在這方面已經發(fā)生了這么多根本性的變化,真讓人感到驚訝啊!

在 Facebook,機器學習到底有多普及呢?

“在 Facebook,機器學習提供了驅動用戶體驗幾乎所有方面的關鍵能力…… 機器學習廣泛應用于幾乎所有的服務。”

“Facebook 通過機器學習管道匯集了所有存儲數(shù)據(jù)的大部分,隨著時間的推移,這一比例還在不斷增加,以提高模型的質量。”

“展望未來,F(xiàn)acebook 預計現(xiàn)有的和新增的服務應用的機器學習將會快速增長…… 隨著時間的推移,大多數(shù)服務顯示出利用更多用戶數(shù)據(jù)的趨勢…… 訓練數(shù)據(jù)集有持續(xù)、有時是急劇增長的趨勢。”

現(xiàn)代用戶體驗越來越受到機器學習模型的支持,而這些模型的質量直接取決于為其提供數(shù)據(jù)的數(shù)量和質量:“對于 Facebook 的許多機器學習模型來說,能否取得成功,要取決于廣泛、高質量數(shù)據(jù)的可用性。” 數(shù)據(jù)(當然是相關數(shù)據(jù))是現(xiàn)代公司能夠擁有的最有價值的資產之一。

正如我們上個月看到的文章 Continuum:a platform for cost-aware low-latency continual learning(《Continuum:成本感知低延遲持續(xù)學習的平臺》)所講的那樣,將最新數(shù)據(jù)納入到模型中的延遲也非常重要。在這篇文章中有一段寫得很好,作者研究了在一段時間內失去訓練模型的能力以及必須滿足陳舊模型的請求的影響。例如,社區(qū)誠信團隊依靠經過頻繁訓練的模型來跟上對手,尋找試圖繞過 Facebook 保護并向用戶展示令人反感的內容的不斷變化的方式。在這里,訓練迭代需要幾天的時間。更依賴于將最近的數(shù)據(jù)合并到模型中的是消息來源(News Feed)排名。“陳舊的消息來源模型對質量有可衡量的影響。” 如果我們看一看業(yè)務最核心的部分:廣告排名模型,“我們就會了解到,利用陳舊的機器學習模型的影響,是以小時為單位來衡量的。換言之,對于這個模型來說,使用一天比使用一個小時要槽糕得多。” 該文章這段的結論之一是,訓練工作負載的災難恢復和高可用性非常重要。(另一個練習混沌工程的地方。)

為了有助于理解這種普遍影響,只需看看 Facebook 上使用的一些機器學習的例子即可。

在 Facebook 使用機器學習的例子

消息來源中的故事排名是通過機器學習模型完成的。

通過機器學習模型確定向給定用戶顯示哪些廣告:“廣告模型經過訓練,以了解用戶特征、用戶背景、先前的交互和廣告屬性如何最能預測單擊廣告、訪問網(wǎng)站和 / 或購買產品的可能性。”

各種各樣的搜索引擎 (例如視頻、照片、人物、事件等等) 都是由機器學習模型驅動的,而一個整體的分類器模型位于所有這些引擎之上,以決定對于任何給定的請求應該搜索哪些垂直領域。

Facebook 的一般分類和異常檢測框架 Sigma 用于許多內部應用程序,包括網(wǎng)站完整性、垃圾郵件檢測、支付、注冊、未授權員工訪問、廣告事件建議。Sigma“每天都有數(shù)百種不同的模型在生產中運行”。

Lumos 從圖像中提取屬性和嵌入。(我不確定 Lumos 和 Rosetta 的關系)

Facer 是 Facebook 的人臉檢測和識別框架。

超過 45 種源語言和目標語言之間的翻譯,由每種語言對特有的模型提供支持,目前支持大約 2000 種翻譯方向。每天大約有 45 億份翻譯后的帖子。

語音識別模型將音頻流轉換成文本,為視頻提供自動字幕。

而這些只是亮點……

除了上面提到的主要產品之外,更多的長尾服務還以各種形式利用機器學習。產品和服務的長尾達數(shù)百個。

AI 前線注:“長尾”(long-tail)這一概念是由 Chris Anderson 在 2004 年發(fā)表的《The Long Tail》一文中最早提出的,他通過對 Amazon、iTunes 等電子商務零售商的銷售數(shù)據(jù)進行研究,發(fā)現(xiàn)了一種符合統(tǒng)計規(guī)律中大數(shù)定律的現(xiàn)象。這種現(xiàn)象恰如價值、品種而為坐標上的一條需求曲線,向代表 “品種” 的橫軸盡頭延伸,一直沒有墜落至零點。這種曲線在統(tǒng)計學中被稱作 “長尾分布”。因為相對頭部來講,它的尾部特別長,就好像拖著一條長長的尾巴。“長尾” 也是因此而得名的。

常用的模型有哪些?

Facebook 使用的主要機器學習算法包括邏輯回歸、支持向量機、梯度提升決策樹(gradient boosted decision trees)和 DNN。在 DNN 家族中,MLP 用于對結構化數(shù)據(jù)進行操作(如排序),CNN 用于空間任務(如圖像處理),RNN/LSTM 用于序列處理(如語言處理)。

 

 

從研究到生產:PyTorch,Caffe2 和 FBLearner

Facebook 內部的 FBLearner 工具套件包括一個 feature store(特征存儲庫),它充當特征生成器的目錄,可以用于訓練和實時預測:“它相當于一個市場,利用它,多個團隊可以共享和發(fā)現(xiàn)特征。”FBLearner Flow 基于工作流描述對模型進行訓練,并內置了對實驗管理的支持。預測器使用 Flow 中訓練的模型來提供實時預測。

訓練模型的頻率遠低于推理——時間尺度各不相同,但通常是幾天左右。訓練也需要相對較長的時間來完成——通常是幾小時或幾天。同時,根據(jù)產品的不同,在線推理階段可能每天運行數(shù)萬億次,并且通常需要實時執(zhí)行。在某些情況下,特別是在推薦系統(tǒng)方面,還以持續(xù)的方式在線進行額外的訓練。

在研究和探索方面,F(xiàn)acebook 使用 PyTorch:“它的前端專注于靈活性、調試和動態(tài)神經網(wǎng)絡,這使得快速實驗成為可能。” 不過 PyTorch 并沒有針對生產和移動部署進行優(yōu)化,因此一旦開發(fā)出一個模型,它就會被轉換為 Caffe2,這是 Facebook 用于訓練和部署大規(guī)模機器學習模型的生產框架。

Facebook 并不是簡單重寫模型了事,而是積極構建 ONNX 工具鏈(Open Neural Network Exchange,開放神經網(wǎng)絡交換格式),用于跨不同框架和庫的深度學習模型的標準交換。

在 Facebook 內部,我們使用 ONNX 作為將研究模型從 PyTorch 環(huán)境轉移到高性能生產環(huán)境的主要手段。

基礎設施的影響

訓練需要混合使用 CPU 和 GPU,而模型服務主要是由 CPU 完成的。對于訓練來說,隨著模型使用的數(shù)據(jù)量持續(xù)增長,數(shù)據(jù)源的局部性就會變得非常重要。用于機器學習訓練的 GPU 的物理位置是有意多樣化的,是為了能夠提供彈性以及在丟失區(qū)域 / 數(shù)據(jù)中心時能夠繼續(xù)訓練的能力。

對于復雜的機器學習應用(如廣告和新聞來源排名),每個訓練任務需要獲取的數(shù)據(jù)量超過了數(shù)百 TB。

數(shù)據(jù)量也意味著分布式訓練變得越來越重要。“這不僅是 Facebook 的一個活躍的研究領域,在一般人工智能研究領域中也是如此。” 在推理過程中,模型通常被設計成在一臺機器上運行,不過 Facebook 的主要服務也在不斷評估是否有必要開始擴展超出單臺機器容量的模型。

除了數(shù)據(jù)量之外,還需要許多復雜的處理邏輯來清理和歸一化數(shù)據(jù),以實現(xiàn)高效傳輸和輕松學習。這對存儲、網(wǎng)絡和 cpu 提出了非常高的資源需求。數(shù)據(jù)(準備)工作負載和訓練工作負載在不同的機器上保持分離。

這兩個工作負載具有非常不同的特征。數(shù)據(jù)工作負載非常復雜、特殊、依賴于業(yè)務,而且變化很快。另一方面,訓練工作量通常是有規(guī)律的、穩(wěn)定的、高度優(yōu)化的,而且更喜歡 “干凈” 的環(huán)境。

硬件

摩爾定律(Moore’s law)可能已經失效了,但是,比較一下 Facebook 在 2015 年設計使用的 “Big Sur” GPU 服務器和 2017 年使用的 “Big Basin” GPU 服務器在這兩年內所取得的進展還是很有意思的:

♦  每 GPU 的單精度浮點運算從 7 萬億次到高達 15.7 萬億次。

♦  高帶寬內存提供 900 GB/s 的帶寬(為 Big Sur 的 3.1 倍)。

♦  內存從 12 GB 增加到 16 GB。

♦  高帶寬 NVLink 間 GPU 通信。

♦  與 Big Sur 相比,在訓練 ResNet-50 圖像模型時,吞吐量提高了 300%。

未來的發(fā)展方向

機器學習工作負載的需求會影響到硬件選擇。例如,計算綁定機器學習工作負載受益于更廣泛的 SIMD 單元、專用卷積或矩陣乘法引擎以及專用協(xié)處理器。模型壓縮、量化和高帶寬內存等技術有助于在 SRAM 或 LLC 中保留模型,并在不執(zhí)行時減輕影響。

為了減少將最新數(shù)據(jù)合并到模型中的延遲,需要進行分布式訓練,而分布式訓練反過來又 “要求對網(wǎng)絡拓撲和調度進行仔細的協(xié)同設計,以有效地利用硬件,實現(xiàn)良好的訓練速度和質量。”

解決這些和其他新出現(xiàn)的挑戰(zhàn)仍然需要跨越機器學習算法、軟件和硬件設計的各種努力。

原文鏈接:

https://blog.acolyer.org/2018/12/17/applied-machine-learning-at-facebook-a-datacenter-infrastructure-perspective/

作者:Hazelwood 等

譯者:Sambodhi

標簽: 電子商務 服務器 媒體 排名 搜索 搜索引擎 通信 網(wǎng)絡

版權申明:本站文章部分自網(wǎng)絡,如有侵權,請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:2019年大數(shù)據(jù)發(fā)展趨勢預測

下一篇:機器學習競爭其實是一場數(shù)據(jù)上的競爭