# Components

- [GAN](https://hypergan.gitbook.io/hypergan/components/gan.md): Create the domain object map and connect all components.
- [Aligned GAN](https://hypergan.gitbook.io/hypergan/components/gan/aligned-gan.md)
- [Aligned Interpolated GAN](https://hypergan.gitbook.io/hypergan/components/gan/aligned-interpolated-gan.md)
- [Standard GAN](https://hypergan.gitbook.io/hypergan/components/gan/standard-gan.md)
- [Generator](https://hypergan.gitbook.io/hypergan/components/generator.md): Manages the network used to create fake samples.
- [Configurable Generator](https://hypergan.gitbook.io/hypergan/components/generator/configurable-generator.md)
- [DCGAN Generator](https://hypergan.gitbook.io/hypergan/components/generator/dcgan-generator.md)
- [Resizable Generator](https://hypergan.gitbook.io/hypergan/components/generator/resizable-generator.md)
- [Discriminator](https://hypergan.gitbook.io/hypergan/components/discriminator.md): Manages the network used to discriminate real/fake samples.
- [DCGAN Discriminator](https://hypergan.gitbook.io/hypergan/components/discriminator/dcgan-discriminator.md)
- [Configurable Discriminator](https://hypergan.gitbook.io/hypergan/components/discriminator/configurable-discriminator.md)
- [Layers](https://hypergan.gitbook.io/hypergan/components/layers.md)
- [add](https://hypergan.gitbook.io/hypergan/components/layers/add.md)
- [cat](https://hypergan.gitbook.io/hypergan/components/layers/cat.md)
- [channel\_attention](https://hypergan.gitbook.io/hypergan/components/layers/channel_attention.md)
- [ez\_norm](https://hypergan.gitbook.io/hypergan/components/layers/ez_norm.md)
- [layer](https://hypergan.gitbook.io/hypergan/components/layers/layer.md)
- [mul](https://hypergan.gitbook.io/hypergan/components/layers/mul.md)
- [multi\_head\_attention](https://hypergan.gitbook.io/hypergan/components/layers/multi_head_attention.md)
- [operation](https://hypergan.gitbook.io/hypergan/components/layers/operation.md)
- [pixel\_shuffle](https://hypergan.gitbook.io/hypergan/components/layers/pixel_shuffle.md)
- [residual](https://hypergan.gitbook.io/hypergan/components/layers/residual.md)
- [resizable\_stack](https://hypergan.gitbook.io/hypergan/components/layers/resizable_stack.md)
- [segment\_softmax](https://hypergan.gitbook.io/hypergan/components/layers/segment_softmax.md)
- [upsample](https://hypergan.gitbook.io/hypergan/components/layers/upsample.md)
- [Loss](https://hypergan.gitbook.io/hypergan/components/loss.md): Losses define how the error signals are interpreted for the two GAN players.
- [ALI Loss](https://hypergan.gitbook.io/hypergan/components/loss/ali-loss.md): layer add for configurable component
- [F Divergence Loss](https://hypergan.gitbook.io/hypergan/components/loss/f-divergence-loss.md)
- [Least Squares Loss](https://hypergan.gitbook.io/hypergan/components/loss/least-squares-loss.md)
- [Logistic Loss](https://hypergan.gitbook.io/hypergan/components/loss/logistic-loss.md)
- [QP Loss](https://hypergan.gitbook.io/hypergan/components/loss/qp-loss.md): https://arxiv.org/abs/1811.07296
- [RAGAN Loss](https://hypergan.gitbook.io/hypergan/components/loss/ragan-loss.md)
- [Realness Loss](https://hypergan.gitbook.io/hypergan/components/loss/realness-loss.md)
- [Softmax Loss](https://hypergan.gitbook.io/hypergan/components/loss/softmax-loss.md)
- [Standard Loss](https://hypergan.gitbook.io/hypergan/components/loss/standard-loss.md)
- [Wasserstein Loss](https://hypergan.gitbook.io/hypergan/components/loss/wasserstein-loss.md)
- [Latent](https://hypergan.gitbook.io/hypergan/components/latent.md): Describes a prior distribution that feeds to a generator
- [Uniform Distribution](https://hypergan.gitbook.io/hypergan/components/latent/uniform-distribution.md)
- [Trainer](https://hypergan.gitbook.io/hypergan/components/trainer.md): Trains the GAN object.
- [Alternating Trainer](https://hypergan.gitbook.io/hypergan/components/trainer/alternating-trainer.md)
- [Simultaneous Trainer](https://hypergan.gitbook.io/hypergan/components/trainer/simultaneous-trainer.md)
- [Balanced Trainer](https://hypergan.gitbook.io/hypergan/components/trainer/balanced-trainer.md)
- [Accumulate Gradient Trainer](https://hypergan.gitbook.io/hypergan/components/trainer/accumulate-gradient-trainer.md)
- [Optimizer](https://hypergan.gitbook.io/hypergan/components/optimizer.md): Optimizers move weights along gradients.  They are managed by the trainer.
- [Train Hook](https://hypergan.gitbook.io/hypergan/components/trainhook.md): Train hooks provide training events and loss modification to trainers.
- [Adversarial Norm](https://hypergan.gitbook.io/hypergan/components/trainhook/adversarial-norm.md): Custom research
- [Weight Constraint](https://hypergan.gitbook.io/hypergan/components/trainhook/weight-constraint.md)
- [Stabilizing Training](https://hypergan.gitbook.io/hypergan/components/trainhook/stabilizing-training.md): https://github.com/rothk/Stabilizing\_GANs
- [JARE](https://hypergan.gitbook.io/hypergan/components/trainhook/jare.md): https://arxiv.org/abs/1806.09235
- [Learning Rate Dropout](https://hypergan.gitbook.io/hypergan/components/trainhook/learning-rate-dropout.md): https://arxiv.org/abs/1912.00144
- [Gradient Penalty](https://hypergan.gitbook.io/hypergan/components/trainhook/gradient-penalty.md): https://arxiv.org/pdf/1704.00028.pdf
- [Rolling Memory](https://hypergan.gitbook.io/hypergan/components/trainhook/rolling-memory.md): (no paper)
- [Other GAN implementations](https://hypergan.gitbook.io/hypergan/components/other-gan-implementations.md): Linked with awe


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://hypergan.gitbook.io/hypergan/components.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
