-
Notifications
You must be signed in to change notification settings - Fork 2
/
train_config.yaml
67 lines (57 loc) · 1.53 KB
/
train_config.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
experiment_name: null # null: use current timestamp as experiment name ; str to specify a desired experiment name
seed: 42
DATA:
product_imgs_dir: /home/master/dataset/train/product_images
df_products_fn: processed_data/{}/df_products.csv # {} - placeholder for the split set, i.e. train, valid, or test
df_outfits_fn: processed_data/{}/df_outfits.csv # {} - placeholder for the split set, i.e. train, valid, or test
cache_dir: processed_data/
imgs_ext: .jpg
batch_size: 128
num_workers: 4
INPUT_MODALITY: multimodal # image or text or multimodal
TOKENIZER:
run: False
max_length: 100
save_path: results/{}/tokenizer
TEXT_ENCODER:
pretrained: True
finetune: False
finetune_start_block: 5 # there are 0-5 blocks
l2_norm: True
projection_size: 1024
dropout: 0.1
IMAGE_ENCODER:
pretrained: True
finetune: False
finetune_start_block: 7 # there are 0-8 blocks
l2_norm: True
projection_size: 1024
dropout: 0.1
MULTIMODAL_ENCODER:
embedding_size: 1024
l2_norm: True
dropout: 0.1
TRAINER:
n_epochs: 30
log_interval: 50
save_dir: results/
resume_path: null # null: start training from the beginning; str (model_checkpoint_path) for resume training
max_iter_per_epoch: null # null: loop through whole dataloader in epoch; number greater than zero to limit the number of iterations per epoch
LOSS:
margin: 1.0
OPTIMIZER:
lr: 0.001
weight_decay: 0.0001
TRANSFORMS:
crop: 224
scale:
- 0.8
- 1.0
mean:
- 0.485
- 0.456
- 0.406
std:
- 0.229
- 0.224
- 0.225