本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 AWS Clean Rooms ML 中使用增量訓練
事前準備:
-
AWS 帳戶 可存取 的 AWS Clean Rooms
-
協作中的現有訓練模型
-
用於增量訓練的新資料集或更新的資料集
-
在協同合作中建立和管理 ML 模型的適當許可
-
熟悉現有模型的超參數和組態
透過增量訓練,您可以使用現有模型的成品和更新的資料集來訓練新模型。增量訓練可節省時間和資源。
使用增量訓練時,可執行下列作業:
-
使用已擴展的資料集來訓練新模型,該資料集具有先前訓練中未說明的基礎模式。
-
使用不同的超參數或使用不同的資料集來訓練模型的數個變體。
- Console
-
執行增量訓練任務 (主控台)
-
登入 AWS Management Console ,並在 https://https://console.aws.amazon.com/cleanrooms
開啟 AWS Clean Rooms 主控台。 -
在左側導覽窗格中,選擇協同合作。
-
在協同合作頁面上,選擇您要用於增量訓練的模型成品存在的協同合作。
-
協同合作開啟後,選擇 ML 模型索引標籤。
-
在自訂 ML 模型下,在已訓練模型區段中,選擇您要增量訓練之已訓練模型旁的選項按鈕。
-
在概觀頁面的版本下,
-
選擇您要增量訓練之訓練模型旁的選項按鈕。
-
從版本中選擇訓練。
-
-
在從版本建立訓練模型頁面上,針對訓練模型版本,選擇版本。
會自動選取基礎模型版本。如果存在其他版本,您可以變更此版本。
-
如需訓練模型的詳細資訊,請輸入下列內容:
-
在名稱中,輸入協同合作中模型的唯一名稱。
-
(選用) 針對描述,輸入訓練模型的描述。
-
針對訓練資料輸入模式,選擇下列其中一項:
-
如果您有可以容納在 ML 儲存磁碟區的較小資料集,而且您偏好訓練指令碼的傳統檔案系統存取,請選取檔案。
-
選取管道讓大型資料集直接從 S3 串流資料,避免將所有資料下載到磁碟,從而提高訓練速度並減少儲存需求。
-
如果您想要將 S3 串流的優點與檔案系統存取結合,請選取 FastFile,尤其是循序讀取資料或處理較少的檔案以加快啟動時間時。
-
-
針對增量訓練頻道名稱,輸入增量訓練頻道的名稱
注意
如果您指定沒有版本 ID 的增量訓練頻道名稱,系統會使用基本模型進行增量訓練。
-
-
對於 ML 輸入通道詳細資訊,請執行下列動作:
-
針對 ML 輸入通道,指定將資料提供給模型演算法的 ML 輸入通道。
若要新增另一個頻道,請選擇新增另一個 ML 輸入頻道。您最多可以新增 19 個額外的 ML 輸入通道。
-
針對頻道名稱,輸入 ML 輸入頻道的名稱。
-
針對 Amazon S3 資料分佈類型,選擇下列其中一項:
-
選取完整複寫,為每個訓練執行個體提供完整的資料集副本。當您的資料集夠小而足以容納在記憶體中,或每個執行個體都需要存取所有資料時,這最適合使用。
-
選取依 S3 金鑰分割,根據 S3 金鑰跨訓練執行個體分割資料集。每個執行個體會收到 S3 物件總數的大約 1/n,其中 'n' 是執行個體的數量。這最適合您要平行處理的大型資料集。
注意
選取分佈類型時,請考慮您的資料集大小和訓練需求。完全複寫可提供完整的資料存取,但需要更多儲存空間,而由 S3 金鑰碎片可分散式處理大型資料集。
-
-
-
針對訓練持續時間上限,選擇您想要訓練模型的時間上限。
-
針對超參數,指定任何演算法特定的參數及其預期值。超參數專屬於要訓練的模型,並用於微調模型訓練。
-
針對環境變數,指定任何演算法特定的變數及其預期值。環境變數是在 Docker 容器中設定。
-
針對加密,若要使用自訂 AWS KMS key,請選取使用自訂 KMS 金鑰加密秘密核取方塊。
-
針對 EC2 資源組態,指定用於模型訓練之運算資源的相關資訊。
-
針對執行個體類型,選擇您要執行的執行個體類型。
-
針對執行個體計數,輸入執行個體的數量。
-
對於以 GB 為單位的磁碟區大小,輸入 ML 儲存磁碟區大小。
-
-
選擇從版本建立訓練過的模型。
-
- API
-
執行增量訓練任務 (API)
使用特定參數執行下列程式碼:
import boto3 acr_ml_client= boto3.client('cleanroomsml') acr_ml_client.create_trained_model( membershipIdentifier= '
membership_id
', configuredModelAlgorithmAssociationArn = 'arn:aws:cleanrooms-ml:region:account:membership
/membershipIdentifier/configured-model-algorithm-association/identifier
', name='trained_model_name
', resourceConfig={ 'instanceType': 'ml.m5.xlarge', 'volumeSizeInGB': 1 }, incrementalTrainingDataChannels=[ { 'trainedModelArn': trained_model_arn, 'channelName': 'channel_name
' }, ] dataChannels=[ { 'mlInputChannelArn': channel_arn_1, 'channelName': 'channel_name
' }, { 'mlInputChannelArn': channel_arn_2, 'channelName': 'channel_name
' } ] )注意
限制:總計最多 20 個頻道 (包括
dataChannels
和incrementalTrainingDataChannels
)。
注意
建立訓練模型後,您無法編輯模型。若要進行變更,請刪除訓練過的模型並建立新的模型。