|
defaults: |
|
- _self_ |
|
- task: mimicgen_voxel_abs |
|
|
|
name: equi_diff_voxel |
|
_target_: equi_diffpo.workspace.train_equi_workspace.TrainEquiWorkspace |
|
|
|
shape_meta: ${task.shape_meta} |
|
exp_name: "default" |
|
|
|
task_name: stack_d1 |
|
n_demo: 200 |
|
horizon: 16 |
|
n_obs_steps: 1 |
|
n_action_steps: 8 |
|
n_latency_steps: 0 |
|
dataset_obs_steps: ${n_obs_steps} |
|
past_action_visible: False |
|
|
|
dataset_path: data/robomimic/datasets/${task_name}/${task_name}_voxel_abs.hdf5 |
|
|
|
policy: |
|
_target_: equi_diffpo.policy.diffusion_equi_unet_voxel_policy.DiffusionEquiUNetPolicyVoxel |
|
|
|
shape_meta: ${shape_meta} |
|
|
|
noise_scheduler: |
|
_target_: diffusers.schedulers.scheduling_ddpm.DDPMScheduler |
|
num_train_timesteps: 100 |
|
beta_start: 0.0001 |
|
beta_end: 0.02 |
|
beta_schedule: squaredcos_cap_v2 |
|
variance_type: fixed_small |
|
clip_sample: True |
|
prediction_type: epsilon |
|
|
|
horizon: ${horizon} |
|
n_action_steps: ${eval:'${n_action_steps}+${n_latency_steps}'} |
|
n_obs_steps: ${n_obs_steps} |
|
num_inference_steps: 100 |
|
crop_shape: [58, 58, 58] |
|
|
|
diffusion_step_embed_dim: 128 |
|
enc_n_hidden: 128 |
|
down_dims: [256, 512, 1024] |
|
kernel_size: 5 |
|
n_groups: 8 |
|
cond_predict_scale: True |
|
rot_aug: True |
|
|
|
|
|
|
|
|
|
ema: |
|
_target_: equi_diffpo.model.diffusion.ema_model.EMAModel |
|
update_after_step: 0 |
|
inv_gamma: 1.0 |
|
power: 0.75 |
|
min_value: 0.0 |
|
max_value: 0.9999 |
|
|
|
dataloader: |
|
batch_size: 64 |
|
num_workers: 16 |
|
shuffle: True |
|
pin_memory: True |
|
persistent_workers: True |
|
drop_last: true |
|
|
|
val_dataloader: |
|
batch_size: 64 |
|
num_workers: 16 |
|
shuffle: False |
|
pin_memory: True |
|
persistent_workers: True |
|
|
|
optimizer: |
|
betas: [0.95, 0.999] |
|
eps: 1.0e-08 |
|
learning_rate: 0.0001 |
|
weight_decay: 1.0e-06 |
|
|
|
training: |
|
device: "cuda:0" |
|
seed: 0 |
|
debug: False |
|
resume: True |
|
|
|
lr_scheduler: cosine |
|
lr_warmup_steps: 500 |
|
num_epochs: ${eval:'50000 / ${n_demo}'} |
|
gradient_accumulate_every: 1 |
|
|
|
|
|
use_ema: True |
|
|
|
|
|
rollout_every: ${eval:'1000 / ${n_demo}'} |
|
checkpoint_every: ${eval:'1000 / ${n_demo}'} |
|
val_every: 1 |
|
sample_every: 5 |
|
|
|
max_train_steps: null |
|
max_val_steps: null |
|
|
|
tqdm_interval_sec: 1.0 |
|
|
|
logging: |
|
project: equi_diff_${task_name}_voxel |
|
resume: True |
|
mode: online |
|
name: equi_diff_voxel_${n_demo} |
|
tags: ["${name}", "${task_name}", "${exp_name}"] |
|
id: null |
|
group: null |
|
|
|
checkpoint: |
|
topk: |
|
monitor_key: test_mean_score |
|
mode: max |
|
k: 5 |
|
format_str: 'epoch={epoch:04d}-test_mean_score={test_mean_score:.3f}.ckpt' |
|
save_last_ckpt: True |
|
save_last_snapshot: False |
|
|
|
multi_run: |
|
run_dir: data/outputs/${now:%Y.%m.%d}/${now:%H.%M.%S}_${name}_${task_name} |
|
wandb_name_base: ${now:%Y.%m.%d-%H.%M.%S}_${name}_${task_name} |
|
|
|
hydra: |
|
job: |
|
override_dirname: ${name} |
|
run: |
|
dir: data/outputs/${now:%Y.%m.%d}/${now:%H.%M.%S}_${name}_${task_name} |
|
sweep: |
|
dir: data/outputs/${now:%Y.%m.%d}/${now:%H.%M.%S}_${name}_${task_name} |
|
subdir: ${hydra.job.num} |
|
|