Pidgan

Latest version: v0.1.3

Safety actively analyzes 623165 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

0.1.3

About

Relying on TensorFlow and Keras as backends, [pidgan](https://github.com/mbarbetti/pidgan) is a Python package designed to simplify the implementation and training of GAN-based models intended for High Energy Physics (HEP) applications.

Available modules

- [**`algorithms`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/algorithms)
- [`BceGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN.py) - 🧩
- [`BceGAN_ALP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN_ALP.py)
- [`BceGAN_GP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN_GP.py) - 🧩
- [`CramerGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/CramerGAN.py) - 🧩
- [`GAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/GAN.py) - 🧩
- [`LSGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/LSGAN.py) - 🧩
- [`WGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN.py) - 🧩
- [`WGAN_ALP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN_ALP.py)
- [`WGAN_GP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN_GP.py) - 🧩
- [**`callbacks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/callbacks)
- [**`schedulers `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/callbacks/schedulers)
- [`LearnRateBaseScheduler`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateBaseScheduler.py)
- [`LearnRateCosineDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateCosineDecay.py)
- [`LearnRateExpDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateExpDecay.py)
- [`LearnRateInvTimeDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateInvTimeDecay.py)
- [`LearnRatePiecewiseConstDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRatePiecewiseConstDecay.py)
- [`LearnRatePolynomialDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRatePolynomialDecay.py)
- [**`metrics`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/metrics)
- [`Accuracy`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/Accuracy.py)
- [`BaseMetric`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/BaseMetric.py)
- [`BinaryCrossentropy`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/BinaryCrossentropy.py)
- [`JSDivergence`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/JSDivergence.py)
- [`KLDivergence`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/KLDivergence.py)
- [`MeanAbsoluteError`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/MeanAbsoluteError.py)
- [`MeanSquaredError `](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/MeanSquaredError.py)
- [`RootMeanSquaredError `](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/RootMeanSquaredError.py)
- [`WassertsteinDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/WassertsteinDistance.py)
- [**`optimization`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization)
- [**`callbacks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization/callbacks)
- [`HopaasPruner`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/callbacks/HopaasPruner.py)
- [**`scores`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization/scores)
- [`BaseScore`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/BaseScore.py)
- [`EMDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/EMDistance.py)
- [`KSDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/KSDistance.py)
- [**`players`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players)
- [**`classifiers`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/classifiers)
- [`AuxClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/AuxClassifier.py)
- [`AuxMultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/AuxMultiClassifier.py)
- [`Classifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/Classifier.py)
- [`MultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/MultiClassifier.py)
- [`ResClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/ResClassifier.py)
- [`ResMultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/ResMultiClassifier.py)
- [**`discriminators`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/discriminators)
- [`AuxDiscriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/AuxDiscriminator.py)
- [`Discriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/Discriminator.py)
- [`ResDiscriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/ResDiscriminator.py)
- [**`generators`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/generators)
- [`Generator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/Generator.py)
- [`ResGenerator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/ResGenerator.py)
- [**`utils`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils)
- [**`checks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/checks)
- [`checkMetrics`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/checks/checkMetrics.py)
- [`checkOptimizer`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/checks/checkOptimizer.py)
- [**`preprocessing `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/preprocessing)
- [`invertColumnTransformer`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/preprocessing/invertColumnTransformer.py) - 🐛
- [**`reports `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/reports)
- [`HPSingleton`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/reports/HPSingleton.py)
- [`getSummaryHTML`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/reports/getSummaryHTML.py)

🐛 Bug fixes
- [`invertColumnTransformer`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/preprocessing/invertColumnTransformer.py)
> **Problem.** When the column indices passed to a transformer of the scikit-learn's [`ColumnTransformer`](https://scikit-learn.org/stable/modules/generated/sklearn.compose.ColumnTransformer.html) aren't adjacent, this custom function has an unexpected behavior mixing the output columns.
> **Solution.** The function has been rewritten from scratch trying to follow a logical procedure that should mitigate new issues with the inversion of the [`ColumnTransformer`](https://scikit-learn.org/stable/modules/generated/sklearn.compose.ColumnTransformer.html).

🧩 Minor changes
Since regularization terms applied to either generator or discriminator can be extremely data-dependent, if they are computed also during the test step, it can produce loss values significantly different from the ones resulting in the train step. Hence, the GAN `algorithms` were updated so that the various `_compute_*_loss` methods take an additional boolean argument, called `test`, to avoid to compute any regularization terms during the test steps.

‼️ Note
This is the first release for [Zenodo](https://zenodo.org).

0.1.2

About

Relying on TensorFlow and Keras as backends, [pidgan](https://github.com/mbarbetti/pidgan) is a Python package designed to simplify the implementation and training of GAN-based models intended for High Energy Physics (HEP) applications.

Available modules

- [**`algorithms`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/algorithms)
- [`BceGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN.py)
- [`BceGAN_ALP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN_ALP.py)
- [`BceGAN_GP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN_GP.py)
- [`CramerGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/CramerGAN.py)
- [`GAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/GAN.py) - ✨
- [`LSGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/LSGAN.py)
- [`WGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN.py)
- [`WGAN_ALP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN_ALP.py)
- [`WGAN_GP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN_GP.py)
- [**`callbacks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/callbacks)
- [**`schedulers `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/callbacks/schedulers)
- [`LearnRateBaseScheduler`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateBaseScheduler.py)
- [`LearnRateCosineDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateCosineDecay.py)
- [`LearnRateExpDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateExpDecay.py)
- [`LearnRateInvTimeDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateInvTimeDecay.py)
- [`LearnRatePiecewiseConstDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRatePiecewiseConstDecay.py)
- [`LearnRatePolynomialDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRatePolynomialDecay.py)
- [**`metrics`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/metrics)
- [`Accuracy`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/Accuracy.py)
- [`BaseMetric`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/BaseMetric.py)
- [`BinaryCrossentropy`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/BinaryCrossentropy.py)
- [`JSDivergence`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/JSDivergence.py)
- [`KLDivergence`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/KLDivergence.py)
- [`MeanAbsoluteError`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/MeanAbsoluteError.py)
- [`MeanSquaredError `](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/MeanSquaredError.py)
- [`RootMeanSquaredError `](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/RootMeanSquaredError.py)
- [`WassertsteinDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/WassertsteinDistance.py)
- [**`optimization`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization)
- [**`callbacks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization/callbacks)
- [`HopaasPruner`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/callbacks/HopaasPruner.py)
- [**`scores`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization/scores)
- [`BaseScore`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/BaseScore.py)
- [`EMDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/EMDistance.py)
- [`KSDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/KSDistance.py)
- [**`players`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players)
- [**`classifiers`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/classifiers)
- [`AuxClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/AuxClassifier.py) - ✨
- [`AuxMultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/AuxMultiClassifier.py) - ✨
- [`Classifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/Classifier.py) - ✨
- [`MultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/MultiClassifier.py) - ✨
- [`ResClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/ResClassifier.py) - ✨
- [`ResMultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/ResMultiClassifier.py) - ✨
- [**`discriminators`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/discriminators)
- [`AuxDiscriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/AuxDiscriminator.py) - ✨
- [`Discriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/Discriminator.py) - ✨
- [`ResDiscriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/ResDiscriminator.py) - ✨
- [**`generators`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/generators)
- [`Generator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/Generator.py) - ✨
- [`ResGenerator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/ResGenerator.py) - ✨
- [**`utils`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils)
- [**`checks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/checks)
- [`checkMetrics`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/checks/checkMetrics.py)
- [`checkOptimizer`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/checks/checkOptimizer.py)
- [**`preprocessing `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/preprocessing)
- [`invertColumnTransformer`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/preprocessing/invertColumnTransformer.py)
- [**`reports `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/reports)
- [`HPSingleton`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/reports/HPSingleton.py)
- [`getSummaryHTML`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/reports/getSummaryHTML.py)

✨ New features
- The [`Generator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/Generator.py) player is implemented via a neural network using the TensorFlow's [sequential model](https://www.tensorflow.org/guide/keras/sequential_model). To prevent the _vanishing gradient problem_ even when playing with deep models, we enabled the use of **skip connections**. The [`ResGenerator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/ResGenerator.py) player allows to use skip connections thanks to the TensorFlow's [functional API](https://www.tensorflow.org/guide/keras/functional_api).
- The [`Discriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/Discriminator.py) player is implemented via a neural network using the TensorFlow's [sequential model](https://www.tensorflow.org/guide/keras/sequential_model). To prevent the _vanishing gradient problem_ even when playing with deep models, we enabled the use of **skip connections**. The [`ResDiscriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/ResDiscriminator.py) and [`AuxDiscriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/AuxDiscriminator.py) players allow to use skip connections thanks to the TensorFlow's [functional API](https://www.tensorflow.org/guide/keras/functional_api).
- The [`Classifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/Classifier.py) and [`MultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/MultiClassifier.py) players are implemented via neural networks using the TensorFlow's [sequential model](https://www.tensorflow.org/guide/keras/sequential_model). To prevent the _vanishing gradient problem_ even when playing with deep models, we enabled the use of **skip connections**. The [`ResClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/ResClassifier.py), [`AuxClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/AuxClassifier.py), [`ResMultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/ResMultiClassifier.py) and [`AuxMultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/AuxMultiClassifier.py) players allow to use skip connections thanks to the TensorFlow's [functional API](https://www.tensorflow.org/guide/keras/functional_api).

0.1.1

About

Relying on TensorFlow and Keras as backends, [pidgan](https://github.com/mbarbetti/pidgan) is a Python package designed to simplify the implementation and training of GAN-based models intended for High Energy Physics (HEP) applications.

Available modules

- [**`algorithms`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/algorithms)
- [`BceGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN.py)
- [`BceGAN_ALP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN_ALP.py)
- [`BceGAN_GP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN_GP.py)
- [`CramerGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/CramerGAN.py)
- [`GAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/GAN.py)
- [`LSGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/LSGAN.py)
- [`WGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN.py)
- [`WGAN_ALP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN_ALP.py)
- [`WGAN_GP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN_GP.py)
- [**`callbacks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/callbacks)
- [**`schedulers `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/callbacks/schedulers)
- [`LearnRateBaseScheduler`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateBaseScheduler.py)
- [`LearnRateCosineDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateCosineDecay.py)
- [`LearnRateExpDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateExpDecay.py)
- [`LearnRateInvTimeDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateInvTimeDecay.py)
- [`LearnRatePiecewiseConstDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRatePiecewiseConstDecay.py)
- [`LearnRatePolynomialDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRatePolynomialDecay.py)
- [**`metrics`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/metrics)
- [`Accuracy`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/Accuracy.py)
- [`BaseMetric`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/BaseMetric.py)
- [`BinaryCrossentropy`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/BinaryCrossentropy.py)
- [`JSDivergence`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/JSDivergence.py)
- [`KLDivergence`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/KLDivergence.py)
- [`MeanAbsoluteError`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/MeanAbsoluteError.py)
- [`MeanSquaredError `](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/MeanSquaredError.py)
- [`RootMeanSquaredError `](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/RootMeanSquaredError.py)
- [`WassertsteinDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/WassertsteinDistance.py)
- [**`optimization`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization)
- [**`callbacks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization/callbacks)
- [`HopaasPruner`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/callbacks/HopaasPruner.py)
- [**`scores`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization/scores)
- [`BaseScore`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/BaseScore.py)
- [`EMDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/EMDistance.py)
- [`KSDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/KSDistance.py)
- [**`players`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players)
- [**`classifiers`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/classifiers)
- [`Classifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/Classifier.py)
- [`MultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/MultiClassifier.py)
- [**`discriminators`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/discriminators)
- [`AuxDiscriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/AuxDiscriminator.py)
- [`Discriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/Discriminator.py)
- [**`generators`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/generators)
- [`Generator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/Generator.py) - 🐛
- [**`utils`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils)
- [**`checks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/checks)
- [`checkMetrics`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/checks/checkMetrics.py)
- [`checkOptimizer`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/checks/checkOptimizer.py)
- [**`preprocessing `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/preprocessing)
- [`invertColumnTransformer`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/preprocessing/invertColumnTransformer.py)
- [**`reports `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/reports)
- [`HPSingleton`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/reports/HPSingleton.py)
- [`getSummaryHTML`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/reports/getSummaryHTML.py)

🐛 Bug fixes
- [`Generator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/Generator.py)
> **Problem.** Using the [`generate()`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/Generator.py#L107) method with `seed=None`, the generator player used to produce always the same output.
> **Solution.** The default seed value used by the [`tf.random.set_seed()`](https://www.tensorflow.org/api_docs/python/tf/random/set_seed) method has been removed.

0.1.0

About

Relying on TensorFlow and Keras as backends, [pidgan](https://github.com/mbarbetti/pidgan) is a Python package designed to simplify the implementation and training of GAN-based models intended for High Energy Physics (HEP) applications. Originally designed to develop parameterizations to _flash-simulate_ the LHCb Particle Identification system, pidgan can be used to describe a wide range of LHCb sub-detectors and succeeds in reproducing the high-level response of a generic HEP experiment. The pidgan package will be publicly presented during the [Fifth ML-INFN Hackathon: Advanced Level](https://agenda.infn.it/event/37650) where it will be used to parameterize high energy particle jets as detected and reconstructed by the CMS experiment.

Available modules

- [**`algorithms`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/algorithms)
- [`BceGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN.py)
- [`BceGAN_ALP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN_ALP.py)
- [`BceGAN_GP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/BceGAN_GP.py)
- [`CramerGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/CramerGAN.py)
- [`GAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/GAN.py)
- [`LSGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/LSGAN.py)
- [`WGAN`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN.py)
- [`WGAN_ALP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN_ALP.py)
- [`WGAN_GP`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/algorithms/WGAN_GP.py)
- [**`callbacks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/callbacks)
- [**`schedulers `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/callbacks/schedulers)
- [`LearnRateBaseScheduler`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateBaseScheduler.py)
- [`LearnRateCosineDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateCosineDecay.py)
- [`LearnRateExpDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateExpDecay.py)
- [`LearnRateInvTimeDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRateInvTimeDecay.py)
- [`LearnRatePiecewiseConstDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRatePiecewiseConstDecay.py)
- [`LearnRatePolynomialDecay`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/callbacks/schedulers/LearnRatePolynomialDecay.py)
- [**`metrics`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/metrics)
- [`Accuracy`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/Accuracy.py)
- [`BaseMetric`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/BaseMetric.py)
- [`BinaryCrossentropy`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/BinaryCrossentropy.py)
- [`JSDivergence`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/JSDivergence.py)
- [`KLDivergence`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/KLDivergence.py)
- [`MeanAbsoluteError`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/MeanAbsoluteError.py)
- [`MeanSquaredError `](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/MeanSquaredError.py)
- [`RootMeanSquaredError `](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/RootMeanSquaredError.py)
- [`WassertsteinDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/metrics/WassertsteinDistance.py)
- [**`optimization`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization)
- [**`callbacks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization/callbacks)
- [`HopaasPruner`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/callbacks/HopaasPruner.py)
- [**`scores`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/optimization/scores)
- [`BaseScore`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/BaseScore.py)
- [`EMDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/EMDistance.py)
- [`KSDistance`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/optimization/scores/KSDistance.py)
- [**`players`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players)
- [**`classifiers`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/classifiers)
- [`Classifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/Classifier.py)
- [`MultiClassifier`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/classifiers/MultiClassifier.py)
- [**`discriminators`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/discriminators)
- [`AuxDiscriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/AuxDiscriminator.py)
- [`Discriminator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/discriminators/Discriminator.py)
- [**`generators`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/players/generators)
- [`Generator`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/players/generators/Generator.py)
- [**`utils`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils)
- [**`checks`**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/checks)
- [`checkMetrics`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/checks/checkMetrics.py)
- [`checkOptimizer`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/checks/checkOptimizer.py)
- [**`preprocessing `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/preprocessing)
- [`invertColumnTransformer`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/preprocessing/invertColumnTransformer.py)
- [**`reports `**](https://github.com/mbarbetti/pidgan/tree/main/src/pidgan/utils/reports)
- [`HPSingleton`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/reports/HPSingleton.py)
- [`getSummaryHTML`](https://github.com/mbarbetti/pidgan/blob/main/src/pidgan/utils/reports/getSummaryHTML.py)

Links

Releases

Has known vulnerabilities

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.