diff options
-rw-r--r-- | training/conf/experiment/cnn_htr_char_lines.yaml | 149 | ||||
-rw-r--r-- | training/conf/experiment/cnn_htr_ctc_char_lines.yaml | 149 | ||||
-rw-r--r-- | training/conf/experiment/cnn_htr_wp_lines.yaml | 159 | ||||
-rw-r--r-- | training/conf/experiment/vqgan_htr_char_iam_lines.yaml | 88 | ||||
-rw-r--r-- | training/conf/experiment/vqgan_iam_lines.yaml | 103 |
5 files changed, 0 insertions, 648 deletions
diff --git a/training/conf/experiment/cnn_htr_char_lines.yaml b/training/conf/experiment/cnn_htr_char_lines.yaml deleted file mode 100644 index 759161c..0000000 --- a/training/conf/experiment/cnn_htr_char_lines.yaml +++ /dev/null @@ -1,149 +0,0 @@ -# @package _glbal_ - -defaults: - - override /mapping: null - - override /criterion: null - - override /datamodule: null - - override /network: null - - override /model: null - - override /lr_schedulers: null - - override /optimizers: null - - -epochs: &epochs 200 -ignore_index: &ignore_index 3 -num_classes: &num_classes 58 -max_output_len: &max_output_len 89 - -criterion: - _target_: text_recognizer.criterions.label_smoothing.LabelSmoothingLoss - smoothing: 0.1 - ignore_index: *ignore_index - -mapping: &mapping - mapping: - _target_: text_recognizer.data.emnist_mapping.EmnistMapping - -callbacks: - stochastic_weight_averaging: - _target_: pytorch_lightning.callbacks.StochasticWeightAveraging - swa_epoch_start: 0.75 - swa_lrs: 5.0e-5 - annealing_epochs: 10 - annealing_strategy: cos - device: null - -optimizers: - madgrad: - _target_: madgrad.MADGRAD - lr: 1.0e-4 - momentum: 0.9 - weight_decay: 0 - eps: 1.0e-6 - parameters: network - -lr_schedulers: - network: - _target_: torch.optim.lr_scheduler.OneCycleLR - max_lr: 3.0e-4 - total_steps: null - epochs: *epochs - steps_per_epoch: 90 - pct_start: 0.1 - anneal_strategy: cos - cycle_momentum: true - base_momentum: 0.85 - max_momentum: 0.95 - div_factor: 25 - final_div_factor: 1.0e4 - three_phase: false - last_epoch: -1 - verbose: false - # Non-class arguments - interval: step - monitor: val/loss - -datamodule: - _target_: text_recognizer.data.iam_lines.IAMLines - num_workers: 12 - train_fraction: 0.9 - pin_memory: true - transform: transform/iam_lines.yaml - test_transform: transform/iam_lines.yaml - target_transform: target_transform/word_pieces - <<: *mapping - -network: - _target_: text_recognizer.networks.conv_transformer.ConvTransformer - input_dims: [1, 56, 1024] - hidden_dim: &hidden_dim 256 - encoder_dim: 1280 - dropout_rate: 0.2 - num_classes: *num_classes - pad_index: *ignore_index - encoder: - _target_: text_recognizer.networks.encoders.efficientnet.EfficientNet - arch: b0 - out_channels: 1280 - stochastic_dropout_rate: 0.2 - bn_momentum: 0.99 - bn_eps: 1.0e-3 - decoder: - _target_: text_recognizer.networks.transformer.Decoder - dim: *hidden_dim - depth: 3 - num_heads: 4 - attn_fn: text_recognizer.networks.transformer.attention.Attention - attn_kwargs: - dim_head: 32 - dropout_rate: 0.2 - norm_fn: text_recognizer.networks.transformer.norm.ScaleNorm - ff_fn: text_recognizer.networks.transformer.mlp.FeedForward - ff_kwargs: - dim_out: null - expansion_factor: 4 - glu: true - dropout_rate: 0.2 - cross_attend: true - pre_norm: true - rotary_emb: - _target_: text_recognizer.networks.transformer.positional_encodings.rotary_embedding.RotaryEmbedding - dim: 32 - pixel_pos_embedding: - _target_: text_recognizer.networks.transformer.positional_encodings.PositionalEncoding2D - hidden_dim: *hidden_dim - max_h: 18 - max_w: 20 - token_pos_embedding: - _target_: text_recognizer.networks.transformer.positional_encodings.PositionalEncoding - hidden_dim: *hidden_dim - dropout_rate: 0.2 - max_len: *max_output_len - -model: - _target_: text_recognizer.models.transformer.TransformerLitModel - max_output_len: *max_output_len - start_token: <s> - end_token: <e> - pad_token: <p> - -trainer: - _target_: pytorch_lightning.Trainer - stochastic_weight_avg: true - auto_scale_batch_size: binsearch - auto_lr_find: false - gradient_clip_val: 0.5 - fast_dev_run: false - gpus: 1 - precision: 16 - max_epochs: *epochs - terminate_on_nan: true - weights_summary: null - limit_train_batches: 1.0 - limit_val_batches: 1.0 - limit_test_batches: 1.0 - resume_from_checkpoint: null - accumulate_grad_batches: 4 - overfit_batches: 0 - -summary: [[1, 1, 56, 1024], [1, 89]] diff --git a/training/conf/experiment/cnn_htr_ctc_char_lines.yaml b/training/conf/experiment/cnn_htr_ctc_char_lines.yaml deleted file mode 100644 index 965d35f..0000000 --- a/training/conf/experiment/cnn_htr_ctc_char_lines.yaml +++ /dev/null @@ -1,149 +0,0 @@ -# @package _global_ - -defaults: - - override /mapping: null - - override /callbacks: htr - - override /criterion: null - - override /datamodule: null - - override /network: null - - override /model: null - - override /lr_schedulers: null - - override /optimizers: null - - -epochs: &epochs 200 -ignore_index: &ignore_index 3 -num_classes: &num_classes 58 -max_output_len: &max_output_len 89 - -criterion: - _target_: text_recognizer.criterions.ctc.CTCLoss - blank: *ignore_index - -mapping: &mapping - mapping: - _target_: text_recognizer.data.mappings.emnist_mapping.EmnistMapping - -callbacks: - stochastic_weight_averaging: - _target_: pytorch_lightning.callbacks.StochasticWeightAveraging - swa_epoch_start: 0.75 - swa_lrs: 5.0e-5 - annealing_epochs: 10 - annealing_strategy: cos - device: null - -optimizers: - madgrad: - _target_: madgrad.MADGRAD - lr: 1.0e-4 - momentum: 0.9 - weight_decay: 0 - eps: 1.0e-6 - parameters: network - -lr_schedulers: - network: - _target_: torch.optim.lr_scheduler.OneCycleLR - max_lr: 3.0e-4 - total_steps: null - epochs: *epochs - steps_per_epoch: 90 - pct_start: 0.1 - anneal_strategy: cos - cycle_momentum: true - base_momentum: 0.85 - max_momentum: 0.95 - div_factor: 25 - final_div_factor: 1.0e4 - three_phase: false - last_epoch: -1 - verbose: false - # Non-class arguments - interval: step - monitor: val/loss - -datamodule: - _target_: text_recognizer.data.iam_lines.IAMLines - num_workers: 12 - batch_size: 16 - train_fraction: 0.9 - pin_memory: true - transform: transform/iam_lines.yaml - test_transform: transform/iam_lines.yaml - <<: *mapping - -network: - _target_: text_recognizer.networks.conv_transformer.ConvTransformer - input_dims: [1, 56, 1024] - hidden_dim: &hidden_dim 256 - encoder_dim: 1280 - dropout_rate: 0.2 - num_classes: *num_classes - pad_index: *ignore_index - encoder: - _target_: text_recognizer.networks.encoders.efficientnet.EfficientNet - arch: b0 - out_channels: 1280 - stochastic_dropout_rate: 0.2 - bn_momentum: 0.99 - bn_eps: 1.0e-3 - decoder: - _target_: text_recognizer.networks.transformer.Decoder - dim: *hidden_dim - depth: 3 - num_heads: 4 - attn_fn: text_recognizer.networks.transformer.attention.Attention - attn_kwargs: - dim_head: 32 - dropout_rate: 0.2 - norm_fn: text_recognizer.networks.transformer.norm.ScaleNorm - ff_fn: text_recognizer.networks.transformer.mlp.FeedForward - ff_kwargs: - dim_out: null - expansion_factor: 4 - glu: true - dropout_rate: 0.2 - cross_attend: true - pre_norm: true - rotary_emb: - _target_: text_recognizer.networks.transformer.positional_encodings.rotary_embedding.RotaryEmbedding - dim: 32 - pixel_pos_embedding: - _target_: text_recognizer.networks.transformer.positional_encodings.PositionalEncoding2D - hidden_dim: *hidden_dim - max_h: 1 - max_w: 32 - token_pos_embedding: - _target_: text_recognizer.networks.transformer.positional_encodings.PositionalEncoding - hidden_dim: *hidden_dim - dropout_rate: 0.2 - max_len: *max_output_len - -model: - _target_: text_recognizer.models.transformer.TransformerLitModel - max_output_len: *max_output_len - start_token: <s> - end_token: <e> - pad_token: <p> - -trainer: - _target_: pytorch_lightning.Trainer - stochastic_weight_avg: true - auto_scale_batch_size: binsearch - auto_lr_find: false - gradient_clip_val: 0.5 - fast_dev_run: false - gpus: 1 - precision: 16 - max_epochs: *epochs - terminate_on_nan: true - weights_summary: null - limit_train_batches: 1.0 - limit_val_batches: 1.0 - limit_test_batches: 1.0 - resume_from_checkpoint: null - accumulate_grad_batches: 4 - overfit_batches: 0 - -summary: [[1, 1, 56, 1024], [1, 89]] diff --git a/training/conf/experiment/cnn_htr_wp_lines.yaml b/training/conf/experiment/cnn_htr_wp_lines.yaml deleted file mode 100644 index 9f1164a..0000000 --- a/training/conf/experiment/cnn_htr_wp_lines.yaml +++ /dev/null @@ -1,159 +0,0 @@ -# @package _global_ - -defaults: - - override /mapping: null - - override /callbacks: htr - - override /criterion: null - - override /datamodule: null - - override /network: null - - override /model: null - - override /lr_schedulers: null - - override /optimizers: null - -epochs: &epochs 512 -ignore_index: &ignore_index 1000 -num_classes: &num_classes 1006 -max_output_len: &max_output_len 72 - -criterion: - # _target_: torch.nn.CrossEntropyLoss - # ignore_index: *ignore_index - _target_: text_recognizer.criterions.label_smoothing.LabelSmoothingLoss - smoothing: 0.1 - ignore_index: *ignore_index - -mapping: &mapping - mapping: - _target_: text_recognizer.data.mappings.word_piece_mapping.WordPieceMapping - num_features: 1000 - tokens: iamdb_1kwp_tokens_1000.txt - lexicon: iamdb_1kwp_lex_1000.txt - use_words: false - prepend_wordsep: false - special_tokens: [ <s>, <e>, <p> ] - -callbacks: - stochastic_weight_averaging: - _target_: pytorch_lightning.callbacks.StochasticWeightAveraging - swa_epoch_start: 0.75 - swa_lrs: 1.0e-5 - annealing_epochs: 10 - annealing_strategy: cos - device: null - -optimizers: - madgrad: - _target_: madgrad.MADGRAD - lr: 1.0e-4 - momentum: 0.9 - weight_decay: 0 - eps: 1.0e-6 - - parameters: network - -lr_schedulers: - network: - _target_: torch.optim.lr_scheduler.OneCycleLR - max_lr: 1.0e-4 - total_steps: null - epochs: *epochs - steps_per_epoch: 179 - pct_start: 0.03 - anneal_strategy: cos - cycle_momentum: true - base_momentum: 0.85 - max_momentum: 0.95 - div_factor: 25 - final_div_factor: 1.0e4 - three_phase: false - last_epoch: -1 - verbose: false - # Non-class arguments - interval: step - monitor: val/loss - -datamodule: - _target_: text_recognizer.data.iam_lines.IAMLines - num_workers: 12 - batch_size: 16 - train_fraction: 0.9 - pin_memory: true - transform: transform/iam_lines.yaml - test_transform: transform/iam_lines.yaml - target_transform: target_transform/word_piece_iam.yaml - <<: *mapping - -network: - _target_: text_recognizer.networks.conv_transformer.ConvTransformer - input_dims: [1, 56, 1024] - hidden_dim: &hidden_dim 256 - encoder_dim: 1280 - dropout_rate: 0.2 - num_classes: *num_classes - pad_index: *ignore_index - encoder: - _target_: text_recognizer.networks.encoders.efficientnet.EfficientNet - arch: b0 - out_channels: 1280 - stochastic_dropout_rate: 0.2 - bn_momentum: 0.99 - bn_eps: 1.0e-3 - decoder: - _target_: text_recognizer.networks.transformer.Decoder - dim: *hidden_dim - depth: 3 - num_heads: 4 - attn_fn: text_recognizer.networks.transformer.attention.Attention - attn_kwargs: - dim_head: 32 - dropout_rate: 0.2 - norm_fn: text_recognizer.networks.transformer.norm.ScaleNorm - ff_fn: text_recognizer.networks.transformer.mlp.FeedForward - ff_kwargs: - dim_out: null - expansion_factor: 4 - glu: true - dropout_rate: 0.2 - cross_attend: true - pre_norm: true - rotary_emb: - _target_: text_recognizer.networks.transformer.positional_encodings.rotary.RotaryEmbedding - dim: 32 - pixel_pos_embedding: - _target_: text_recognizer.networks.transformer.positional_encodings.PositionalEncoding2D - hidden_dim: *hidden_dim - max_h: 1 - max_w: 32 - token_pos_embedding: - _target_: text_recognizer.networks.transformer.positional_encodings.PositionalEncoding - hidden_dim: *hidden_dim - dropout_rate: 0.2 - max_len: *max_output_len - -model: - _target_: text_recognizer.models.transformer.TransformerLitModel - max_output_len: *max_output_len - start_token: <s> - end_token: <e> - pad_token: <p> - -trainer: - _target_: pytorch_lightning.Trainer - stochastic_weight_avg: true - auto_scale_batch_size: binsearch - auto_lr_find: false - gradient_clip_val: 0.5 - fast_dev_run: false - gpus: 1 - precision: 16 - max_epochs: *epochs - terminate_on_nan: true - weights_summary: null - limit_train_batches: 1.0 - limit_val_batches: 1.0 - limit_test_batches: 1.0 - resume_from_checkpoint: null - accumulate_grad_batches: 4 - overfit_batches: 0 - -summary: [[1, 1, 56, 1024], [1, 89]] diff --git a/training/conf/experiment/vqgan_htr_char_iam_lines.yaml b/training/conf/experiment/vqgan_htr_char_iam_lines.yaml deleted file mode 100644 index 27fdfda..0000000 --- a/training/conf/experiment/vqgan_htr_char_iam_lines.yaml +++ /dev/null @@ -1,88 +0,0 @@ -defaults: - - override /mapping: null - - override /criterion: null - - override /datamodule: null - - override /network: null - - override /model: null - - override /lr_schedulers: null - # - override /optimizers: null - - -criterion: - _target_: text_recognizer.criterions.label_smoothing.LabelSmoothingLoss - smoothing: 0.1 - ignore_index: 3 - -mapping: - _target_: text_recognizer.data.emnist_mapping.EmnistMapping - # extra_symbols: [ "\n" ] - -lr_schedulers: - network: - _target_: torch.optim.lr_scheduler.CosineAnnealingLR - T_max: 512 - eta_min: 4.5e-6 - last_epoch: -1 - interval: epoch - monitor: val/loss - -datamodule: - _target_: text_recognizer.data.iam_lines.IAMLines - batch_size: 4 - num_workers: 12 - train_fraction: 0.8 - augment: false - pin_memory: false - - -# optimizers: -# - _target_: madgrad.MADGRAD -# lr: 2.0e-4 -# momentum: 0.9 -# weight_decay: 0 -# eps: 1.0e-7 -# parameters: network - -network: - _target_: text_recognizer.networks.vq_transformer.VqTransformer - input_dims: [1, 56, 1024] - encoder_dim: 32 - hidden_dim: 32 - dropout_rate: 0.1 - num_classes: 58 - pad_index: 3 - no_grad: true - decoder: - _target_: text_recognizer.networks.transformer.Decoder - dim: 32 - depth: 4 - num_heads: 8 - attn_fn: text_recognizer.networks.transformer.attention.Attention - attn_kwargs: - dim_head: 32 - dropout_rate: 0.2 - norm_fn: torch.nn.LayerNorm - ff_fn: text_recognizer.networks.transformer.mlp.FeedForward - ff_kwargs: - dim_out: null - expansion_factor: 4 - glu: true - dropout_rate: 0.2 - cross_attend: true - pre_norm: true - rotary_emb: null - pretrained_encoder_path: "training/logs/runs/2021-09-26/23-27-57" - -model: - _target_: text_recognizer.models.vq_transformer.VqTransformerLitModel - start_token: <s> - end_token: <e> - pad_token: <p> - max_output_len: 89 # 451 - alpha: 0.0 - -trainer: - max_epochs: 512 - # limit_train_batches: 0.1 - # limit_val_batches: 0.1 - # gradient_clip_val: 0.5 diff --git a/training/conf/experiment/vqgan_iam_lines.yaml b/training/conf/experiment/vqgan_iam_lines.yaml deleted file mode 100644 index 890948c..0000000 --- a/training/conf/experiment/vqgan_iam_lines.yaml +++ /dev/null @@ -1,103 +0,0 @@ -defaults: - - override /network: null - - override /criterion: null - - override /datamodule: null - - override /model: lit_vqgan - - override /callbacks: wandb_vae - - override /optimizers: null - - override /lr_schedulers: null - -criterion: - _target_: text_recognizer.criterions.vqgan_loss.VQGANLoss - reconstruction_loss: - _target_: torch.nn.BCEWithLogitsLoss - reduction: mean - discriminator: - _target_: text_recognizer.criterions.n_layer_discriminator.NLayerDiscriminator - in_channels: 1 - num_channels: 64 - num_layers: 3 - commitment_weight: 0.25 - discriminator_weight: 0.8 - discriminator_factor: 1.0 - discriminator_iter_start: 1.5e4 - -datamodule: - _target_: text_recognizer.data.iam_lines.IAMLines - batch_size: 24 - num_workers: 12 - train_fraction: 0.8 - augment: true - pin_memory: false - -lr_schedulers: - generator: - _target_: torch.optim.lr_scheduler.CosineAnnealingLR - T_max: 64 - eta_min: 4.5e-6 - last_epoch: -1 - interval: epoch - monitor: val/loss -# discriminator: -# _target_: torch.optim.lr_scheduler.CosineAnnealingLR -# T_max: 64 -# eta_min: 0.0 -# last_epoch: -1 -# -# interval: epoch -# monitor: val/loss - -optimizers: - generator: - _target_: madgrad.MADGRAD - lr: 1.0e-4 - momentum: 0.5 - weight_decay: 0 - eps: 1.0e-7 - parameters: network - - discriminator: - _target_: madgrad.MADGRAD - lr: 4.5e-6 - momentum: 0.5 - weight_decay: 0 - eps: 1.0e-6 - parameters: loss_fn.discriminator - -network: - _target_: text_recognizer.networks.vqvae.vqvae.VQVAE - hidden_dim: 256 - embedding_dim: 32 - num_embeddings: 512 - decay: 0.99 - encoder: - _target_: text_recognizer.networks.vqvae.encoder.Encoder - in_channels: 1 - hidden_dim: 32 - channels_multipliers: [1, 4, 8] - dropout_rate: 0.0 - activation: mish - use_norm: true - num_residuals: 2 - residual_channels: 32 - decoder: - _target_: text_recognizer.networks.vqvae.decoder.Decoder - out_channels: 1 - hidden_dim: 32 - channels_multipliers: [8, 4, 1] - dropout_rate: 0.0 - activation: mish - use_norm: true - num_residuals: 2 - residual_channels: 32 - -trainer: - max_epochs: 64 - # limit_train_batches: 0.1 - # limit_val_batches: 0.1 - # gradient_clip_val: 100 - -# tune: false -# train: true -# test: false -summary: [2, 1, 56, 1024] |