protomotions.agents.supervised.masked_mimic_config module#
MaskedMimic configs for the generic supervised agent.
- class protomotions.agents.supervised.masked_mimic_config.KLDScheduleConfig(
- init_kld_coeff=0.0001,
- end_kld_coeff=0.01,
- start_epoch=3000,
- end_epoch=6000,
Bases:
objectKL coefficient schedule for the MaskedMimic VAE posterior loss.
- Attributes:
init_kld_coeff: Initial KL divergence coefficient. end_kld_coeff: Final KL divergence coefficient. start_epoch: Epoch to start KL coefficient annealing. end_epoch: Epoch to end KL coefficient annealing.
- __init__(
- init_kld_coeff=0.0001,
- end_kld_coeff=0.01,
- start_epoch=3000,
- end_epoch=6000,
- class protomotions.agents.supervised.masked_mimic_config.VAENoiseType(value)[source]#
Bases:
EnumNoise distribution used for MaskedMimic latent sampling.
- NORMAL = 'normal'#
- UNIFORM = 'uniform'#
- ZEROS = 'zeros'#
- class protomotions.agents.supervised.masked_mimic_config.MaskedMimicVAEConfig(
- kld_schedule=<factory>,
- vae_latent_dim=64,
- vae_noise_type=VAENoiseType.NORMAL,
Bases:
objectVAE settings for the MaskedMimic learned-prior student.
- Attributes:
kld_schedule: KL divergence annealing schedule. vae_latent_dim: Dimension of VAE latent space. vae_noise_type: Type of latent noise: normal, uniform, or zeros.
- kld_schedule: KLDScheduleConfig#
- vae_noise_type: VAENoiseType = 'normal'#
- __init__(
- kld_schedule=<factory>,
- vae_latent_dim=64,
- vae_noise_type=VAENoiseType.NORMAL,
- class protomotions.agents.supervised.masked_mimic_config.MaskedMimicModelConfig(
- _target_='protomotions.agents.supervised.masked_mimic_model.MaskedMimicModel',
- in_keys=<factory>,
- out_keys=<factory>,
- encoder=<factory>,
- prior=<factory>,
- trunk=<factory>,
- vae=<factory>,
- optimizer=<factory>,
Bases:
BaseModelConfigMaskedMimic VAE learned-prior model configuration.
- Attributes:
in_keys: Input keys. out_keys: Output keys. encoder: Privileged encoder network. prior: Deployable prior network. trunk: Latent-to-action decoder trunk. vae: MaskedMimic VAE settings. optimizer: Optimizer settings for supervised training.
- encoder: ModuleContainerConfig#
- prior: ModuleContainerConfig#
- trunk: ModuleContainerConfig#
- optimizer: OptimizerConfig#
- __init__(
- _target_='protomotions.agents.supervised.masked_mimic_model.MaskedMimicModel',
- in_keys=<factory>,
- out_keys=<factory>,
- encoder=<factory>,
- prior=<factory>,
- trunk=<factory>,
- vae=<factory>,
- optimizer=<factory>,
- class protomotions.agents.supervised.masked_mimic_config.MaskedMimicSupervisedAgentConfig(
- batch_size,
- training_max_steps,
- _target_='protomotions.agents.supervised.agent.SupervisedAgent',
- model=<factory>,
- num_steps=32,
- gradient_clip_val=0.0,
- fail_on_bad_grads=False,
- check_grad_mag=True,
- gamma=0.99,
- bounds_loss_coef=0.0,
- task_reward_w=1.0,
- num_mini_epochs=1,
- training_early_termination=None,
- save_epoch_checkpoint_every=1000,
- save_last_checkpoint_every=10,
- save_inference_checkpoint=False,
- max_episode_length_manager=None,
- evaluator=<factory>,
- normalize_rewards=True,
- normalized_reward_clamp_value=5.0,
- reward_norm_ema_decay=None,
- expert_model_path=None,
- rollout_actor=RolloutActor.STUDENT,
- loss=<factory>,
Bases:
SupervisedAgentConfigMaskedMimic preset for
SupervisedAgent.The training loop is generic supervised imitation. The student is the MaskedMimic VAE learned-prior model, and the default supervision target is the privileged action produced by that model.
- Attributes:
batch_size: Training batch size. training_max_steps: Maximum training steps. model: MaskedMimic model configuration. num_steps: Environment steps per update. gradient_clip_val: Max gradient norm. 0=disabled. fail_on_bad_grads: Fail on NaN/Inf gradients. check_grad_mag: Log gradient magnitude. gamma: Discount factor. bounds_loss_coef: Action bounds loss. 0 for tanh outputs. task_reward_w: Task reward weight. num_mini_epochs: Mini-epochs per update. training_early_termination: Stop early at this step. None=disabled. save_epoch_checkpoint_every: Save epoch_xxx.ckpt every N epochs. save_last_checkpoint_every: Save last.ckpt every K epochs. save_inference_checkpoint: Also save inference_<name>.ckpt without optimizer or other training-only state. max_episode_length_manager: Episode length curriculum. evaluator: Evaluation config. normalize_rewards: Normalize rewards. normalized_reward_clamp_value: Clamp normalized rewards to [-val, val]. reward_norm_ema_decay: EMA decay for reward normalization (None = Welford). Set to e.g. 0.99 to track non-stationary reward distributions. expert_model_path: Optional checkpoint for an external expert policy. rollout_actor: Policy used for collecting rollout actions. loss: Supervision loss over MaskedMimic outputs.
- model: MaskedMimicModelConfig#
- loss: SupervisionLossConfig#
- __init__(
- batch_size,
- training_max_steps,
- _target_='protomotions.agents.supervised.agent.SupervisedAgent',
- model=<factory>,
- num_steps=32,
- gradient_clip_val=0.0,
- fail_on_bad_grads=False,
- check_grad_mag=True,
- gamma=0.99,
- bounds_loss_coef=0.0,
- task_reward_w=1.0,
- num_mini_epochs=1,
- training_early_termination=None,
- save_epoch_checkpoint_every=1000,
- save_last_checkpoint_every=10,
- save_inference_checkpoint=False,
- max_episode_length_manager=None,
- evaluator=<factory>,
- normalize_rewards=True,
- normalized_reward_clamp_value=5.0,
- reward_norm_ema_decay=None,
- expert_model_path=None,
- rollout_actor=RolloutActor.STUDENT,
- loss=<factory>,