View a markdown version of this page

重複使用不同資料集的資料流量 - Amazon SageMaker AI

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

重複使用不同資料集的資料流量

您可以在 Amazon Simple Storage Service (Amazon S3) 資料來源建立和使用參數。參數是您儲存在 Data Wrangler 流程中的變數。其值可以是資料來源 Amazon S3 路徑的任何部分。使用參數可快速變更要匯入至 Data Wrangler 流程或匯出至處理任務的資料。您還可以使用參數來選取和匯入資料的特定子集。

建立 Data Wrangler 流程之後,您可以用已轉換的資料訓練模型。對於具有相同結構描述的資料集,您可以使用參數,在不同的資料集上套用相同的轉換,並訓練不同的模型。您可以透過新資料集來對模型執行推論,也可以使用它們來重新訓練模型。

一般而言,參數有下列屬性:

  • 名稱—您為參數指定的名稱

  • 類型—參數代表的值的類型

  • 預設值—未指定新值時的參數的值

注意

日期時間參數具有時間範圍屬性,作為預設值。

Data Wrangler 使用大括號 {{}} 來表示某參數正在 Amazon S3 路徑中被使用。例如,您可以有一個 URL,如 s3://amzn-s3-demo-bucket1/{{example_parameter_name}}/example-dataset.csv。

您在編輯已匯入的 Amazon S3 資料來源時建立參數。您可以將檔案路徑的任何部分設定為參數值。您可以將參數值設定為一個值或一個陣列。以下是 Data Wrangler 流程中可用的參數值類型:

  • Number

  • String

  • 模式

  • 日期時間

注意

您無法在 Amazon S3 路徑中,為儲存貯體名稱建立模式參數或日期時間參數。

您必須將數字參數的預設值設定為數字。您可以在編輯參數或啟動處理任務時,將參數的值變更為不同的數字。例如,在 S3 路徑中,s3://amzn-s3-demo-bucket/example-prefix/example-file-1.csv,您可以在 1 之處建立名為 number_parameter 的數字參數。您的 S3 路徑現在會顯示為 s3://amzn-s3-demo-bucket/example-prefix/example-file-{{number_parameter}}.csv。路徑會繼續指向 example-file-1.csv 資料集,直到您變更參數的值為止。如果您將 number_parameter 的值變更為 2,現在路徑為 s3://amzn-s3-demo-bucket/example-prefix/example-file-2.csv。如果已將檔案上傳到該 Amazon S3 位置,則您可以可以將 example-file-2.csv 匯入至 Data Wrangler。

字串參數會儲存字串為其預設值。例如,在 S3 路徑中,s3://amzn-s3-demo-bucket/example-prefix/example-file-1.csv,您可以在檔案名稱 example-file-1.csv 之處建立名為 string_parameter 的字串參數。路徑現在會顯示為 s3://amzn-s3-demo-bucket/example-prefix/{{string_parameter}}。它會繼續符合 s3://amzn-s3-demo-bucket/example-prefix/example-file-1.csv,直到您變更參數的值為止。

您可以使用整個 Amazon S3 路徑建立字串參數,而不是將檔案名稱指定為字串參數。您可以在字串參數中,從任何 Amazon S3 位置指定資料集。

模式參數會將規則運算式 (Python REGEX) 字串儲存為其預設值。您可以使用模式參數同時匯入多個資料檔案。若要一次匯入多個物件,請指定與要匯入之 Amazon S3 物件符合的參數值。

您還可以為下列資料集建立模式參數:

  • s3://amzn-s3-demo-bucket1/example-prefix/example-file-1.csv

  • s3://amzn-s3-demo-bucket1/example-prefix/example-file-2.csv

  • s3://amzn-s3-demo-bucket1/example-prefix/example-file-10.csv

  • s3://amzn-s3-demo-bucket/example-prefix/example-file-0123.csv

對於 s3://amzn-s3-demo-bucket1/example-prefix/example-file-1.csv,您可以在 1 的位置建立模式參數,並將參數的預設值設定為 \d+。\d+ REGEX 字串符合任何一個或多個小數數字。如果您建立名為 pattern_parameter 的模式參數,您的 S3 路徑會顯示為 s3://amzn-s3-demo-bucket1/example-prefix/example-file-{{pattern_parameter}}.csv。

您還可以使用模式參數來比對您的儲存貯體中的所有 CSV 物件。若要符合儲存貯體中的所有物件,請使用預設值 .* 建立模式參數,並將路徑設定為 s3://amzn-s3-demo-bucket/{{pattern_parameter}}.csv。.* 字元符合路徑中的任何字串字元。

s3://amzn-s3-demo-bucket/{{pattern_parameter}}.csv 路徑可以符合下列資料集。

  • example-file-1.csv

  • other-example-file.csv

  • example-file-a.csv

