ydata-synthetic


Nameydata-synthetic JSON
Version 2.0.0 PyPI version JSON
download
home_pagehttps://github.com/ydataai/ydata-synthetic
SummarySynthetic data generation methods with different synthetization methods.
upload_time2024-09-10 13:41:43
maintainerNone
docs_urlNone
authorYData
requires_python<3.13,>=3.9
licensehttps://github.com/ydataai/ydata-synthetic/blob/master/LICENSE
keywords data science ydata
VCS
bugtrack_url
requirements ydata-sdk
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![](https://img.shields.io/github/workflow/status/ydataai/ydata-synthetic/prerelease)
![](https://img.shields.io/pypi/status/ydata-synthetic)
[![](https://pepy.tech/badge/ydata-synthetic)](https://pypi.org/project/ydata-synthetic/)
![](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue)
[![](https://img.shields.io/pypi/v/ydata-synthetic)](https://pypi.org/project/ydata-synthetic/)
![](https://img.shields.io/github/license/ydataai/ydata-synthetic)
<img referrerpolicy="no-referrer-when-downgrade" src="https://static.scarf.sh/a.png?x-pxid=ab07c7a0-c1ee-481e-9368-baf70185cf40" />

<p align="center"><img width="300" src="https://assets.ydata.ai/oss/ydata-synthetic_black.png" alt="YData Synthetic Logo"></p>

Join us on [![Discord](https://img.shields.io/badge/Discord-7289DA?style=for-the-badge&logo=discord&logoColor=white)](https://tiny.ydata.ai/dcai-ydata-synthetic)

# YData Synthetic
`YData-Synthetic` is an open-source package developed in 2020 with the primary goal of educating users about generative models for synthetic data generation. 
Designed as a collection of models, it was intended for exploratory studies and educational purposes. 
However, it was not optimized for the quality, performance, and scalability needs typically required by organizations.

!!! note "Update"
    Even though the journey was fun, and we have learned a lot from the community it is now time to upgrade `ydata-synthetic`.
    Heading towards the future of synthetic data generation we recommend users to transition to `ydata-sdk`, which provides a superior experience with enhanced performance,
    precision, and ease of use, making it the preferred tool for synthetic data generation and a perfect introduction to Generative AI. 

## Synthetic data
### 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 compliance for data-sharing and Machine Learning development
  - Remove bias
  - Balance datasets
  - Augment datasets

> **Looking for an end-to-end solution to Synthetic Data Generation?**<br>
> [YData Fabric](https://ydata.ai/products/synthetic_data) enables the generation of high-quality datasets within a full UI experience, from data preparation to synthetic data generation and evaluation.<br>
> Check out the [Community Version](https://ydata.ai/register).


## ydata-synthetic to ydata-sdk
With the upcoming update of `ydata-synthetic`to `ydata-sdk`, users will now have access to a single API that automatically selects and optimizes
the best generative model for their data. This streamlined approach eliminates the need to choose between
various models manually, as the API intelligently identifies the optimal model based on the specific dataset and use case.

Instead of having to manually select from models such as:

- [GAN](https://arxiv.org/abs/1406.2661)
- [CGAN](https://arxiv.org/abs/1411.1784) (Conditional GAN)
- [WGAN](https://arxiv.org/abs/1701.07875) (Wasserstein GAN)
- [WGAN-GP](https://arxiv.org/abs/1704.00028) (Wassertein GAN with Gradient Penalty)
- [DRAGAN](https://arxiv.org/pdf/1705.07215.pdf) (Deep Regret Analytic GAN)
- [Cramer GAN](https://arxiv.org/abs/1705.10743) (Cramer Distance Solution to Biased Wasserstein Gradients)
- [CWGAN-GP](https://cameronfabbri.github.io/papers/conditionalWGAN.pdf) (Conditional Wassertein GAN with Gradient Penalty)
- [CTGAN](https://arxiv.org/pdf/1907.00503.pdf) (Conditional Tabular GAN)
- [TimeGAN](https://papers.nips.cc/paper/2019/file/c9efe5f26cd17ba6216bbe2a7d26d490-Paper.pdf) (specifically for *time-series* data)
- [DoppelGANger](https://dl.acm.org/doi/pdf/10.1145/3419394.3423643) (specifically for *time-series* data)

The new API handles model selection automatically, optimizing for the best performance in fidelity, utility, and privacy.
This significantly simplifies the synthetic data generation process, ensuring that users get the highest quality output without
the need for manual intervention and tiring hyperparameter tuning.

Are you ready to learn more about synthetic data and the best-practices for synthetic data generation? 
For more materials on [synthetic data generation with Python see the documentation](https://docs.fabric.ydata.ai/latest/sdk/).

## Quickstart
Binary installers for the latest released version are available at the [Python Package Index (PyPI).](https://pypi.org/project/ydata-sdk/)
```commandline
pip install ydata-sdk
```

### The UI guide for synthetic data generation

YData Fabric offers an UI interface to guide you through the steps and inputs to generate structure data.
You can experiment today with [YData Fabric by registering the Community version](https://ydata.ai/register).

### Examples
Here you can find usage examples of the package and models to synthesize tabular data.
  - Tabular [synthetic data generation on Titanic Kaggle dataset](https://github.com/ydataai/ydata-sdk/blob/main/examples/synthesizers/regular_quickstart.py)
  - Time Series [synthetic data generation]('https://github.com/ydataai/ydata-sdk/blob/main/examples/synthesizers/time_series_quickstart.py')
  - More examples are continuously added and can be found in [examples directory](https://github.com/ydataai/ydata-sdk/tree/main/examples).

### Datasets for you to experiment
Here are some example datasets for you to try with the synthesizers:
#### Tabular datasets
- [Adult Census Income](https://www.kaggle.com/datasets/uciml/adult-census-income)
- [Credit card fraud](https://www.kaggle.com/mlg-ulb/creditcardfraud)
- [Cardiovascular Disease dataset](https://www.kaggle.com/datasets/sulianova/cardiovascular-disease-dataset)

#### Sequential datasets
- [Stock data](https://github.com/ydataai/ydata-synthetic/tree/master/data)
- [FCC MBA data](https://github.com/ydataai/ydata-synthetic/tree/master/data)

## Project Resources

Find below useful literature of how to generate synthetic data and available generative models:

### Tabular data
  - [GAN](https://arxiv.org/abs/1406.2661)
  - [CGAN (Conditional GAN)](https://arxiv.org/abs/1411.1784)
  - [WGAN (Wasserstein GAN)](https://arxiv.org/abs/1701.07875)
  - [WGAN-GP (Wassertein GAN with Gradient Penalty)](https://arxiv.org/abs/1704.00028)
  - [DRAGAN (On Convergence and stability of GANS)](https://arxiv.org/pdf/1705.07215.pdf)
  - [Cramer GAN (The Cramer Distance as a Solution to Biased Wasserstein Gradients)](https://arxiv.org/abs/1705.10743)
  - [CWGAN-GP (Conditional Wassertein GAN with Gradient Penalty)](https://cameronfabbri.github.io/papers/conditionalWGAN.pdf)
  - [CTGAN (Conditional Tabular GAN)](https://arxiv.org/pdf/1907.00503.pdf)
  - [Gaussian Mixture](https://towardsdatascience.com/gaussian-mixture-models-explained-6986aaf5a95)

### Sequential data
  - [TimeGAN](https://papers.nips.cc/paper/2019/file/c9efe5f26cd17ba6216bbe2a7d26d490-Paper.pdf)
  - [DoppelGANger](https://dl.acm.org/doi/pdf/10.1145/3419394.3423643)


## Support
For support in using this library, please join our Discord server. Our Discord community is very friendly and great about quickly answering questions about the use and development of the library. [Click here to join our Discord community!](https://tiny.ydata.ai/dcai-ydata-synthetic)

## FAQs
Have a question? Check out the [Frequently Asked Questions](https://ydata.ai/resources/10-most-asked-questions-on-ydata-synthetic) about `ydata-synthetic`. If you feel something is missing, feel free to [book a beary informal chat with us](https://meetings.hubspot.com/fabiana-clemente).

## License
[MIT License](https://github.com/ydataai/ydata-synthetic/blob/master/LICENSE)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/ydataai/ydata-synthetic",
    "name": "ydata-synthetic",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.13,>=3.9",
    "maintainer_email": null,
    "keywords": "data science ydata",
    "author": "YData",
    "author_email": "community@ydata.ai",
    "download_url": "https://files.pythonhosted.org/packages/28/6e/74754a8203e914a4db0bbf4201aaa66f24d4942f1edbb8af7f5bdaa09347/ydata-synthetic-2.0.0.tar.gz",
    "platform": null,
    "description": "![](https://img.shields.io/github/workflow/status/ydataai/ydata-synthetic/prerelease)\n![](https://img.shields.io/pypi/status/ydata-synthetic)\n[![](https://pepy.tech/badge/ydata-synthetic)](https://pypi.org/project/ydata-synthetic/)\n![](https://img.shields.io/badge/python-3.9%20%7C%203.10%20%7C%203.11%20%7C%203.12-blue)\n[![](https://img.shields.io/pypi/v/ydata-synthetic)](https://pypi.org/project/ydata-synthetic/)\n![](https://img.shields.io/github/license/ydataai/ydata-synthetic)\n<img referrerpolicy=\"no-referrer-when-downgrade\" src=\"https://static.scarf.sh/a.png?x-pxid=ab07c7a0-c1ee-481e-9368-baf70185cf40\" />\n\n<p align=\"center\"><img width=\"300\" src=\"https://assets.ydata.ai/oss/ydata-synthetic_black.png\" alt=\"YData Synthetic Logo\"></p>\n\nJoin us on [![Discord](https://img.shields.io/badge/Discord-7289DA?style=for-the-badge&logo=discord&logoColor=white)](https://tiny.ydata.ai/dcai-ydata-synthetic)\n\n# YData Synthetic\n`YData-Synthetic` is an open-source package developed in 2020 with the primary goal of educating users about generative models for synthetic data generation. \nDesigned as a collection of models, it was intended for exploratory studies and educational purposes. \nHowever, it was not optimized for the quality, performance, and scalability needs typically required by organizations.\n\n!!! note \"Update\"\n    Even though the journey was fun, and we have learned a lot from the community it is now time to upgrade `ydata-synthetic`.\n    Heading towards the future of synthetic data generation we recommend users to transition to `ydata-sdk`, which provides a superior experience with enhanced performance,\n    precision, and ease of use, making it the preferred tool for synthetic data generation and a perfect introduction to Generative AI. \n\n## Synthetic data\n### What is synthetic data?\nSynthetic 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.\n\n### Why Synthetic Data?\nSynthetic data can be used for many applications:\n  - Privacy compliance for data-sharing and Machine Learning development\n  - Remove bias\n  - Balance datasets\n  - Augment datasets\n\n> **Looking for an end-to-end solution to Synthetic Data Generation?**<br>\n> [YData Fabric](https://ydata.ai/products/synthetic_data) enables the generation of high-quality datasets within a full UI experience, from data preparation to synthetic data generation and evaluation.<br>\n> Check out the [Community Version](https://ydata.ai/register).\n\n\n## ydata-synthetic to ydata-sdk\nWith the upcoming update of `ydata-synthetic`to `ydata-sdk`, users will now have access to a single API that automatically selects and optimizes\nthe best generative model for their data. This streamlined approach eliminates the need to choose between\nvarious models manually, as the API intelligently identifies the optimal model based on the specific dataset and use case.\n\nInstead of having to manually select from models such as:\n\n- [GAN](https://arxiv.org/abs/1406.2661)\n- [CGAN](https://arxiv.org/abs/1411.1784) (Conditional GAN)\n- [WGAN](https://arxiv.org/abs/1701.07875) (Wasserstein GAN)\n- [WGAN-GP](https://arxiv.org/abs/1704.00028) (Wassertein GAN with Gradient Penalty)\n- [DRAGAN](https://arxiv.org/pdf/1705.07215.pdf) (Deep Regret Analytic GAN)\n- [Cramer GAN](https://arxiv.org/abs/1705.10743) (Cramer Distance Solution to Biased Wasserstein Gradients)\n- [CWGAN-GP](https://cameronfabbri.github.io/papers/conditionalWGAN.pdf) (Conditional Wassertein GAN with Gradient Penalty)\n- [CTGAN](https://arxiv.org/pdf/1907.00503.pdf) (Conditional Tabular GAN)\n- [TimeGAN](https://papers.nips.cc/paper/2019/file/c9efe5f26cd17ba6216bbe2a7d26d490-Paper.pdf) (specifically for *time-series* data)\n- [DoppelGANger](https://dl.acm.org/doi/pdf/10.1145/3419394.3423643) (specifically for *time-series* data)\n\nThe new API handles model selection automatically, optimizing for the best performance in fidelity, utility, and privacy.\nThis significantly simplifies the synthetic data generation process, ensuring that users get the highest quality output without\nthe need for manual intervention and tiring hyperparameter tuning.\n\nAre you ready to learn more about synthetic data and the best-practices for synthetic data generation? \nFor more materials on [synthetic data generation with Python see the documentation](https://docs.fabric.ydata.ai/latest/sdk/).\n\n## Quickstart\nBinary installers for the latest released version are available at the [Python Package Index (PyPI).](https://pypi.org/project/ydata-sdk/)\n```commandline\npip install ydata-sdk\n```\n\n### The UI guide for synthetic data generation\n\nYData Fabric offers an UI interface to guide you through the steps and inputs to generate structure data.\nYou can experiment today with [YData Fabric by registering the Community version](https://ydata.ai/register).\n\n### Examples\nHere you can find usage examples of the package and models to synthesize tabular data.\n  - Tabular [synthetic data generation on Titanic Kaggle dataset](https://github.com/ydataai/ydata-sdk/blob/main/examples/synthesizers/regular_quickstart.py)\n  - Time Series [synthetic data generation]('https://github.com/ydataai/ydata-sdk/blob/main/examples/synthesizers/time_series_quickstart.py')\n  - More examples are continuously added and can be found in [examples directory](https://github.com/ydataai/ydata-sdk/tree/main/examples).\n\n### Datasets for you to experiment\nHere are some example datasets for you to try with the synthesizers:\n#### Tabular datasets\n- [Adult Census Income](https://www.kaggle.com/datasets/uciml/adult-census-income)\n- [Credit card fraud](https://www.kaggle.com/mlg-ulb/creditcardfraud)\n- [Cardiovascular Disease dataset](https://www.kaggle.com/datasets/sulianova/cardiovascular-disease-dataset)\n\n#### Sequential datasets\n- [Stock data](https://github.com/ydataai/ydata-synthetic/tree/master/data)\n- [FCC MBA data](https://github.com/ydataai/ydata-synthetic/tree/master/data)\n\n## Project Resources\n\nFind below useful literature of how to generate synthetic data and available generative models:\n\n### Tabular data\n  - [GAN](https://arxiv.org/abs/1406.2661)\n  - [CGAN (Conditional GAN)](https://arxiv.org/abs/1411.1784)\n  - [WGAN (Wasserstein GAN)](https://arxiv.org/abs/1701.07875)\n  - [WGAN-GP (Wassertein GAN with Gradient Penalty)](https://arxiv.org/abs/1704.00028)\n  - [DRAGAN (On Convergence and stability of GANS)](https://arxiv.org/pdf/1705.07215.pdf)\n  - [Cramer GAN (The Cramer Distance as a Solution to Biased Wasserstein Gradients)](https://arxiv.org/abs/1705.10743)\n  - [CWGAN-GP (Conditional Wassertein GAN with Gradient Penalty)](https://cameronfabbri.github.io/papers/conditionalWGAN.pdf)\n  - [CTGAN (Conditional Tabular GAN)](https://arxiv.org/pdf/1907.00503.pdf)\n  - [Gaussian Mixture](https://towardsdatascience.com/gaussian-mixture-models-explained-6986aaf5a95)\n\n### Sequential data\n  - [TimeGAN](https://papers.nips.cc/paper/2019/file/c9efe5f26cd17ba6216bbe2a7d26d490-Paper.pdf)\n  - [DoppelGANger](https://dl.acm.org/doi/pdf/10.1145/3419394.3423643)\n\n\n## Support\nFor support in using this library, please join our Discord server. Our Discord community is very friendly and great about quickly answering questions about the use and development of the library. [Click here to join our Discord community!](https://tiny.ydata.ai/dcai-ydata-synthetic)\n\n## FAQs\nHave a question? Check out the [Frequently Asked Questions](https://ydata.ai/resources/10-most-asked-questions-on-ydata-synthetic) about `ydata-synthetic`. If you feel something is missing, feel free to [book a beary informal chat with us](https://meetings.hubspot.com/fabiana-clemente).\n\n## License\n[MIT License](https://github.com/ydataai/ydata-synthetic/blob/master/LICENSE)\n",
    "bugtrack_url": null,
    "license": "https://github.com/ydataai/ydata-synthetic/blob/master/LICENSE",
    "summary": "Synthetic data generation methods with different synthetization methods.",
    "version": "2.0.0",
    "project_urls": {
        "Homepage": "https://github.com/ydataai/ydata-synthetic"
    },
    "split_keywords": [
        "data",
        "science",
        "ydata"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d91d07be73fd37b91e8c285ee037b561d2e03963c3c57861ab4ce01d28ee2be5",
                "md5": "b637e02e055db76319e5f6dac5d998c2",
                "sha256": "c7eb0c91f25e429d9d5552845786091ae5e5dcf988eadb1fcace82ff6648e88c"
            },
            "downloads": -1,
            "filename": "ydata_synthetic-2.0.0-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b637e02e055db76319e5f6dac5d998c2",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": "<3.13,>=3.9",
            "size": 15848,
            "upload_time": "2024-09-10T13:41:42",
            "upload_time_iso_8601": "2024-09-10T13:41:42.174166Z",
            "url": "https://files.pythonhosted.org/packages/d9/1d/07be73fd37b91e8c285ee037b561d2e03963c3c57861ab4ce01d28ee2be5/ydata_synthetic-2.0.0-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "286e74754a8203e914a4db0bbf4201aaa66f24d4942f1edbb8af7f5bdaa09347",
                "md5": "920d1fb2c86f43c15855ca48687032b7",
                "sha256": "b5bf6d4a92a56b673c3083955637162b7b747a1a25ad509a39f898751b52d514"
            },
            "downloads": -1,
            "filename": "ydata-synthetic-2.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "920d1fb2c86f43c15855ca48687032b7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.13,>=3.9",
            "size": 12427,
            "upload_time": "2024-09-10T13:41:43",
            "upload_time_iso_8601": "2024-09-10T13:41:43.232616Z",
            "url": "https://files.pythonhosted.org/packages/28/6e/74754a8203e914a4db0bbf4201aaa66f24d4942f1edbb8af7f5bdaa09347/ydata-synthetic-2.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-10 13:41:43",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "ydataai",
    "github_project": "ydata-synthetic",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "ydata-sdk",
            "specs": []
        }
    ],
    "lcname": "ydata-synthetic"
}
        
Elapsed time: 0.29990s