自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

連通系統(tǒng)與機器學習的 MLOps 挑戰(zhàn)在哪?這篇文章講清楚了

新聞 機器學習
機器學習徹底改變了人們使用數(shù)據(jù)以及與數(shù)據(jù)交互的方式,提升了商業(yè)效率,從根本上改變了廣告業(yè)的格局,全面變革了醫(yī)療健康技術。

 [[418732]]

機器學習徹底改變了人們使用數(shù)據(jù)以及與數(shù)據(jù)交互的方式,提升了商業(yè)效率,從根本上改變了廣告業(yè)的格局,全面變革了醫(yī)療健康技術。但是,機器學習若要繼續(xù)擴大其影響力和影響范圍,開發(fā) pipeline 必 須得到改進。通過將數(shù)據(jù)庫系統(tǒng)、分布式計算和應用部署等領域數(shù)十年的工作引入機器學習領域,機器學習系統(tǒng)研究可以滿足這一需求。此外,通過充分利用模型并行以及改進舊有解決方案,我們可以利用系統(tǒng)的重新設計來改進機器學習。

連通系統(tǒng)與機器學習的 MLOps 挑戰(zhàn)在哪?這篇文章講清楚了

過去十年,機器學習(ML)已經成為各種領域中無數(shù)應用和服務的重要組成部分。得益于機器學習的快速發(fā)展,從醫(yī)療健康到自動駕駛等諸多領域已經出現(xiàn)了深刻的變革。

機器學習在實際應用中日益增加的重要性使人們開始關注一個專注于「實踐中機器學習」的新領域,即機器學習系統(tǒng)(或簡稱 MLOps)。該領域連通計算機系統(tǒng)和機器學習,并從傳統(tǒng)系統(tǒng)研究的視角考慮機器學習的新挑戰(zhàn)。

那么機器學習的挑戰(zhàn)究竟有哪些呢?加州大學圣地亞哥分校博士生 Kabir Nagrecha 使用 D. Sculley 2015 年的論文《 Hidden Technical Debt in Machine Learning Systems 》中提出的架構,來描述典型 ML 系統(tǒng)中的問題并一一分解其組件。

連通系統(tǒng)與機器學習的 MLOps 挑戰(zhàn)在哪?這篇文章講清楚了

D. Sculley 論文中的 ML 系統(tǒng)架構,圖源:https://papers.nips.cc/paper/2015/file/86df7dcfd896fcaf2674f757a2463eba-Paper.pdf

Kabir Nagrecha 重點分析了數(shù)據(jù)收集、驗證和服務任務中的挑戰(zhàn),并探討了模型訓練中的一些問題,這是因為近年來模型訓練已經成為系統(tǒng)開發(fā)中成本越來越高昂的部分。

接下來我們進行一一分析。

數(shù)據(jù)收集

雖然學界研究者對 CIFAR 或 SQuAD 等隨時可用的數(shù)據(jù)集感到滿意,但業(yè)界從業(yè)者往往需要在模型訓練中手動標注并生成自定義數(shù)據(jù)集。但是,創(chuàng)建這類數(shù)據(jù)集,尤其是需要領域知識時,需要的成本可能非常高昂。

因此,這成為了 ML 系統(tǒng)開發(fā)者面臨的一個主要挑戰(zhàn)。

如何解決呢?該問題最成功的解決方案之一是借鑒系統(tǒng)與機器學習領域的研究。比如,通過結合數(shù)據(jù)管理技術與自監(jiān)督學習工作,斯坦福大學研究者在 2017 年的論文《 Snorkel: Rapid Training Data Creation with Weak Supervision 》中提出了一種弱監(jiān)督的數(shù)據(jù)編程方法。

他們提出的 SnorkelAI 將數(shù)據(jù)集創(chuàng)建視作一個編程問題,其中用戶可以為弱監(jiān)督標注指定函數(shù),然后通過組合和加權操作以生成高質量的標簽。這樣一來,專家標注的高質量數(shù)據(jù)和自動標注的低質量數(shù)據(jù)可以進行融合和跟蹤以確保模型訓練實現(xiàn)準確加權,從而充分考慮到不同級別的標簽質量。

