使用copulas建模创建表格合成数据。
项目描述
此仓库是 合成数据保险库项目 的一部分,该项目由 DataCebo 提供支持。
概述
Copulas 是一个用于建模多元分布和通过copula函数从中采样的Python库。给定一个数值数据表,使用Copulas学习分布并生成遵循相同统计特性的新合成数据。
关键特性
-
建模多元数据。 从各种单变量分布和copula中选择 – 包括阿基米德copula、高斯copula和Vine copula。
-
在模型构建后直观比较真实和合成数据。 可视化包括1D直方图、2D散点图和3D散点图。
-
访问和操作学习到的参数。 完全访问模型的内部,设置或调整参数以满足您的需求。
安装
使用pip或conda安装Copulas库。
pip install copulas
conda install -c conda-forge copulas
用法
使用示例数据集开始。此数据集包含3个数值列。
from copulas.datasets import sample_trivariate_xyz
real_data = sample_trivariate_xyz()
real_data.head()
使用copula建模数据,并使用它创建合成数据。Copulas库提供许多选项,包括高斯copula、Vine copula和阿基米德copula。
from copulas.multivariate import GaussianMultivariate
copula = GaussianMultivariate()
copula.fit(real_data)
synthetic_data = copula.sample(len(real_data))
直观地并排显示真实和合成数据。让我们用3D图来查看完整的数据集。
from copulas.visualization import compare_3d
compare_3d(real_data, synthetic_data)
教程
点击以下链接在Colab笔记本上运行代码,并发现新特性。
社区和支持
从我们的 文档 站点了解更多关于Copulas库的信息。
有问题或疑问? 加入我们的 Slack频道 讨论更多关于Copulas和合成数据的话题。如果您发现错误或有功能请求,您也可以在我们的GitHub上 提交问题。
有兴趣为Copulas做出贡献? 阅读我们的 贡献指南 开始。
致谢
Copulas开源项目始于2018年麻省理工学院的数据到人工智能实验室。感谢我们的贡献者团队多年来构建和维护此库!
合成数据保险库项目 首先于2016年在麻省理工学院的 数据到人工智能实验室 创建。经过4年的企业研究和推广,我们于2020年创建了 DataCebo,旨在扩大该项目。今天,DataCebo是SDV的骄傲开发者,SDV是合成数据生成和评估的最大生态系统。它拥有多个支持合成数据的库,包括
- 🔄 数据发现与转换。反转转换以重新生成现实数据。
- 🧠 多种机器学习模型 – 从Copulas到深度学习,以创建表格、多表和时间序列数据。
- 📊 衡量合成数据的质量和隐私,并比较不同的合成数据生成模型。
开始使用SDV包 – 一个完全集成的解决方案,是您合成数据的一站式商店。或者,您也可以使用独立的库来满足特定需求。
项目详情
下载文件
下载适合您平台的文件。如果您不确定该选择哪一个,请了解有关安装包的更多信息。