日期時間參數以下列的資訊儲存格式:

  • Amazon S3 路徑內部剖析字串的格式。

  • 一個相對時間的範圍,用於限制符合的日期時間值

例如,在 Amazon S3 檔案路徑中,s3://amzn-s3-demo-bucket/2020/01/01/example-dataset.csv,2020/01/01 代表格式為 year/month/day 的日期時間。您可以將參數的時間範圍設定為間隔,例如 1 years 或 24 hours。1 years 的間隔會比對所有 S3 路徑的日期時間,位於介於目前時間及恰恰一年之前者。目前時間是您開始匯出對資料所做的轉換的時間。如需匯出資料的更多相關資訊,請參閱Export (匯出)。如果目前的日期是 2022/01/01,而時間範圍是 1 years,S3 路徑就會符合下列資料集:

  • s3://amzn-s3-demo-bucket/2021/01/01/example-dataset.csv

  • s3://amzn-s3-demo-bucket/2021/06/30/example-dataset.csv

  • s3://amzn-s3-demo-bucket/2021/12/31/example-dataset.csv

在相對時間範圍內的日期時間值,會隨著時間的推移而改變。落在相對時間範圍內的 S3 路徑,也可能有所不同。

對於 Amazon S3 檔案路徑 s3://amzn-s3-demo-bucket1/20200101/example-dataset.csv,20220101 是可以成為日期時間參數的路徑範例。

若要檢視您在 Data Wrangler 流程中建立的所有參數的表格,請選擇包含 Amazon S3 路徑之文字方塊右側的 `{{}}`。如果不再需要已建立的參數,您可以加以編輯或刪除。若要編輯或刪除參數,請選擇參數右側的圖示。

重要

刪除參數之前,請確定您尚未在 Data Wrangler 流程中的任何位置使用該參數。刪除仍在流程中的參數會導致錯誤。

您可以為 Data Wrangler 流程的任何步驟建立參數。您可以編輯或刪除您已建立的參數。如果您要套用轉換至與您的使用案例不再相關的資料,您可以修改參數的值。修改參數的值會變更您要匯入的資料。

下列各節提供有關使用參數的其他範例和一般指引。您可以透過這些章節來瞭解最適合您的參數。

注意

下列各節包含使用 Data Wrangler 介面覆寫參數和建立處理任務的程序。

您還可以使用下列程序覆寫參數。

若要匯出 Data Wrangler 流程並覆寫參數的值,請執行下列動作。

  1. 選擇欲匯出的節點旁的 + 號。

  2. 選擇 匯出至。

  3. 選擇您要匯出資料的位置。

  4. 在 parameter_overrides 底下,為您建立的參數指定不同的值。

  5. 執行 Jupyter 筆記本。

您可以使用參數將 Data Wrangler 流程中的轉換套用至符合 Amazon S3 URI 路徑中某個模式的不同檔案。這有助於非常明確地指定 S3 儲存貯體中要進行轉換的檔案。例如,您可能有一個資料集路徑為 s3://amzn-s3-demo-bucket1/example-prefix-0/example-prefix-1/example-prefix-2/example-dataset.csv。名為 example-dataset.csv 的不同的資料集儲存在許多不同的範例字首下。字首也可能是循序編號。您可以為 Amazon S3 URI 中的數字建立模式。模式參數使用 REGEX 來選取與表達式的模式匹配的任意數量檔案。以下是可能有幫助的 REGEX 模式:

  • .* — 符合零個或多個任意字元,除了換行字元

  • .+ — 符合一個或多個任意字元,不包括換行字元

  • \d+ — 符合一個或多個任意小數數字

  • \w+ — 符合一個或多個任意字母數字字元

  • [abc-_]{2,4} — 符合由兩個、三個或四個字元的字串,由一組括號內的字元構成

  • abc|def — 符合一個字串或另一個字串。例如,該作業符合 abc 或 def

您可以使用具有 \d+ 的值的單一參數,取代下列路徑中的每個數字。

  • s3://amzn-s3-demo-bucket1/example-prefix-3/example-prefix-4/example-prefix-5/example-dataset.csv

  • s3://amzn-s3-demo-bucket1/example-prefix-8/example-prefix-12/example-prefix-13/example-dataset.csv

  • s3://amzn-s3-demo-bucket1/example-prefix-4/example-prefix-9/example-prefix-137/example-dataset.csv

下列程序會為具有 s3://amzn-s3-demo-bucket1/example-prefix-0/example-prefix-1/example-prefix-2/example-dataset.csv 路徑的資料集建立模式參數。