連通系統(tǒng)與機器學習的 MLOps 挑戰(zhàn)在哪?這篇文章講清楚了

SnorkelAI 結合了不同來源的標簽,以允許模型大規(guī)模地聚合和改進混合質量的標簽。圖源:https://arxiv.org/pdf/1711.10160.pdf

這種方法令人聯(lián)想到數(shù)據(jù)庫管理系統(tǒng)的數(shù)據(jù)融合,將其應用到機器學習是一個支點和再設計,而不是僅僅針對 ML 的革命性創(chuàng)造。通過確認系統(tǒng)和 ML 領域的共有問題,并結合數(shù)據(jù)來源,傳統(tǒng)的系統(tǒng)技術可以應用于機器學習設置中。

數(shù)據(jù)驗證

數(shù)據(jù)驗證是數(shù)據(jù)收集的后續(xù)操作。數(shù)據(jù)質量是機器學習 pipeline 中的關鍵問題。維護者如果想要為自己的系統(tǒng)生成高質量模型,則必須保證輸入的數(shù)據(jù)也是高質量的。

調整機器學習方法并不能輕易地解決這一問題,因而需要對 ML 系統(tǒng)進行調整。幸運的是,雖然機器學習的數(shù)據(jù)驗證是一個新問題,但數(shù)據(jù)驗證不是。

引用 TensorFlow 數(shù)據(jù)驗證(TFDV)相關論文《 Data Validation for Machine Learning 》中的表述:

數(shù)據(jù)驗證既不是一個新問題,也不是機器學習獨有的,所以我們可以借鑒數(shù)據(jù)庫系統(tǒng)等相關領域中的解決方案。但是,我們認為數(shù)據(jù)驗證在機器學習場景中面臨著獨特的挑戰(zhàn),因而需要重新思考現(xiàn)有解決方案。

再一次,通過確認機器學習系統(tǒng)和傳統(tǒng)計算機系統(tǒng)之間的并行挑戰(zhàn),我們可以通過一些機器學習導向的修改來重新利用現(xiàn)有解決方案。

TFDV 的解決方案使用了數(shù)據(jù)管理系統(tǒng)中久經驗證的解決方案——schemas。一個數(shù)據(jù)庫強制執(zhí)行屬性以確保數(shù)據(jù)輸入和更新遵循指定的格式。同樣地,TFDV 的數(shù)據(jù)模式系統(tǒng)也對輸入至模型的數(shù)據(jù)強制執(zhí)行一些規(guī)則。

連通系統(tǒng)與機器學習的 MLOps 挑戰(zhàn)在哪?這篇文章講清楚了

TFDV 的用于 ML 數(shù)據(jù)驗證的模式系統(tǒng)使用戶可以避免生成系統(tǒng)中數(shù)據(jù)饋送的異?,F(xiàn)象。圖源:https://mlsys.org/Conferences/2019/doc/2019/167.pdf

當然會有一些不同的地方,反映出了機器學習系統(tǒng)與傳統(tǒng)范式的區(qū)別。ML 模式不僅需要與時俱進和實時調整以適應分布變化,而且需要考慮系統(tǒng)生命周期中模型自身可能出現(xiàn)的變化。

模型訓練

ML 從業(yè)者可能感到驚訝的是將模型訓練作為系統(tǒng)優(yōu)化的一個領域。畢竟,如果機器學習應用中有一個領域真正依賴 ML 技術,那就是訓練。但即使這樣,系統(tǒng)研究依然可以發(fā)揮作用。

以模型并行化為例,隨著 Transformer 崛起,各種應用 ML 領域在模型尺寸方面都出現(xiàn)了顯著增加。幾年前,BERT-Large 模型的參數(shù)達到了 3.45 億,現(xiàn)在 Megatron-LM 增加到了 1 萬億以上。

這些模型的內存成本已經達到了數(shù)百 GB,沒有一個 GPU 可以 hold 它們。傳統(tǒng)解決方案——模型并行化采用了一種相對簡單的方法,即在不同的設備上對模型進行劃分以分配相應的內存成本。

