# Note  : *** the batch_size should be equal to the gpus number at the test phase!!! ***
data_cfg:
  dataset_name: Gait3D-Parsing
  dataset_root: your_path
  dataset_partition: ./datasets/Gait3D/Gait3D.json # Uses the same Gait3D.json as Gait3D dataset
  num_workers: 1
  remove_no_gallery: false
  test_dataset_name: Gait3D-Parsing

evaluator_cfg:
  enable_float16: false 
  restore_ckpt_strict: true
  restore_hint: 180000
  save_name: GaitGL
  eval_func: evaluate_Gait3D
  metric: cos
  sampler:
    batch_size: 4
    sample_type: all_ordered
    type: InferenceSampler
  transform:
    - type: BaseParsingCuttingTransform

loss_cfg:
  - loss_term_weight: 1.0
    margin: 0.2
    type: TripletLoss
    log_prefix: triplet
  - loss_term_weight: 1.0
    scale: 1
    type: CrossEntropyLoss
    log_accuracy: true
    label_smooth: false
    log_prefix: softmax

model_cfg:
  model: GaitGL
  channels: [32, 64, 128]
  class_num: 3000

optimizer_cfg:
  lr: 1.0e-3
  momentum: 0.9
  solver: Adam
  weight_decay: 5.0e-4

scheduler_cfg:
  gamma: 0.1
  milestones:
    - 30000
    - 90000
  scheduler: MultiStepLR

trainer_cfg:
  enable_float16: true
  with_test: false
  log_iter: 100
  restore_ckpt_strict: true
  restore_hint: 0
  save_iter: 30000
  save_name: GaitGL
  sync_BN: true
  total_iter: 180000
  sampler:
    batch_shuffle: true
    batch_size:
      - 32
      - 4
    frames_num_fixed: 30
    frames_skip_num: 0
    sample_type: fixed_ordered
    type: TripletSampler
  transform:
    - type: BaseParsingCuttingTransform