若要建立模式參數,請執行下列步驟。

  1. 在您已匯入的資料集旁邊,選擇 編輯資料集。

  2. 強調顯示 example-prefix-0 中的 0。

  3. 為下列欄位指定數值:

    • 名稱-參數的名稱

    • 類型-模式

    • 值—\d+ 對應於一個或多個數字的規則表達式

  4. 選擇 建立。

  5. 使用參數取代 S3 URI 路徑中的 1 和 2。路徑應具有下列格式:s3://amzn-s3-demo-bucket1/example-prefix-{{example_parameter_name}}/example-prefix-{{example_parameter_name}}/example-prefix-{{example_parameter_name}}/example-dataset.csv

以下是建立模式參數的一般程序。

  1. 導覽至您的 Data Wrangler 流程。

  2. 在您已匯入的資料集旁邊,選擇 編輯資料集。

  3. 強調顯示您用作模式參數的值的 URI 部分。

  4. 選擇建立自訂參數。

  5. 為下列欄位指定數值:

    • 名稱-參數的名稱

    • 類型-模式

    • 值—包含您要儲存之模式的規則運算式。

  6. 選擇建立。

您可以使用參數,將 Data Wrangler 流程中的轉換套用至具有類似路徑的不同檔案。例如,您可能有一個資料集路徑為 s3://amzn-s3-demo-bucket1/example-prefix-0/example-prefix-1/example-prefix-2/example-dataset.csv。

您可以將 Data Wrangler 流程中的轉換套用至 example-prefix-1 下的資料集。您可能想要將相同的轉換套用至 example-prefix-10 或 example-prefix-20 下的 example-dataset.csv。

您可以建立儲存值 1 的參數。如果要將轉換套用至不同的資料集,您可以建立處理任務,以不同值取代參數的值。當您想要將 Data Wrangler 流程的轉換套用至新資料時,參數會充當預留位置,以供您變更。您可以在建立 Data Wrangler 處理任務時覆寫參數的值,將 Data Wrangler 流程中的轉換套用至不同的資料集。

請使用下列程序為 s3://amzn-s3-demo-bucket1/example-prefix-0/example-prefix-1/example-prefix-2/example-dataset.csv 建立數值參數。

若要為前面的 S3 URI 路徑建立參數,請執行下列動作。

  1. 導覽至您的 Data Wrangler 流程。

  2. 在您已匯入的資料集旁邊,選擇 編輯資料集。

  3. 重點標示範例字首 example-prefix-number 的數字。

  4. 選擇建立自訂參數。

  5. 在名稱指定參數的名稱。

  6. 在類型選擇 整數。

  7. 在值指定數字。

  8. 透過重複此程序為剩餘的數字建立參數。

建立參數之後,請將轉換套用至您的資料集,並為它建立目的地節點。如需目的地節點的更多相關資訊,請參閱Export (匯出)。

使用下列程序,將 Data Wrangler 流程的轉換套用至不同的時間範圍。它假設您已為流程中的轉換建立目的地節點。

若要變更 Data Wrangler 處理任務中的數值參數的值,請執行下列動作。

  1. 在 Data Wrangler 流程中,選擇 建立任務

  2. 僅選取包含對有日期時間參數的資料集的轉換之目的地節點。

  3. 選擇設定作業。

  4. 選擇參數。

  5. 選擇您已建立之參數的名稱。

  6. 變更參數的值。

  7. 對其他參數重複此程序。

  8. 選擇執行。

您可以使用參數,將 Data Wrangler 流程中的轉換套用至具有類似路徑的不同檔案。例如,您可能有一個資料集路徑為 s3://amzn-s3-demo-bucket1/example-prefix/example-dataset.csv。

您可將 Data Wrangler 流程​​中的轉換套用至 example-prefix 下的資料集。您可能想要將相同的轉換套用至 another-example-prefix 或 example-prefix-20 下的 example-dataset.csv。

您可以建立儲存值 example-prefix 的參數。如果要將轉換套用至不同的資料集,您可以建立處理任務,以不同值取代參數的值。當您想要將 Data Wrangler 流程的轉換套用至新資料時,參數會充當預留位置,以供您變更。您可以在建立 Data Wrangler 處理任務時覆寫參數的值,將 Data Wrangler 流程中的轉換套用至不同的資料集。

使用下列程序為 s3://amzn-s3-demo-bucket1/example-prefix/example-dataset.csv 建立字串參數。

若要為前面的 S3 URI 路徑建立參數,請執行下列動作。

  1. 導覽至您的 Data Wrangler 流程。

  2. 在您已匯入的資料集旁邊,選擇 編輯資料集。

  3. 強調顯示範例字首 example-prefix。

  4. 選擇建立自訂參數。

  5. 在名稱指定參數的名稱。

  6. 在類型選擇字串。

  7. 在值指定字首。