連通系統(tǒng)與機器學習的 MLOps 挑戰(zhàn)在哪?這篇文章講清楚了

傳統(tǒng)模型并行化受到神經網絡架構序列性的影響。高效的并行化計算機會是有限的。

但是,這種技術也存在問題,即模型本質上是連續(xù)的,并且訓練模型需要在層間前向和后向地傳遞數(shù)據(jù)。因此,每次只能使用一個層和一個設備。這種情況將導致設備利用嚴重不足。

系統(tǒng)研究如何發(fā)揮助力作用呢?

以一個深度神經網絡為例,如果將其分解為最小的組件,則它可以被視為一系列轉換數(shù)據(jù)的算子。簡單地訓練意味著這樣一個過程:通過算子傳遞數(shù)據(jù),產生梯度,再次通過算子將梯度反饋回來,最后更新算子。

在這個層次分解之后,模型開始類似于其他階段式操作,比如 CPU 的指令 pipeline。谷歌于 2019 年在論文《 GPipe: Easy Scaling with Micro-Batch Pipeline Parallelism 》中提出的 GPipe 系統(tǒng)和分布式任務處理系統(tǒng) Hydra 試圖通過這種 CPU 并行指令將系統(tǒng)優(yōu)化應用于可擴展性和并行性實現(xiàn)。

其中,GPipe 系統(tǒng)通過這種 CPU 并行指令將模型訓練轉變成了一個 pipeline 問題。模型的每個分區(qū)都被視為一個 pipe 的不同階段,并且 mini-batch 通過分區(qū)進行分級以實現(xiàn)利用效果最大化。

連通系統(tǒng)與機器學習的 MLOps 挑戰(zhàn)在哪?這篇文章講清楚了

序列模型并行化中的 SOTA——pipeline 并行化可以并行處理 mini-batch 的訓練。但是,同步開銷非常高,尤其是在前向和后向傳遞的轉換過程中。

但是請注意,反向傳播通過相反的順序復用這些階段。這意味著:在前向 pipeline 完全暢通之前,反向傳播無法啟動。即便如此,這種技術可以將模型并行訓練加速至一個很好的水平,在 8 個 GPU 時速度提升 5 倍。

Hydra 則采用了另外一種方法,它將可擴展性和并行性分割為兩個不同的步驟。數(shù)據(jù)庫管理系統(tǒng)中的一個常見概念是溢出(spilling),多余數(shù)據(jù)被發(fā)送至內存層級結構的較低層次。Hydra 充分利用模型并行中的序列計算,并觀察到不活躍的模型分區(qū)不需要在 CPU 上處理。相反,Hydra 將不需要的數(shù)據(jù)溢出至 DRAM,在 GPU 上間斷性地切換模型分區(qū),以模擬傳統(tǒng)的模型并行執(zhí)行。

連通系統(tǒng)與機器學習的 MLOps 挑戰(zhàn)在哪?這篇文章講清楚了

Hydra 的模型溢出技術將深度學習訓練的成本轉移至 DRAM 而不是 GPU 內存,同時保持了 GPU 執(zhí)行的加速優(yōu)勢。

這樣一來,一次只使用一個 GPU 就可以訓練模型。因此,在頂端引入一定程度的任務并行性很簡單。每個模型,無論它的大小如何,一次只需要一個 GPU,這樣系統(tǒng)可以充分利用每個 GPU。在 8 個 GPU 時可以實現(xiàn) 7.4 倍以上的近乎最優(yōu)加速。

但是,模型并行只是系統(tǒng)研究為模型訓練所能帶來的開始,其他有潛力的貢獻包括數(shù)據(jù)并行(如 PyTorch DDP)、模型選擇(如 Cerebro 或模型選擇管理系統(tǒng))、分布式執(zhí)行框架(Spark 或 Ray)等。模型訓練是系統(tǒng)研究優(yōu)化的成熟領域。

模型服務

歸根結底,構建機器學習模型最終是為了使用。模型服務與預測是最重要的機器學習實踐領域之一,也是系統(tǒng)研究產生最大影響的領域之一。

