global:
  name: pretrain-vision-model-sv
  phase: train
  stage: pretrain-vision
  workdir: workdir
  seed: ~
 
dataset:
  train: {
    roots: ['data/training/MJ/MJ_train/', 
            'data/training/MJ/MJ_test/', 
            'data/training/MJ/MJ_valid/', 
            'data/training/ST'],
    batch_size: 384
  }
  test: {
    roots: ['data/evaluation/IIIT5k_3000', 
            'data/evaluation/SVT', 
            'data/evaluation/SVTP',
            'data/evaluation/IC13_857',
            'data/evaluation/IC15_1811',
            'data/evaluation/CUTE80'],
    batch_size: 384
  }
  data_aug: True
  multiscales: False
  num_workers: 14

training:
  epochs: 8
  show_iters: 50
  eval_iters: 3000
  save_iters: 3000

optimizer:
  type: Adam
  true_wd: False
  wd: 0.0
  bn_wd: False
  clip_grad: 20
  lr: 0.0001
  args: {
    betas: !!python/tuple [0.9, 0.999], # for default Adam 
  }
  scheduler: {
    periods: [6, 2],
    gamma: 0.1,
  }

model:
  name: 'abinet.modules.model_vision.BaseVision'
  checkpoint: ~
  vision: {
    loss_weight: 1.,
    attention: 'attention',
    backbone: 'transformer',
    backbone_ln: 2,
  }
