比較 Vertex AI 自訂訓練和 Ray on Vertex AI
Vertex AI 提供兩種自訂訓練選項:Vertex AI 自訂訓練和 Ray on Vertex AI。本頁面提供相關背景資訊,協助您選擇這兩個選項。
Vertex AI 訓練 | Ray on Vertex AI | |
---|---|---|
Focus | 一般用途的自訂模型訓練。 | 擴充 AI 和 Python 應用程式,包括模型訓練、分散式應用程式和模型服務。 |
基礎架構 | 支援各種機器學習架構,例如 TensorFlow、PyTorch、scikit-learn。 | 採用開放原始碼 Ray 架構。支援各種架構:TensorFlow、PyTorch、scikit-learn 和 Spark on Ray (使用 RayDP)。 |
工作彈性 | 程式碼和環境的彈性極高。 | 建構分散式應用程式時具有高度彈性,只需稍做變更,即可使用現有的 Ray 程式碼。 |
擴充性 | 支援跨多台機器的分散式訓練。提供可調度的運算資源 (CPU、GPU、TPU)。 | 專為高擴充性而設計,可運用 Ray 的分散式運算功能 (最多 2,000 個節點)。支援手動和自動調度資源。 |
整合 | 與其他 Vertex AI 服務整合 (Datasets、Vertex AI Experiments 等)。 | 可與 Vertex AI Inference 和 BigQuery 等其他 Google Cloud 服務整合。 |
易用性 | 更容易用於標準分散式訓練典範。 | 需要熟悉 Ray 架構概念。 |
環境 | 代管環境,可使用預先建構或自訂容器執行自訂訓練程式碼。 | 代管環境,可使用 Ray 架構執行分散式應用程式,簡化 Vertex AI 上的 Ray 叢集管理作業。 |
超參數調整 | 內含超參數調整功能。 | 提供有效率的最佳化和實驗管理工具,簡化超參數調整作業。 |
訓練管線 | 支援多步驟的複雜機器學習工作流程。 | 不適用。 |
Vertex AI 自訂訓練與 Ray on Vertex AI 的主要差異
Vertex AI 自訂訓練是管理各種訓練方法的廣泛服務,而 Vertex AI 上的 Ray 則專門使用 Ray 分散式運算架構。
Vertex AI 訓練 | Ray on Vertex AI | |
---|---|---|
Focus | 主要著重於模型開發和訓練。管理各種訓練方法。 | 專為一般用途的分散式 Python 應用程式設計,包括資料處理、模型服務和訓練擴充。 |
基礎架構 | 與特定機器學習架構 (例如 TensorFlow、PyTorch) 的分散式功能相關。 | 使用 Ray 做為中央分散式運算架構。無論 Ray 工作中使用的基礎 ML 架構為何,都會處理工作分配。 |
資源設定 | 設定個別訓練工作的資源。 | 在 Vertex AI 叢集上管理 Ray 叢集;Ray 會處理叢集內的工作分配。 |
發布設定 | 為特定訓練工作設定副本數量和類型。 | 在 Vertex AI 上設定 Ray 叢集的大小和組成;Ray 的排程器會在可用節點之間動態分配工作和參與者。 |
發布範圍 | 通常著重於單一訓練工作,且可能需要長時間執行。 | 提供更持久的通用分散式運算環境,您可以在 Ray 叢集的生命週期內執行多個分散式工作和應用程式。 |
摘要
如要在 Google Cloud 環境中使用 Ray 架構的分布式運算功能,請使用 Vertex AI 上的 Ray 服務。Ray on Vertex AI 可視為大型 Vertex AI 生態系統中的特定工具,特別適合高度可擴充的分散式工作負載。
如果您需要更通用的代管平台,以處理各種模型訓練方法 (包括自動化選項、自訂程式碼執行和超參數調整),更廣泛的 Vertex AI 自訂訓練服務會很有幫助。