使用深度学习模型生成合成数据

百家 作者:51CTO技术栈 2023-02-22 18:04:37

译者 | 布加迪
审校 | 孙淑娟

不可否认,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


关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接
百度热搜榜
排名 热点 搜索指数