色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何優化數據實現機器學習高數據吞吐量

要長高 ? 來源:InfoWorld ? 作者:Bin Fan ? 2022-04-25 17:24 ? 次閱讀

譯者 | 李睿

作者:Bin Fan, InfoWorld

機器學習工作負載需要高效的基礎設施來快速產生結果,而模型訓練非常依賴大型數據集。在所有機器學習工作流程中,第一步是將這些數據從存儲集中到訓練集群,而這也會對模型訓練效率產生顯著影響。

長期以來,數據和人工智能平臺工程師一直在考慮以下問題來管理數據:

數據可訪問性:當數據跨越多個來源并且數據被遠程存儲時,如何使訓練數據可訪問?

數據管道:如何將數據作為一條管道進行管理,無需等待即可將數據持續輸入到訓練工作流程中?

性能和GPU利用率:如何同時實現低元數據延遲和高數據吞吐量以保持GPU不會空閑?

本文將討論一種新的解決方案,它將用來協調端到端機器學習管道中的數據以解決上述問題。本文將概述常見的挑戰和陷阱,并推出編排數據這種新技術,以優化機器學習的數據管道。

模型訓練中常見數據挑戰

端到端機器學習管道是從數據預處理、清理、模型訓練再到推理的一系列步驟,其中模型訓練是整個工作流程中最關鍵和最耗費資源的部分。

下圖是一個典型的機器學習管道。它從數據收集開始,然后是數據準備,最后是模型訓練。在數據收集階段,數據平臺工程師通常需要花費大量時間讓數據工程師可以訪問數據,數據工程師則需要為數據科學家準備數據以構建和迭代模型。

訓練階段需要處理大量數據,以確保將數據持續提供給生成模型的GPU。你必須對數據予以管理,以支持機器學習及其可執行架構的復雜性。在數據管道中,每個步驟都會面臨相應的技術挑戰。

(1)數據收集挑戰——數據無處不在

機器學習訓練需要采用大型數據集,因此從所有相關來源收集數據至關重要。當數據駐留在數據湖、數據倉庫和對象存儲中時,(無論是在內部部署、在云中還是分布在多個地理位置)將所有數據組合到一個單一的源中不再可行。對于數據孤島,通過網絡進行遠程訪問不可避免地會導致延遲。因此如何在保持所需性能的同時使數據可訪問是一項重大挑戰。

(2)數據準備挑戰——序列化數據準備

數據準備從采集階段的數據開始,包括清理、ETL和轉換,然后交付數據以訓練模型。如果沒有對這個階段全面考慮,那么數據管道是序列化的,且在等待為訓練集群準備的數據時會浪費額外的時間。因此,平臺工程師必須弄清楚如何創建并行化的數據管道,并實現高效的數據共享和中間結果的高效存儲。

(3)模型訓練挑戰——I/O與GPU未充分利用

模型訓練需要處理數百TB的數據,這些數據通常是大量的小文件,例如圖像和音頻文件等等。訓練涉及需要多次epoch的迭代,從而頻繁訪問數據。通過不斷地向GPU提供數據來保持其忙碌是有必要的,同時優化I/O并保持GPU所需的吞吐量也非易事。

傳統方法和常見陷阱

在討論不同的解決方案之前,先設定一個簡化的場景,如下圖所示。這里使用一個GPU集群在云中訓練,該集群具有多個運行TensorFlow作為機器學習框架的節點。預處理數據存儲在Amazon S3中。通常,有兩種方法可以將此數據傳輸到訓練集群,下文將予以討論。

方法一:在本地存儲中復制數據

在第一種方法中,整個數據集從遠程存儲復制到每個服務器的本地存儲進行訓練,如下圖所示。因此,數據局部性得到保證,訓練作業從本地讀取輸入,而不是從遠程存儲中檢索。

從數據管道和I/O的角度來看,這種方法提供了最高的I/O吞吐量,因為所有數據都是本地的。除了開始階段,GPU將保持忙碌,因為訓練必須等待數據從對象存儲完全復制到訓練集群。

但這種方法并不適用于所有情況。

首先,數據集必須適合聚合本地存儲。隨著輸入數據集大小的增長,數據復制過程變得更長且更容易出錯,從而浪費更多時間和GPU資源。

