資料重新安排 - Amazon Machine Learning

我們不再更新 Amazon Machine Learning 服務或接受新使用者。本文件適用於現有使用者,但我們不再對其進行更新。如需詳細資訊,請參閱什麼是 Amazon Machine Learning

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

資料重新安排

資料重新安排功能可讓您建立只根據所指向輸入資料一部分的資料來源。例如,當您使用建立 ML 模型嚮導,並選擇預設評估選項,則 Amazon ML 會自動保留 30% 的資料來進行 ML 模型評估,並使用其他 70% 來進行培訓。Amazon ML 的資料重新安排功能會啟用此功能。

如果您要使用 Amazon ML API 來建立資料來源,則可以指定新資料來源將根據的輸入資料部分。做法是將 DataRearrangement 參數中的指示傳遞給 CreateDataSourceFromS3CreateDataSourceFromRedshiftCreateDataSourceFromRDS API。DataRearrangement 字串的內容是包含資料開始和結束位置的 JSON 字串 (以百分比表示)、補充旗標和分割策略。例如,下列 DataRearrangement 字串指定資料的前 70% 將用來建立資料來源:

{ "splitting": { "percentBegin": 0, "percentEnd": 70, "complement": false, "strategy": "sequential" } }

DataRearrangement 參數

若要變更 Amazon ML 如何建立資料來源,請使用下列參數。

PercentBegin (選用)

使用 percentBegin 指出資料來源的資料開始位置。如果您不包含percentBeginpercentEnd,則 Amazon ML 會在建立資料來源時包含所有資料。

有效值為 0100 (含)。

PercentEnd (選用)

使用 percentEnd 指出資料來源的資料結束位置。如果您不包含percentBeginpercentEnd,則 Amazon ML 會在建立資料來源時包含所有資料。

有效值為 0100 (含)。

Complement (選用)

所以此complement參數會告訴 Amazon ML 使用未納入到percentBeginpercentEnd創建數據源。如果您需要建立補充資料來源來進行培訓和評估,則 complement 參數十分有用。若要建立補充資料來源,請使用相同的 percentBeginpercentEnd 值,以及 complement 參數。

例如,下列兩個資料來源不共用任何資料,而且可以用來培訓和評估模型。第一個資料來源有 25% 的資料,而第二個資料來源有 75% 的資料。

評估的資料來源:

{ "splitting":{ "percentBegin":0, "percentEnd":25 } }

培訓的資料來源:

{ "splitting":{ "percentBegin":0, "percentEnd":25, "complement":"true" } }

有效值為 truefalse

Strategy (選用)

若要變更 Amazon ML 如何分割資料來源的資料,請使用strategy參數。

預設值為strategy參數為sequential,這意味着 Amazon ML 將percentBeginpercentEnd參數,按記錄出現在輸入資料中的順序列。

下列兩行 DataRearrangement 是循序排序培訓和評估資料來源範例:

評估的資料來源:{"splitting":{"percentBegin":70, "percentEnd":100, "strategy":"sequential"}}

培訓的資料來源:{"splitting":{"percentBegin":70, "percentEnd":100, "strategy":"sequential", "complement":"true"}}

若要透過隨機選取資料來建立資料來源,請將 strategy 參數設定為 random,並提供一個字串,用作進行隨機資料分割的種子值 (例如,您可以使用資料的 S3 路徑作為隨機種子字串)。如果您選擇隨機分割策略,則 Amazon ML 會將虛擬亂數指派給每個資料列,接著選取與之間具有所指派數字的資料列。percentBeginpercentEnd。虛擬亂數是使用位元組位移作為種子進行指派,因此變更資料會導致不同的分割。保留任何現有排序。隨機分割策略確保以類似的方式分佈培訓和評估資料中的變數。它適用於輸入資料可能有隱含排序順序時,這可能會導致包含非類似資料記錄的培訓和評估資料來源。

下列兩行 DataRearrangement 是非循序排序培訓和評估資料來源範例:

評估的資料來源:

{ "splitting":{ "percentBegin":70, "percentEnd":100, "strategy":"random", "strategyParams": { "randomSeed":"RANDOMSEED" } } }

培訓的資料來源:

{ "splitting":{ "percentBegin":70, "percentEnd":100, "strategy":"random", "strategyParams": { "randomSeed":"RANDOMSEED" } "complement":"true" } }

有效值為 sequentialrandom

(選用) Strategy:RandomSeed

Amazon ML 使用隨機種子分割資料。API 的預設種子是空字串。若要指定隨機分割策略的種子,請傳入字串。如需隨機種子的詳細資訊,請參隨機分割資料中的Amazon Machine Learning 開發者指南

如需示範如何搭配使用跨驗證與 Amazon ML 的範本程式碼,請移至Github Machine Learning 範例