diff options
author | Gustaf Rydholm <gustaf.rydholm@gmail.com> | 2021-08-04 22:15:36 +0200 |
---|---|---|
committer | Gustaf Rydholm <gustaf.rydholm@gmail.com> | 2021-08-04 22:15:36 +0200 |
commit | 1bccf71cf4eec335001b50a8fbc0c991d0e6d13a (patch) | |
tree | dd58219f94836a857dfbe794585d6f68ee28dbdc /text_recognizer/networks/vqvae/norm.py | |
parent | efe850821b88306481ab5aa2a5f79a2581e4458c (diff) |
Add conv attention, up and downsampling to vqvae module
Diffstat (limited to 'text_recognizer/networks/vqvae/norm.py')
-rw-r--r-- | text_recognizer/networks/vqvae/norm.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/text_recognizer/networks/vqvae/norm.py b/text_recognizer/networks/vqvae/norm.py new file mode 100644 index 0000000..df66efc --- /dev/null +++ b/text_recognizer/networks/vqvae/norm.py @@ -0,0 +1,20 @@ +"""Normalizer block.""" +import attr +from torch import nn, Tensor + + +@attr.s +class Normalize(nn.Module): + num_channels: int = attr.ib() + norm: nn.GroupNorm = attr.ib(init=False) + + def __attrs_post_init__(self) -> None: + """Post init configuration.""" + super().__init__() + self.norm = nn.GroupNorm( + num_groups=32, num_channels=self.num_channels, eps=1.0e-6, affine=True + ) + + def forward(self, x: Tensor) -> Tensor: + """Applies group normalization.""" + return self.norm(x) |