本頁說明如何準備表格資料,以便在 Vertex AI 中訓練分類和迴歸模型。訓練資料的品質會影響所建模型的成效。
涵蓋以下主題:
根據預設,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 匯入資料,資料必須位於符合下列要求的值區:
- 符合 Vertex AI 值區規定。
- 如果儲存格不在 Vertex AI 專案中,您必須在 Vertex AI 服務代理中新增一或多個角色。請參閱「Cloud Storage 的角色新增要求」。
如果您要從本機電腦匯入資料,必須擁有符合下列需求的 Cloud Storage 值區:
- 符合 Vertex AI 值區規定。
如果儲存格不在 Vertex AI 專案中,您必須在 Vertex AI 服務代理中新增一或多個角色。請參閱「Cloud Storage 的角色新增要求」。
Vertex AI 會在匯入資料前,將這個值區用做暫存區。
為訓練資料新增權重
根據預設,Vertex AI 會平均分配訓練資料每個資料列的權重。在訓練期間,系統不會將任何資料列視為比其他資料列更重要。
有時候,您可能希望系統在訓練模型時能更頻繁地使用部分資料列。例如,如果您正在使用支出資料,可能會希望與支出較高者相關聯的資料對模型產生較大影響。若您特別想避免缺少特定結果的情況,則可針對包含這個結果的資料列增加其權重。
如要提供資料列的相對權重,您可以在資料集中新增權重欄。權重欄必須是數字欄,權重值可為 0 到 10,000。值越高,則表示在訓練模型時,這個資料列較為重要。權重為 0 會導致系統忽略該列。如果您加入了重量資料欄,則每個資料列都必須包含一個值。
您稍後訓練模型時,可以將這個欄指定為 Weight
欄。
系統唯有在訓練模型時會使用自訂權重配置,因此這些配置不會影響用於模型評估的測試集。
後續步驟
- 建立資料集。
- 進一步瞭解建立表格型訓練資料的最佳做法。
- 瞭解 Vertex AI 如何處理不同類型的表格資料。