其次,將大量數據復制到每臺訓練機上會對存儲系統和網絡造成巨大壓力。在輸入數據經常變化的情況下,數據同步可能非常復雜。

最后,因為要使云存儲上的數據與訓練數據保持同步,人工復制數據既費時又容易出錯。

方法二:直接訪問云存儲

另一種常見的方法是將訓練與遠程存儲上的目標數據集直接連接起來,如下圖所示。這種方法與之前的解決方案一樣,數據集的大小不是問題,但也面臨著一些新的挑戰。

首先,從I/O和管道的角度來看,數據是串行處理的。所有的數據訪問操作都必須經過對象存儲和訓練集群之間的網絡,使得I/O成為瓶頸。因此,由于I/O吞吐量受到網絡限制,GPU會等待并會浪費時間。

其次,當訓練規模較大時,所有訓練節點同時從同一個遠程存儲訪問同一個數據集,給存儲系統增加了巨大的壓力。由于高并發訪問,存儲可能會變得擁擠,從而導致GPU利用率低。

第三,如果數據集包含大量的小文件,元數據訪問請求將占數據請求的很大一部分。因此,直接從對象存儲中獲取大量文件或目錄的元數據成為性能瓶頸,并增加了元數據的操作成本。

推薦的方法——編排數據

為了應對這些挑戰和陷阱,在處理機器學習管道中的I/O時,需要重新考慮數據平臺架構。在這里推薦一種加速端到端機器學習管道的新方法:數據編排。數據編排技術將跨存儲系統的數據訪問抽象化,同時將所有數據虛擬化,并通過標準化API和全局命名空間將數據呈現給數據驅動的應用程序。

(1)使用抽象統一數據孤島

與其復制和移動數據,留在原處也不失為上策,無論是在本地還是在云中。數據編排可以幫助抽象數據以創建統一的視圖。這將顯著降低數據收集階段的復雜性。

由于數據編排已經可以與存儲系統集成,機器學習框架只需要與單個數據編排平臺交互即可訪問來自任何連接存儲的數據。因此,來自任何來源的數據都可以用來訓練,從而提高模型質量。同時,無需人工數據移動到中央源。包括Spark、Presto、PyTorch和TensorFlow在內的所有計算框架都可以訪問數據,而無需擔心數據的位置。

(2)在數據本地性方面使用分布式緩存

建議不要將整個數據集復制到每臺機器上,而是實施分布式緩存,其中數據可以均勻分布在集群中。當訓練數據集遠大于單個節點的存儲容量時,分布式緩存尤其有利。當數據是來自遠程時,因為數據是在本地緩存的,它也可以提供助益。因為在訪問數據時沒有網絡I/O,機器學習訓練會變得更快且更具成本效益。

上圖顯示了存儲所有訓練數據的對象存儲,以及表示數據集的兩個文件(/path1/file1和/path2/file2)。與其將所有文件塊存儲在每臺訓練機器上,不如將塊分布在多臺機器上。為了防止數據丟失和提高讀取并發性,每個塊可以同時存儲在多個服務器上。

(3)優化跨管道的數據共享

在機器學習(ML)訓練作業中,作業內部和作業之間執行的數據讀取和寫入之間存在高度重疊。數據共享可以確保所有計算框架都可以訪問先前緩存的數據,用于下一步的讀寫工作負載。例如,如果在數據準備步驟中使用Spark 進行ETL,數據共享可以確保輸出數據被緩存并可供下一階段使用。通過數據共享,整個數據管道獲得了更好的端到端性能。

(4)通過并行化數據預加載、緩存和訓練來編排數據管道

可以通過執行預加載和按需緩存來編排數據管道。如下圖顯示,使用數據緩存從源加載數據可以與實際訓練任務并行完成。因此,在訪問數據時,訓練受益于高數據吞吐量,而無需在訓練前等待緩存完整數據。

雖然一開始會有一些I/O延遲,但因為數據已經加載到緩存中,等待時間會有所減少。這種方法可以減少重復步驟,從對象存儲到訓練集群的數據加載、緩存、訓練要求的數據加載以及訓練都可以并行完成,從而大大加快整個過程。

通過跨機器學習管道的步驟編排數據,可消除數據從一個階段流向下一個階段時串行執行和相關的低效問題,同時也將具有較高的GPU利用率。下表將對這種新方法與兩種傳統方法進行比較:

