Synthetic data generation methods with different synthetization methods.
Project description
What is Synthetic Data?
Synthetic data is artificially generated data that is not collected from real world events. It replicates the statistical components of real data without containing any identifiable information, ensuring individuals' privacy.
Why Synthetic Data?
Synthetic data can be used for many applications:
- Privacy
- Remove bias
- Balance datasets
- Augment datasets
ydata-synthetic
This repository contains material related with Generative Adversarial Networks for synthetic data generation, in particular regular tabular data and time-series. It consists a set of different GANs architectures developed using Tensorflow 2.0. Several example Jupyter Notebooks and Python scripts are included, to show how to use the different architectures.
Quickstart
The source code is currently hosted on GitHub at: https://github.com/ydataai/ydata-synthetic
Binary installers for the latest released version are available at the Python Package Index (PyPI).
pip install ydata-synthetic
Examples
Here you can find usage examples of the package and models to synthesize tabular data.
- Synthesizing the minority class with VanillaGAN on credit fraud dataset
- Time Series synthetic data generation with TimeGAN on stock dataset
- More examples are continously added and can be found in
/examples
directory.
Datasets for you to experiment
Here are some example datasets for you to try with the synthesizers:
Tabular datasets
Sequential datasets
Project Resources
In this repository you can find the several GAN architectures that are used to create synthesizers:
Tabular data
- GAN
- CGAN (Conditional GAN)
- WGAN (Wasserstein GAN)
- WGAN-GP (Wassertein GAN with Gradient Penalty)
- DRAGAN (On Convergence and stability of GANS)
- Cramer GAN (The Cramer Distance as a Solution to Biased Wasserstein Gradients)
Sequential data
Contributing
We are open to collaboration! If you want to start contributing you only need to:
- Search for an issue in which you would like to work. Issues for newcomers are labeled with good first issue.
- Create a PR solving the issue.
- We would review every PRs and either accept or ask for revisions.
Support
For support in using this library, please join the #help Slack channel. The Slack community is very friendly and great about quickly answering questions about the use and development of the library. Click here to join our Slack community!
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ydata-synthetic-0.6.1.tar.gz
.
File metadata
- Download URL: ydata-synthetic-0.6.1.tar.gz
- Upload date:
- Size: 38.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8e14f945d3c2202a6bff2f803ef01c278c19d1b0bccf9f715ef2344420795472 |
|
MD5 | d68abd48ff2445957e27a4bcad0c1461 |
|
BLAKE2b-256 | 9fa86756d3d20d0313d22ce088284eaed8c169affef20a0cd523e1b63517e206 |
File details
Details for the file ydata_synthetic-0.6.1-py2.py3-none-any.whl
.
File metadata
- Download URL: ydata_synthetic-0.6.1-py2.py3-none-any.whl
- Upload date:
- Size: 54.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e010e9ff028173dbb2452381acd84b5afae5b9437812de53460da988230a345 |
|
MD5 | acaba7c4e598f93eea776eeed255d860 |
|
BLAKE2b-256 | 35f5f691fe708bd5dfe729f63d22ec0a2284d3e45cb0a5e33b8ae52fe3b93433 |