準備訓練資料

本頁說明如何準備表格資料,以便在 Vertex AI 中訓練分類和迴歸模型。訓練資料的品質會影響所建模型的成效。

涵蓋以下主題:

  1. 資料結構規定
  2. 準備匯入來源
  3. 為訓練資料新增權重

根據預設,Vertex AI 會使用隨機分割演算法,將資料分割為三個資料分割。Vertex AI 會隨機選取 80% 的資料列用於訓練集、10% 用於驗證集,以及 10% 用於測試集。或者,您也可以使用手動分割時間分割,但這需要您準備資料分割欄或時間欄。進一步瞭解資料分割。

資料結構規定

訓練資料必須符合下列基本要求:

需求類型 需求
大小 資料集大小不得超過 100 GB。
欄數 資料集必須至少包含 2 個欄,最多 1,000 個欄。資料集必須包含目標,且至少要有一個特徵可用於訓練模型。在理想情況下,您的訓練資料應具備兩個以上的資料欄。欄數上限包含地圖項目欄和非地圖項目欄。
目標欄 您必須指定目標欄。目標欄可讓 Vertex AI 將訓練資料與所需結果建立關聯。不得包含空值,且必須是分類或數值。如果是類別資料類型,則必須至少有 2 個不重複值,且不超過 500 個。
資料欄名稱格式 資料欄名稱可以包含英數字元或底線 (_),但不得以底線為開頭。
列數 資料集列數必須介於 1,000 列至 100,000,000 列之間。視資料集提供的特徵數量而定,1,000 列可能不足以訓練高效能模型。瞭解詳情
資料格式 您必須根據目標使用適當的資料格式 (廣泛或精確)。一般來說,寬格式最適合,每列代表一個訓練資料項目 (產品、人物等)。瞭解如何選擇資料格式

準備匯入來源

您可以透過兩種格式將模型訓練資料提供給 Vertex AI:

  • BigQuery 資料表
  • 逗號分隔值 (CSV)

您使用的來源取決於資料的儲存方式、大小和複雜度。在資料集規模不大,且您不需使用較複雜資料類型的情況下,選擇 CSV 是比較簡單的做法。若是包含陣列和結構的大型資料集,請務必使用 BigQuery。

BigQuery

BigQuery 資料表或檢視表必須符合 BigQuery 位置規定

如果 BigQuery 資料表或檢視畫面位於您建立 Vertex AI 資料集的專案以外的專案,或是 BigQuery 資料表或檢視畫面由外部資料來源支援,您可能需要在 Vertex AI 服務代理中新增一或多個角色。請參閱 BigQuery 的角色新增規定

您不必為 BigQuery 資料表指定結構定義,Vertex AI 會在您匯入資料時,自動推測該資料表的結構定義。

BigQuery uri (指定訓練資料的位置) 必須符合下列格式:

bq://<project_id>.<dataset_id>.<table_id>

此 URI 不得包含任何其他特殊字元。

如要瞭解 BigQuery 資料類型,以及這些類型對應至 Vertex AI 的方式,請參閱「BigQuery 資料表」一節。如要進一步瞭解如何使用 BigQuery 外部資料來源,請參閱「外部資料來源簡介」。

CSV

CSV 檔案可以儲存在 Cloud Storage 或本機電腦上。並須符合下列規定:

  • 第一個檔案的第一行必須是標頭,並且須包含資料欄名稱。如果後續檔案的第一列與標頭相同,系統同樣會將其視為標頭;如果不同,則會視為資料。
  • 資料欄名稱可以使用英數字元或底線 (_),但不得以底線為開頭。
  • 每個檔案不得超過 10 GB。

    您可以加入多個檔案,容量上限為 100 GB。

  • 分隔符號必須是半形逗號 (,)。

您不需要為 CSV 資料指定結構定義,Vertex AI 會在您匯入資料時,自動推測資料表的結構定義,並使用標題列做為資料欄名稱。

如要進一步瞭解 CSV 檔案格式和資料類型,請參閱 CSV 檔案一節。

如果您要從 Cloud Storage 匯入資料,資料必須位於符合下列要求的值區:

如果您要從本機電腦匯入資料,必須擁有符合下列需求的 Cloud Storage 值區:

為訓練資料新增權重

根據預設,Vertex AI 會平均分配訓練資料每個資料列的權重。在訓練期間,系統不會將任何資料列視為比其他資料列更重要。

有時候,您可能希望系統在訓練模型時能更頻繁地使用部分資料列。例如,如果您正在使用支出資料,可能會希望與支出較高者相關聯的資料對模型產生較大影響。若您特別想避免缺少特定結果的情況,則可針對包含這個結果的資料列增加其權重。

如要提供資料列的相對權重,您可以在資料集中新增權重欄。權重欄必須是數字欄,權重值可為 0 到 10,000。值越高,則表示在訓練模型時,這個資料列較為重要。權重為 0 會導致系統忽略該列。如果您加入了重量資料欄,則每個資料列都必須包含一個值。

您稍後訓練模型時,可以將這個欄指定為 Weight 欄。

系統唯有在訓練模型時會使用自訂權重配置,因此這些配置不會影響用於模型評估的測試集。

後續步驟