如何為機器學習工作負載編排數據

這里以Alluxio為例,展示如何使用數據編排。同樣,我們還將使用上面提到的簡化場景。為了安排TensorFlow作業,可使用Kubernetes或公共云服務。

使用Alluxio編排機器學習和深度學習訓練通常包括三個步驟:

(1)在訓練集群上部署Alluxio。

(2)掛載Alluxio作為本地文件夾來訓練作業。

(3)使用訓練腳本從本地文件夾(由Alluxio支持)加載數據。

不同存儲系統中的數據可以在掛載后通過Alluxio立即訪問,并且可以通過基準腳本透明訪問,無需修改TensorFlow。這顯著簡化了應用程序開發過程,不然就需要集成每個特定的存儲系統以及憑證的配置。

可參照這里的方法使用Alluxio和TensorFlow運行圖像識別。

數據編排優秀實踐

因為沒有一勞永逸的方法,所以數據編排最好在以下場景中使用:

需要分布式訓練。

有大量的訓練數據(10TB或更多),尤其是在訓練數據中有很多小文件和圖像的情況下。

GPU資源沒有被網絡I/O充分占用。

管道使用許多數據源和多個訓練/計算框架。

當處理額外的訓練請求時,底層存儲需要穩定。

多個訓練節點或任務使用相同的數據集。

隨著機器學習技術的不斷發展,框架執行更復雜的任務,管理數據管道的方法也將不斷改進。通過將數據編排擴展到數據管道,端到端訓練管道的效率和資源利用率都可以得到提高。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 人工智能
    +關注

    關注

    1791

    文章

    47208

    瀏覽量

    238291
  • 機器學習
    +關注

    關注

    66

    文章

    8408

    瀏覽量

    132575