預測可以劃分為兩個主要設置:離線部署和在線部署:

  • 離線部署相對更加直接,它涉及到單一的、不定期運行的大批量預測工作。常見的設置包含商業(yè)智能、保險評估和醫(yī)療健康分析;
  • 在線部署屬于網絡應用,如果用戶想要自己的查詢得到快速響應,則需要快速、低延遲的預測。

離線部署和在線部署具有各自的需求和要求。通常來說,離線部署需要高通量的訓練過程以快速瀏覽大量的示例,在線部署在單一預測上需要極快的周轉時間,而不是一次進行多個預測。

系統(tǒng)研究已經重新塑造了處理離線和在線部署任務的方式。以加州大學圣地亞哥分校的研究者在論文《 Incremental and Approximate Computations for Accelerating Deep CNN Inference 》中提出的 Krypton 工具為例,它將視頻分析重新視作一項「多查詢優(yōu)化任務(multi-query optimization, MQO)」任務。

MQO 不是一個新的領域,它是數(shù)十年來關系數(shù)據(jù)庫設計的一部分??傮w思路很簡單:不同的查詢可能共享相關組件,然后可以保存和復用這些組件。Krypton 工具觀察到,CNN 推理通常是在批量相關圖像上完成,比如在視頻分析中。

一般來說,視頻是以高幀率生成,這樣一來,相鄰幀往往相對一致。幀 1 中的大部分信息依然出現(xiàn)在幀 2 中。這種情況與 MQO 明顯相同,即一系列任務之間共享信息。

Krypton 在第一幀上運行常規(guī)推理,然后具象或保存 CNN 在預測過程中產生的中間數(shù)據(jù)。隨后的圖像與第一幀進行比較以確定圖像中的哪些 patch 產生的變化足以值得重新計算。一旦確定了 patch,Krypton 通過 CNN 計算 patch 的「變化域」,以確定模型整個狀態(tài)中哪些神經元輸出發(fā)生了變化。這些神經元會根據(jù)變化的數(shù)據(jù)重新運行,其余的數(shù)據(jù)只需要從基礎幀中復用即可。

結果就是在推理負載上實現(xiàn) 4 倍以上的端到端加速,并且過期數(shù)據(jù)只有很小的準確率損失。這種運行時改進對于安全錄像視頻分析等長時間運行的流媒體應用來說至關重要。

Krypton 并不是唯一一個專注于模型推理的工具。加州大學伯克利分校的研究者在論文《 Clipper: A Low-Latency Online Prediction Serving System 》中提出的 Clipper 和 TensorFlow Extended 等其他工具利用系統(tǒng)優(yōu)化和模型管理技術提供高效和魯棒的預測,從而解決了同樣的高效預測服務問題。

責任編輯:張燕妮 來源: 機器之心Pro
相關推薦

2024-02-19 00:00:00

后管系統(tǒng)權限

2024-02-27 14:27:16

2017-11-17 08:39:40

人工智能機器學習深度學習

2019-11-25 08:25:47

ZooKeeper分布式系統(tǒng)負載均衡

2020-07-29 09:21:34

Docker集群部署隔離環(huán)境

2021-07-05 22:22:24

協(xié)議MQTT

2019-07-07 08:18:10

MySQL索引數(shù)據(jù)庫

2022-01-05 09:27:24

讀擴散寫擴散feed

2024-02-23 08:08:21

2024-04-01 10:09:23

AutowiredSpring容器

2021-04-10 10:37:04

OSITCP互聯(lián)網

2020-12-11 14:02:58

機器學習分類算法回歸算法

2018-12-11 09:09:10

分布式數(shù)據(jù)庫事務

2024-07-01 13:45:18

2020-11-10 16:00:55

機器學習人工智能AI

2020-12-24 15:18:27

大數(shù)據(jù)數(shù)據(jù)分析

2021-10-29 11:30:31

補碼二進制反碼

2023-08-14 11:35:16

流程式轉化率數(shù)據(jù)指標

2019-06-20 17:49:51

RPCHTTP協(xié)議

2021-05-20 11:23:04

人工智能機器學習技術
點贊
收藏

51CTO技術棧公眾號