什麼是合成資料?

合成資料是由電腦演算法人工生成,而非從實際事件收集而來。就像是人工智慧 (AI) 的飛行模擬模式。就像飛行員在模擬駕駛艙中學習飛行,不會危及真實飛機一樣,AI 模型可以使用模擬資料學習識別模式,不會危及使用者隱私。

合成資料與真實資料的主要差異在於,前者會模仿真實資料的統計屬性 (例如平均值、相關性和分布),但不含任何可識別真實人物的資訊。這類內容看起來和真實內容一模一樣,但並非由真人製作特定記錄。

如何生成合成資料?

生成合成資料並非複製貼上即可。這項技術會使用進階機器學習模型,瞭解真實資料的「樣貌」,然後建立符合該樣貌的全新原創樣本。

  • 工程師通常會使用生成式模型來完成這項工作。生成對抗網路 (GAN)、變分自動編碼器 (VAE) 和擴散模型等技術會分析真實資料集,學習其隱藏的模式。模型學會這些模式後,就能輸出無限多個新的假樣本,這些樣本在統計上與原始樣本相同。
  • 另一種常見方法是模擬。這項技術在機器人和自動駕駛等產業相當熱門。開發人員會使用類似用於電玩遊戲的物理引擎,來打造虛擬世界。在這些世界中,他們可以透過模擬情境 (例如汽車在下雨的城市中行駛,或機器手臂拿起一個盒子) 來生成資料,完全不需要實體攝影機或感應器。

合成資料類型

合成資料的用途不盡相同。您可以根據隱私權和準確度的需求,選擇不同類型。

這項資料完全從頭生成。這類資料不含原始使用者資料,因此合成記錄與真人之間沒有一對一的對應關係。由於不涉及任何特定個人,因此能提供最高等級的隱私保護。不過,這需要嚴格的驗證,確保資料仍夠準確,可用於訓練 AI。

有時,您需要保留一些真實資料,才能讓資料集發揮作用。部分合成資料是指從真實資料集著手,只將機密部分 (例如姓名、身分證字號或地址) 換成合成值。其餘資料則維持不變。這種做法兼顧隱私與實用性,但與完全合成資料相比,重新識別的風險略高。

這種做法會結合真實和合成記錄,建立「超級資料集」。通常用於充實較小的真實資料集。舉例來說,如果您有大量一般銀行交易資料,但詐欺資料很少,可以生成合成詐欺記錄,與真實資料混合。這有助於「增加取樣」罕見事件,讓 AI 模型有足夠的範例可學習。

合成資料與真實資料的比較

真實資料是準確度的標準,但收集成本高昂,且通常雜亂或不完整,並受到 GDPR 或 HIPAA 等隱私權法律的嚴格限制。收集真實世界資料也可能需要數月或數年。

另一方面,合成資料的擴充成本較低。您可以在數小時內生成數百萬筆記錄。這類資料會完美標示 (因為是電腦建立,所以電腦完全瞭解內容),而且設計上符合隱私權規定。此外,合成資料可經過平衡處理,消除真實資料集中常見的自然偏誤。

功能

真實資料

合成資料

費用

偏高 (收集和加上標籤)

偏低 (僅運算能力)

速度

較慢 (數月/數年)

更快 (數小時/數天)

隱私權

限制較多 (PII 風險)

更安全 (不含 PII)

準確性

較高 (反映實際情況)

不一定 (取決於模型品質)

功能

真實資料

合成資料

費用

偏高 (收集和加上標籤)

偏低 (僅運算能力)

速度

較慢 (數月/數年)

更快 (數小時/數天)

隱私權

限制較多 (PII 風險)

更安全 (不含 PII)

準確性

較高 (反映實際情況)

不一定 (取決於模型品質)

合成資料的產業應用實例

自動駕駛車和機器人技術非常仰賴合成資料,因為收集真實世界的資訊相當緩慢。即使在道路上行駛數百萬英里,實體測試也不可能涵蓋所有獨特的事故情境。工程師可透過生成虛擬駕駛環境,讓汽車在數十億英里的模擬道路上訓練,並在沒有任何實體風險的情況下,測試汽車在危險情況 (例如兒童跑進街道) 下的反應。

醫療資料極為私密,難以分享。研究人員可利用合成資料,建立模仿真實疾病統計模式的假病患記錄。這樣一來,醫院就能分享資料,用於癌症研究或罕見疾病研究,同時遵守《健康保險流通與責任法案》(HIPAA)。ManageEngine 的調查顯示,81% 的醫療照護機構目前使用合成資料,在兼顧隱私權的同時推動創新。

由於詐欺行為很少發生,因此難以偵測。這會讓 AI 難以瞭解詐欺行為的樣貌。銀行可能會使用合成資料,生成數千種詐欺交易模式。這種「增加取樣」做法有助於訓練 AI 找出可疑活動,同時不會洩漏真實的客戶財務記錄。

