本頁說明如何準備表格資料,以便在 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 值區規定。
- 如果 bucket 與 Vertex AI 不在同一個專案中,請為 Vertex AI 服務代理新增一或多個角色。請參閱 Cloud Storage 的角色新增規定。
如要從本機電腦匯入資料,您必須擁有符合下列條件的 Cloud Storage bucket:
- 符合 Vertex AI 值區規定。
如果 bucket 與 Vertex AI 不在同一個專案中,請為 Vertex AI 服務代理新增一或多個角色。請參閱 Cloud Storage 的角色新增規定。
Vertex AI 會先將資料暫存到這個 bucket,再匯入資料。
為訓練資料新增權重
根據預設,Vertex AI 會為訓練資料中的每個資料列設定相同的權重。進行訓練時,每個資料列都一樣重要。
有時候,您可能希望系統在訓練模型時能更頻繁地使用部分資料列。舉例來說,如果您使用支出資料,可能會希望與支出較高者相關聯的資料對模型產生較大影響。如果想避免缺少特定結果,請針對包含該結果的資料列增加權重。
如要提供資料列的相對權重,您可以在資料集中新增權重欄。權重欄必須是數字欄。權重值可介於 0 到 10,000 之間。 值越高,代表訓練模型時該資料列越重要。權重為 0 的資料列會遭到忽略。如果加入權重資料欄,則每列都必須包含值。
稍後訓練模型時,請將這個資料欄指定為 Weight
資料欄。
系統唯有在訓練模型時會使用自訂權重配置,因此這些配置不會影響模型評估作業所用的測試集。
後續步驟
- 建立資料集。
- 進一步瞭解建立表格型訓練資料的最佳做法。
- 瞭解 Vertex AI 如何處理不同類型的表格資料。