使用深度學習模型生成合成數據
譯文譯者 | 布加迪
審校 | 孫淑娟
不可否認,21世紀最大的資源是數據——數據通常被稱為第四代工業;只有公司采用這種模式收集數據,并利用數據做出明智決策的公司,才會蓬勃發展。但是收集數據和進行實驗并不像聽起來那么簡單,大多數中等公司沒有存儲可擴展數據的基礎設施或資源。在大多數情況下,當您必須在沒有可擴展數據的情況下測試機器學習/人工智能模型時,我們必須使用機器學習生成合成數據。在一些用例中,公司之所以生成合成數據,是由于它希望對數據保密。
使用合成數據倉庫生成合成數據
合成數據倉庫(SDV)是一個生成合成數據的生態系統,允許用戶通過了解單表、多表、文本和時間序列數據集,輕松創建合成數據。SDV使用概率圖形模型和深度學習技術來生成合成數據。
在我們的場景中,我們將使用高斯連接函數(Gaussian Coupla)來生成合成數據——高斯連接函數是一種方法,我們通過使用協方差矩陣來生成多變量隨機變量。
下面是安裝和導入高斯連接函數實例的代碼:
為了使實例擬合高斯連接函數,不妨將通用數據集導入到筆記本(notebook),我們不妨從kaggle下載保險索賠數據集。該數據集具有分類、連續和自由的文本數據,因此我們可以看到SDV庫的有效性/范圍。
我們可以從上圖中看到,該保險索賠數據的數據類型有object、int64和float64這幾種。
將數據集擬合到高斯連接函數實例中,生成10萬個樣本:
不妨為生成的合成變量檢查數據類型:
只需觀察原始數據和生成的合成數據之間的數據類型;它們完全匹配,這表明SDV運行起來有多高效。
不妨更進一步,使用table_evaluator庫來比較真實數據集和合成數據集:
真實數據和虛假數據的對數均值和標準偏差比較
真實數據和虛假數據變量比較的示意圖:
我已經加入了一些選定變量的視覺元素——為44個變量生成的完整報告相當全面,這里僅顯示部分。
我們從上面圖表中可以看到SDV生成分類和規范化連續變量的功能有多強大。
咱們還是編程吧,生成合成數據,并使用它訓練機器學習模型及更多!
原文鏈接:??https://omkargawade.medium.com/generating-synthetic-data-using-deep-learning-model-5066aed80e30?