開發人員需要大量資料,才能測試應用程式在壓力下的效能。這就是所謂的「測試資料管理」。DevOps 團隊不必使用危險的真實正式版資料庫副本,就能在測試環境中填入數百萬個合成使用者。他們可以安全地對新應用程式更新進行壓力測試,確保系統能處理大量流量。

合成資料的優點

隱私權和法規遵循

合成資料可大幅降低個人識別資訊 (PII) 外洩的風險。由於這類資料不涉及真實人物,通常不受 GDPR 和 CCPA 等嚴格法規的規範。全球團隊可以更輕鬆地跨國自由共用資料集,不必處理複雜的法律問題。

成本與速度

使用合成資料可大幅加快「資料到 AI」的生命週期。您不必聘請人員手動標記圖片,也不必等待現場收集資料。這項效率提升功能可降低成本並加快開發速度。

減少偏誤

真實世界的資料通常反映了真實世界的偏見。如果使用歷來聘僱資料訓練 AI,AI 可能會學到偏好某個群體。開發人員可透過合成資料,人為修正這些不平衡問題。您可以為代表性不足的群體生成更多資料,例如確保 AI 同等辨識所有膚色或性別,以建立更公平、更穩健的模型。

極端案例測試

有些情況太危險或太罕見,無法在現實生活中測試。舉例來說,不可能為了瞭解安全氣囊感應器的運作方式,就撞毀一千輛真車。合成資料可讓您安全地建立這些「極端案例」。您可以模擬罕見事件,例如鳳凰城暴風雪或特定引擎故障,來訓練系統應對真實世界資料中占比不到 0.01% 的情況,這些情況對安全至關重要。

使用 Gemini Enterprise Agent Platform 的 Gemini 生成合成表格型資料

對開發人員來說,如要快速生成中小型合成資料集 (例如用於單元測試或簡單的示範),通常不是訓練複雜的 GAN,而是運用大型語言模型 (LLM) 生成式功能。這些功能現已整合至 Gemini Enterprise Agent Platform (舊稱 Vertex AI)。這個平台提供全方位的環境,可用於建構、部署及擴充機器學習模型,包括存取 Gemini 等強大模型。


在本逐步操作說明中,我們將使用 Python 適用的 Agent Platform SDK (舊稱 Vertex AI SDK) 和 Gemini,從頭生成合成的「顧客交易」資料集。假設您是開發人員,正在建構金融科技資訊主頁。您需要 50 列「交易資料」來測試前端。

您需要下列特定欄位:transaction_id、timestampamount、merchant_categoryis_fraud

步驟 1:設定環境

首先,請確認 Python 環境中已安裝 Agent Platform SDK。雖然平台已更名,但 Python 套件仍為 google-cloud-aiplatform

  • Bash
載入中…

步驟 2:初始化 Agent Platform SDK

匯入程式庫,並使用專案詳細資料進行初始化。 這是透過 Gemini Enterprise Agent Platform 的 Agent Platform SDK 使用 Gemini 模型的標準設定。

  • Python
載入中…

步驟 3:撰寫結構化提示詞

LLM 生成的合成資料品質,很大程度取決於提示詞。您必須明確說明結構定義、限制 (例如不得為負數) 和輸出格式 (CSV 或 JSON)。在 Gemini Enterprise Agent Platform 使用 Gemini 模型時,清楚明確的指示是有效提示工程的關鍵。

  • Python
載入中…

生成並剖析資料

將提示詞傳送至模型,並將回覆直接載入 Pandas DataFrame。 generate_content 方法是 Agent Platform SDK 的一部分。

  • Python
載入中…

如果只是想取得「看似合理」的資料來測試軟體功能,使用 Gemini 等一般用途 LLM 來生成合成表格型資料,通常會比訓練自訂統計模型 (例如 VAE) 更快。

  • 速度:幾秒內即可取得資料
  • 彈性:只要編輯文字提示詞,就能變更結構定義
  • 邏輯:您可以要求模型加入複雜的邏輯 (例如「如果商家是『旅遊』,金額必須超過 $100 美元」),這對簡單的隨機產生器來說很難做到

*企業規模注意事項:如需生成數百萬筆資料列,在統計上複製現有的大型私有資料集,您可能需要從簡單的 LLM 提示詞,改為使用 Gemini Enterprise Agent Platform Pipelines (舊稱 Vertex AI Pipelines),並與 Gretel.ai 或 MOSTLY AI 等專業合作夥伴整合,這些服務可直接在 Google Cloud Marketplace 取得。可在更廣泛的 Gemini Enterprise Agent Platform 中,自動調度和管理這些進階工作流程。

透過 Google Cloud 解決業務難題

新客戶可以獲得價值 $300 美元的免費抵免額,盡情試用各項 Google Cloud 功能。

展開下一步行動

運用價值 $300 美元的免費抵免額和超過 20 項一律免費的產品,開始在 Google Cloud 中建構產品與服務。

Google Cloud