建立參數之後,請將轉換套用至您的資料集,並為它們建立目的地節點。如需目的地節點的更多相關資訊,請參閱Export (匯出)。

使用下列程序,將 Data Wrangler 流程的轉換套用至不同的時間範圍。它假設您已為流程中的轉換建立目的地節點。

若要變更 Data Wrangler 處理任務中的數值參數的值,請執行下列動作:

  1. 在 Data Wrangler 流程中,選擇 建立任務

  2. 僅選取包含對有日期時間參數的資料集的轉換之目的地節點。

  3. 選擇設定作業。

  4. 選擇參數。

  5. 選擇您已建立之參數的名稱。

  6. 變更參數的值。

  7. 對其他參數重複此程序。

  8. 選擇執行。

使用日期時間參數,將 Data Wrangler 流程中的轉換套用至不同的時間範圍。強調顯示具有時間戳記的 Amazon S3 URI 部分,並為它建立參數。建立參數時,您可以指定時間範圍,從目前時間到過去的某個時間。例如,您的 Amazon S3 URI 可能如下所示:s3://amzn-s3-demo-bucket1/example-prefix/2022/05/15/example-dataset.csv。您可以儲存 2022/05/15 為日期時間參數。如果您指定一年作為時間範圍,則時間範圍會包含您執行該處理任務的時刻,包含日期時間參數,以及剛好一年之前的時間。如果您執行該處理任務的時刻是 2022 年九月 6 日,或是 2022/09/06,時間範圍可能包含下列項目:

  • s3://amzn-s3-demo-bucket1/example-prefix/2022/03/15/example-dataset.csv

  • s3://amzn-s3-demo-bucket1/example-prefix/2022/01/08/example-dataset.csv

  • s3://amzn-s3-demo-bucket1/example-prefix/2022/07/31/example-dataset.csv

  • s3://amzn-s3-demo-bucket1/example-prefix/2021/09/07/example-dataset.csv

Data Wrangler 流程中的轉換會套用至前面的所有字首。變更該處理任務中的參數的值,不會變更 Data Wrangler 流程中的參數的值。若要將轉換套用至不同時間範圍內的資料集,請執行下列動作:

  1. 建立目的地節點,包含您要使用的所有轉換。

  2. 建立 Data Wrangler 任務。

  3. 設定任務,使用不同的時間範圍為參數。變更該處理任務中的參數的值,不會變更 Data Wrangler 流程中的參數的值。

如需目的地節點和 Data Wrangler 任務的更多相關資訊,請參閱Export (匯出)。

下列程序會為 Amazon S3 路徑建立日期時間參數:s3://amzn-s3-demo-bucket1/example-prefix/2022/05/15/example-dataset.csv。

若要為前面的 S3 URI 路徑建立日期時間參數,請執行下列動作。

  1. 導覽至您的 Data Wrangler 流程。

  2. 在您已匯入的資料集旁邊,選擇 編輯資料集。

  3. 強調顯示您用作日期時間參數的值的 URI 部分。

  4. 選擇建立自訂參數。

  5. 在名稱指定參數的名稱。

  6. 在 類型選擇 日期時間。

    注意

    根據預設值,Data Wrangler 會選取 預先定義,它會提供下拉式清單,供您選取日期格式。不過,您使用的時間戳記格式可能不可用。您可以選擇 自訂並手動指定時間戳記格式,而不是使用 預先定義做為預設選項。

  7. 在日期格式開啟預先定義後面的下拉式清單,然後選擇 yyyy/MM/dd。格式 yyyy/MM/dd 對應時間戳記的年/月/日。

  8. 在時區,選擇時區。

    注意

    您正在分析的資料可能會採用與您所在時區不同的時區時間戳記。請確定您選取的時區與資料的時區相符。

  9. 在時間範圍指定參數的時間範圍。

  10. (選用) 輸入描述以描述您如何使用該參數。

  11. 選擇建立。

建立日期時間參數之後,請將轉換套用至您的資料集,並為它們建立目的地節點。如需目的地節點的更多相關資訊,請參閱Export (匯出)。

使用下列程序,將 Data Wrangler 流程的轉換套用至不同的時間範圍。它假設您已為流程中的轉換建立目的地節點。

若要變更 Data Wrangler 處理任務中的日期時間參數的值,請執行下列動作:

  1. 在 Data Wrangler 流程中,選擇建立任務

  2. 僅選取包含對有日期時間參數的資料集的轉換之目的地節點。

  3. 選擇設定作業。

  4. 選擇參數。

  5. 選擇您已建立之日期時間參數的名稱。

  6. 在時間範圍變更資料集的時間範圍。

  7. 選擇執行。