summaryrefslogtreecommitdiff
path: root/training/experiments
diff options
context:
space:
mode:
Diffstat (limited to 'training/experiments')
-rw-r--r--training/experiments/default_config_emnist.yml70
-rw-r--r--training/experiments/embedding_experiment.yml64
-rw-r--r--training/experiments/sample_experiment.yml99
3 files changed, 233 insertions, 0 deletions
diff --git a/training/experiments/default_config_emnist.yml b/training/experiments/default_config_emnist.yml
new file mode 100644
index 0000000..bf2ed0a
--- /dev/null
+++ b/training/experiments/default_config_emnist.yml
@@ -0,0 +1,70 @@
+dataset: EmnistDataset
+dataset_args:
+ sample_to_balance: true
+ subsample_fraction: 0.33
+ transform: null
+ target_transform: null
+ seed: 4711
+
+data_loader_args:
+ splits: [train, val]
+ shuffle: true
+ num_workers: 8
+ cuda: true
+
+model: CharacterModel
+metrics: [accuracy]
+
+network_args:
+ in_channels: 1
+ num_classes: 80
+ depths: [2]
+ block_sizes: [256]
+
+train_args:
+ batch_size: 256
+ epochs: 5
+
+criterion: CrossEntropyLoss
+criterion_args:
+ weight: null
+ ignore_index: -100
+ reduction: mean
+
+optimizer: AdamW
+optimizer_args:
+ lr: 1.e-03
+ betas: [0.9, 0.999]
+ eps: 1.e-08
+ # weight_decay: 5.e-4
+ amsgrad: false
+
+lr_scheduler: OneCycleLR
+lr_scheduler_args:
+ max_lr: 1.e-03
+ epochs: 5
+ anneal_strategy: linear
+
+
+callbacks: [Checkpoint, ProgressBar, EarlyStopping, WandbCallback, WandbImageLogger, OneCycleLR]
+callback_args:
+ Checkpoint:
+ monitor: val_accuracy
+ ProgressBar:
+ epochs: 5
+ log_batch_frequency: 100
+ EarlyStopping:
+ monitor: val_loss
+ min_delta: 0.0
+ patience: 3
+ mode: min
+ WandbCallback:
+ log_batch_frequency: 10
+ WandbImageLogger:
+ num_examples: 4
+ OneCycleLR:
+ null
+verbosity: 1 # 0, 1, 2
+resume_experiment: null
+train: true
+validation_metric: val_accuracy
diff --git a/training/experiments/embedding_experiment.yml b/training/experiments/embedding_experiment.yml
new file mode 100644
index 0000000..1e5f941
--- /dev/null
+++ b/training/experiments/embedding_experiment.yml
@@ -0,0 +1,64 @@
+experiment_group: Embedding Experiments
+experiments:
+ - train_args:
+ transformer_model: false
+ batch_size: &batch_size 256
+ max_epochs: &max_epochs 32
+ input_shape: [[1, 28, 28]]
+ dataset:
+ type: EmnistDataset
+ args:
+ sample_to_balance: true
+ subsample_fraction: null
+ transform: null
+ target_transform: null
+ seed: 4711
+ train_args:
+ num_workers: 8
+ train_fraction: 0.85
+ batch_size: *batch_size
+ model: CharacterModel
+ metrics: []
+ network:
+ type: DenseNet
+ args:
+ growth_rate: 4
+ block_config: [4, 4]
+ in_channels: 1
+ base_channels: 24
+ num_classes: 128
+ bn_size: 4
+ dropout_rate: 0.1
+ classifier: true
+ activation: elu
+ criterion:
+ type: EmbeddingLoss
+ args:
+ margin: 0.2
+ type_of_triplets: semihard
+ optimizer:
+ type: AdamW
+ args:
+ lr: 1.e-02
+ betas: [0.9, 0.999]
+ eps: 1.e-08
+ weight_decay: 5.e-4
+ amsgrad: false
+ lr_scheduler:
+ type: CosineAnnealingLR
+ args:
+ T_max: *max_epochs
+ callbacks: [Checkpoint, ProgressBar, WandbCallback]
+ callback_args:
+ Checkpoint:
+ monitor: val_loss
+ mode: min
+ ProgressBar:
+ epochs: *max_epochs
+ WandbCallback:
+ log_batch_frequency: 10
+ verbosity: 1 # 0, 1, 2
+ resume_experiment: null
+ train: true
+ test: true
+ test_metric: mean_average_precision_at_r
diff --git a/training/experiments/sample_experiment.yml b/training/experiments/sample_experiment.yml
new file mode 100644
index 0000000..8f94475
--- /dev/null
+++ b/training/experiments/sample_experiment.yml
@@ -0,0 +1,99 @@
+experiment_group: Sample Experiments
+experiments:
+ - train_args:
+ batch_size: 256
+ max_epochs: &max_epochs 32
+ dataset:
+ type: EmnistDataset
+ args:
+ sample_to_balance: true
+ subsample_fraction: null
+ transform: null
+ target_transform: null
+ seed: 4711
+ train_args:
+ num_workers: 6
+ train_fraction: 0.8
+
+ model: CharacterModel
+ metrics: [accuracy]
+ # network: MLP
+ # network_args:
+ # input_size: 784
+ # hidden_size: 512
+ # output_size: 80
+ # num_layers: 5
+ # dropout_rate: 0.2
+ # activation_fn: SELU
+ network:
+ type: ResidualNetwork
+ args:
+ in_channels: 1
+ num_classes: 80
+ depths: [2, 2]
+ block_sizes: [64, 64]
+ activation: leaky_relu
+ # network:
+ # type: WideResidualNetwork
+ # args:
+ # in_channels: 1
+ # num_classes: 80
+ # depth: 10
+ # num_layers: 3
+ # width_factor: 4
+ # dropout_rate: 0.2
+ # activation: SELU
+ # network: LeNet
+ # network_args:
+ # output_size: 62
+ # activation_fn: GELU
+ criterion:
+ type: CrossEntropyLoss
+ args:
+ weight: null
+ ignore_index: -100
+ reduction: mean
+ optimizer:
+ type: AdamW
+ args:
+ lr: 1.e-02
+ betas: [0.9, 0.999]
+ eps: 1.e-08
+ # weight_decay: 5.e-4
+ amsgrad: false
+ # lr_scheduler:
+ # type: OneCycleLR
+ # args:
+ # max_lr: 1.e-03
+ # epochs: *max_epochs
+ # anneal_strategy: linear
+ lr_scheduler:
+ type: CosineAnnealingLR
+ args:
+ T_max: *max_epochs
+ interval: epoch
+ swa_args:
+ start: 2
+ lr: 5.e-2
+ callbacks: [Checkpoint, ProgressBar, WandbCallback, WandbImageLogger, EarlyStopping]
+ callback_args:
+ Checkpoint:
+ monitor: val_accuracy
+ ProgressBar:
+ epochs: null
+ log_batch_frequency: 100
+ EarlyStopping:
+ monitor: val_loss
+ min_delta: 0.0
+ patience: 5
+ mode: min
+ WandbCallback:
+ log_batch_frequency: 10
+ WandbImageLogger:
+ num_examples: 4
+ use_transpose: true
+ verbosity: 0 # 0, 1, 2
+ resume_experiment: null
+ train: true
+ test: true
+ test_metric: test_accuracy