設計工具
應用程式

AI 和機器學習需要高效能儲存裝置:第二部分

Micron Technology | 2019 年 3 月

人工智慧和機器學習需要高效能儲存裝置系列,第二部分:訓練

在人工智慧和機器學習系列的上一篇部落格中,我向您介紹了什麼是 AI 和 ML,並對 AI 系統如何轉換和使用資料以建立「智慧」回應進行了高層次的流程概述。在那篇部落格中,我們解釋了如何從多個不同來源攝取大量資料,然後轉換為可用格式,以用於 AI 流程的下一步:訓練。

這是我們今天第二部分要討論的主題。提醒一下,下圖代表典型的 AI 工作流程,它由四個主要部分組成:攝取、轉換、訓練和執行。在上一篇部落格中,我們介紹了攝取和轉換過程,這兩個過程準備 AI 訓練流程使用的資料,因此它們通常同時進行。

AI 訓練 1

訓練步驟通常是整個流程中資源高度密集的部分,但正如我們將在未來的部落格文章中看到的,推理可能需要更多的資源。在這一階段,需要使用非常強大的硬體,通常是具有大量高速記憶體的圖像處理器(GPU)。工作流程的訓練階段包括一系列重複步驟,對攝取的資料執行一系列數學函式,旨在以較高的機率識別所需的回應/結果。然後對結果的準確率進行評估。如果準確率未達到要求(通常要求 95% 以上),則對數學函式進行修改,然後對相同的資料集再次進行更新。

AI 訓練 3

典型的 AI 用例是簡單的影像識別。在本例中,影像識別的最佳模型和測試資料集是稱為 ImageNet 的數據集和一組稱為 ResNet 的函式。ImageNet 的訓練資料集有 120 萬張影像,大約需要 145GB 的資料儲存空間,其他方面我就不細說了。ResNet 的複雜程度各不相同,但常用的是 ResNet-50(還有 ResNet-101 和-152)。數字代表使用了多少「層」由不同數學函式組成的神經網路,這些函式被稱為「神經元」(也代表 AI 模型的複雜程度)。

那麼,這一切與美光極為關注的儲存裝置和記憶體討論有什麼關係嗎? 訓練過程和之前的攝取/轉換階段一樣,是一個耗時而複雜的過程。但與攝取/轉換階段不同的是,訓練階段依賴於高效能運算來執行數學函式

我們在測試中發現,解決方案可用的快速儲存裝置和記憶體容量直接影響完成給定訓練循環所需的時間。我們完成每個訓練循環(稱為週期)的速度越快,所能執行的週期就越多,並且能夠在保持相對較短訓練時間的同時使我們的 AI 系統更加精確。因此,雖然我們可以使用 HDD 來儲存訓練資料,但旋轉介質的速度實在太慢。GPU 無法以足夠快的速度獲取資料,因此無法及時完成訓練。SSD 通常比 HDD 快幾個數量級(就 IOPS 和延遲而言)。因此,如果我們能更快地為訓練系統提供資料,我們就能更快地完成工作,這似乎符合邏輯。

此外,如果我們能增加每個週期的資料量(我們稱之為「批次」),那麼我們就能以更快的速度執行每個週期以獲得相同的結果。因此,系統記憶體越大越好。不過,雖然我們可以一勞永逸地在伺服器中安裝 2TB 或更多的 DRAM,但這樣做的成本非常高昂。大多數企業會不斷平衡成本和效率。根據測試,我們認為專注於速度更快的儲存裝置(SSD)會取得更好的效果,而且性價比更高。按位元組計算,SSD 的成本低於 DRAM。

美光 AI 工程師 Wes Vaske 進行的一些測試證明了這一點。他在部落格最近與 Forrester 舉辦的網路研討會更詳細地說明了他的測試,測試的一些結果說明了儲存裝置和記憶體的快慢對 AI 訓練過程的影響。Wes 的測試和圖表清楚地表明,快速儲存裝置對整體效能的影響不亞於簡單地增加記憶體。透過觀察兩個「低記憶體」值,比較「快磁碟/低記憶體」條(第 3 條)和「慢磁碟/高記憶體」條(第 2 條),就能說明這一點。在這個範例中,購買更快的儲存裝置、額外的記憶體,或兩者,會對整體效能產生巨大影響。如何在這兩種資源之間找到合適的平衡點,取決於您要執行的資料集和模型。

AI 訓練 2

過去的測試表明,AI 訓練直接受到運算資源的影響——例如增加 GPU,但本次測試證明,記憶體和儲存裝置資源會對 AI 效能產生直接影響,即使採用相同的 CPU/GPU 組合亦是如此。美光具有獨特的優勢,可幫助您在 AI 領域取得成功。雖然我們無法圍繞您的特定 AI 建模需求考慮所有變數,但我們使用 ResNet-50 進行的測試很好地說明了儲存裝置和記憶體對 AI 工作負載的重要性。我建議您詳細閱讀 Wes 的部落格以獲取更多資訊。

請瀏覽 Micron.com/AI

Linkedin 上與我們聯絡,瞭解最新資訊。