OSS Connector for AI/ML是一個用於在PyTorch訓練任務中高效訪問和儲存OSS資料的Python庫。
功能優勢
對比項 | 不使用OSS Connector for AI/ML | 使用OSS Connector for AI/ML |
效能 | 手動最佳化效能,效率可能低下 | 自動最佳化OSS資料下載及檢查點儲存效能 |
資料載入方式 | 需提前下載資料,增加成本和管理負擔 | 支援流式載入,降低成本和管理複雜度 |
資料訪問 | 通過轉接器讀寫,增加複雜度 | 直接從OSS讀寫,簡化流程 |
配置難度 | 需編寫複雜代碼管理,配置困難 | 提供簡單配置,提高開發效率 |
工作原理
通過OSS Connector for AI/ML使用OSS中的資料進行PyTorch訓練的過程如下圖所示:
功能特性
OSS Connector for AI/ML主要功能如下表所示:
功能點 | 特性 | 關聯類別 | 方法 |
映射式資料集 | 適合隨機訪問,方便在訓練過程中快速擷取特定資料。 | OssMapDataset與OssIterableDataset所提供方法相同,如下所示:
| |
可迭代式資料集 | 適合流式順序訪問,能夠高效地處理大量連續的資料流。 | ||
檢查點介面 | 在模型訓練時從OSS中載入檢查點,並且在周期性模型訓練結束後可以直接將檢查點儲存至OSS。簡化了工作流程。 |
|
使用流程
在PyTorch訓練任務中訪問和儲存OSS中的資料之前,您需要安裝並配置OSS Connector for AI/ML。具體操作,請參見安裝OSS Connector for AI/ML和配置OSS Connector for AI/ML。
安裝並配置OSS Connector for AI/ML後,您可以在Pytorch訓練任務中:
使用OssMapDataset構建適用於隨機讀取操作的映射式資料集。具體操作,請參見使用OSS中的資料構建適用於隨機讀取的映射式資料集。
使用OssIterableDataset構建適用於流式順序訪問的可迭代式資料集。具體操作,請參見使用OSS中的資料構建適用於流式順序讀取的迭代式資料集。
使用OssCheckpoint儲存和訪問檢查點。具體操作,請參見在OSS中儲存和訪問檢查點。
- 說明
OssMapDataset、OssIterableDataset、OssCheckpoint中的資料具有相同的類型,如需瞭解支援的屬性和方法,請參見OSS Connector for AI/ML中的資料類型。
實踐教程
如果您想快速學習如何在PyTorch中使用OSS資料進行模型訓練,並將訓練結果儲存至OSS,我們為您提供了一個使用OSS Connector for AI/ML完成手寫數字識別模型訓練的Demo。詳情請參見OSS Connector for AI/ML快速入門。
如果您需要進一步提升OSS Connector for AI/ML的效能,建議您使用OSS加速器網域名稱而不是預設的OSS內網網域名稱。關於使用OSS內網網域名稱與OSS加速器網域名稱之間的OSS Connector for AI/ML效能對比,請參見效能測試。
如果您要在容器環境中使用OSS Connector for AI/ML,您可以使用含有OSS Connector for AI/ML的Docker鏡像。如何構建鏡像,請參見構建含有OSS Connector for AI/ML環境的Docker鏡像。