收藏 人收藏

    評論

    相關推薦

    網卡吞吐量測試解決方案

    隨著互聯網的迅速發展,計算機日益成為人們生活中不可或缺的部分。伴隨著網絡業務的豐富,用戶對計算機網卡的要求也越來也。如何對計算機網卡吞吐量進行合理的測試,已越來越成為眾多計算機網卡生產廠家日益關注
    發表于 12-23 11:07

    優化FPGA利用率和自動測試設備數據吞吐量參考設計

    也大大降低。主要特色兩個 20 位 SAR ADC 通道(最多可擴展至 28 個)三級 MUX 樹(每個 ADC 最多 64 個通道)利用串行 ADC 輸出數據突出顯示吞吐量提升情況適用于可重復的通道數系統的模塊化前端參考設計
    發表于 10-29 09:47

    淺析敏捷吞吐量衛星通訊載荷

    對帶寬日益增加的需求大大提高了對數據網絡敏捷系統的要求。衛星通訊也在經歷著變革性的發展。由新的超寬帶(UWB)數據轉換器支持的創新架構,極大地提高了其經濟效益和數據吞吐量。
    發表于 07-23 08:47

    如何通過UBFS獲得流式ADC數據的最高吞吐量

    )。似乎從ADC最終緩沖器中檢索值不能很快發生——當獲取數據被注釋時,USB總線上的吞吐量上升到800 kb/s。2?;贒MA——在這種情況下,我試圖通過設置EOC信號的DMA傳輸觸發來規避數據獲取
    發表于 10-11 10:46

    提高BLE吞吐量的可行辦法

    提高BLE吞吐量的可行辦法如何實現更快的BLE吞吐量
    發表于 01-18 06:26

    FF H1基于RDA的吞吐量優化算法

    為了進一步提高FF H1異步通信吞吐量,本文在原有優化算法[1]的基礎上,提出了基于異步窗口碎片合理分布的RDA吞吐量優化算法,并通過具體實例說明了該
    發表于 09-03 09:17 ?9次下載

    防火墻術語-吞吐量

    防火墻術語-吞吐量  術語名稱:吞吐量 術語解釋:網絡中的數據是由一個個數據包組成,防火
    發表于 02-24 11:06 ?1537次閱讀

    DM6467的吞吐量性能信息和系統芯片(SoC)架構的詳細概述

    本應用報告提供了關于DM6467的吞吐量性能信息并介紹了片上系統(SoC)DM6467架構,數據路徑基礎設施和影響吞吐量和不同優化的約束條件最佳系統性能的技術。該文件還提供信息關于SO
    發表于 04-18 14:49 ?11次下載
    DM6467的<b class='flag-5'>吞吐量</b>性能信息和系統芯片(SoC)架構的詳細概述

    AD7739:8通道、吞吐量、24位Sigma-Delta ADC數據

    AD7739:8通道、吞吐量、24位Sigma-Delta ADC數據
    發表于 04-17 12:59 ?2次下載
    AD7739:8通道、<b class='flag-5'>高</b><b class='flag-5'>吞吐量</b>、24位Sigma-Delta ADC<b class='flag-5'>數據</b>表

    AD7731:低噪聲、吞吐量24位Sigma-Delta ADC數據

    AD7731:低噪聲、吞吐量24位Sigma-Delta ADC數據
    發表于 04-29 08:26 ?4次下載
    AD7731:低噪聲、<b class='flag-5'>高</b><b class='flag-5'>吞吐量</b>24位Sigma-Delta ADC<b class='flag-5'>數據</b>表

    SAR ADC是如何實現更高數據吞吐量

    當需要SAR ADC的響應時間為1μs時 (tRESP-ADC = 1μs),很多工程師會尋找數據吞吐量為1Msps (tTHROUGHPUT = 1us) 的SAR ADC。事實上,這兩個參數是不一樣的。為了說明他們之間的差異,我們來看看下面的類比:
    的頭像 發表于 02-06 09:07 ?1793次閱讀

    設計人員如何實現 Wi-Fi 三頻段千兆網速和吞吐量

    設計人員如何實現 Wi-Fi 三頻段千兆網速和吞吐量
    的頭像 發表于 12-26 10:16 ?739次閱讀
    設計人員如何<b class='flag-5'>實現</b> Wi-Fi 三頻段千兆網速和<b class='flag-5'>高</b><b class='flag-5'>吞吐量</b>

    GTC 2023主題直播:吞吐量可提高25%的Grace服務器

    數據中心管理員負責對整個數據中心的吞吐量和TCO進行優化為了在云數據中心規模下實現高能效我們設計
    的頭像 發表于 03-22 11:12 ?1494次閱讀
    GTC 2023主題直播:<b class='flag-5'>吞吐量</b>可提高25%的Grace服務器

    iperf吞吐量的測試流程

    iperf吞吐量測試指南
    發表于 04-03 15:40 ?2次下載

    TMS320VC5510 HPI吞吐量優化

    電子發燒友網站提供《TMS320VC5510 HPI吞吐量優化.pdf》資料免費下載
    發表于 10-16 09:35 ?0次下載
    TMS320VC5510 HPI<b class='flag-5'>吞吐量</b>和<b class='flag-5'>優化</b>
    主站蜘蛛池模板: 伊人成综合网伊人222| 狠狠插综合| 成人在线免费观看| 姑娘视频日本在线播放| 2020精品极品国产色在线| 91久久精一区二区三区大全| 99久久香蕉国产线看观看| 操中国老太太| 国产欧美国产综合第一区| 精品一区二区三区在线成人| 美女丝袜夹b| 色欲精品国产AV久久久| 亚洲an天堂an在线观看| 一级毛片在线免费视频| japansemature护士| 国产-第1页-浮力影院| 久久re视频这里精品09免费| 欧美成 人 网 站 免费| 先锋资源久久| 自拍区偷拍亚洲视频| 成人免费在线观看视频| 花蝴蝶高清观看免费| 欧美亚洲另类图片| 亚洲AV电影天堂男人的天堂| 18禁无遮挡羞羞污污污污免费| 丰满饥渴老太性hd| 粗壮挺进邻居人妻无码| 黄色片中文| 欧美牲交A欧美牲交| 亚洲精品123区| 99久久精品国产国产毛片| 国产系列视频二区| 暖暖 视频 在线 观看 高清| 亚洲 综合 欧美在线视频| 99热这里只有精品8| 欧美精品乱码99久久蜜桃| 亚洲 天堂 国产在线播放| 99久久国产综合精品网成人影院 | 夜夜骑夜夜欢| 成人18视频在线| 久久AV亚洲精品一区无码网|