
Tao Train Mask Auto Label
- 1.4k installs
- 2.8k repo stars
- Updated August 4, 2026
- nvidia/skills
tao-train-mask-auto-label is an agent skill that trains, evaluates, and runs inference for NVIDIA TAO MAL mask auto-label models for developers who need pseudo-label segmentation masks from minimal point or box annotatio
About
tao-train-mask-auto-label is an NVIDIA agent skill (version 0.1.0) for MAL (Mask Auto-Label) weakly supervised segmentation using a ViT-MAE backbone inside NVIDIA TAO Toolkit. The skill documents COCO-style annotation JSON with images.tar.gz datasets, mandatory spec overrides for train, evaluate, and inference, and defaults including vit-mae-base/16 architecture, learning_rate 1e-6, and crop_size 512 with mIoU monitoring. Developers reach for tao-train-mask-auto-label when accelerating segmentation dataset creation by generating pseudo-label masks from sparse box or point prompts before human review and downstream Mask2Former or detector training. AutoML HPO searches train.lr and train.wd with conservative Bayesian ranges, and the skill recommends 24GB+ GPU VRAM for ViT-MAE at 512px crops. Inference produces MAL label-dump JSON artifacts via create_inference_result_file_mal mappings.
- TAO mask auto-label training
- Unlabeled image ingestion
- Pseudo-mask generation
- Label export formats
- Annotation throughput boost
Tao Train Mask Auto Label by the numbers
- 1,446 all-time installs (skills.sh)
- +25 installs in the week ending Aug 5, 2026 (Skillselion tracking)
- Ranked #196 of 2,064 Data Science & ML skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/nvidia/skills --skill tao-train-mask-auto-labelAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 1.4k |
|---|---|
| repo stars | ★ 2.8k |
| Last updated | August 4, 2026 |
| Repository | nvidia/skills ↗ |
How do you auto-label segmentation masks in TAO?
Train NVIDIA TAO mask auto-label models to accelerate segmentation dataset creation by generating pseudo-labels for images before human review and downstream detector training.
Who is it for?
Computer vision teams with sparse box or point annotations who need TAO-guided MAL training to bootstrap dense segmentation masks before full segmenter training.
Skip if: Projects with fully labeled panoptic COCO datasets ready for direct Mask2Former training without a pseudo-labeling preprocessing step.
When should I use this skill?
The user asks to train MAL, generate mask auto-labels, run weakly supervised segmentation, or produce pseudo-labels from minimal annotations in NVIDIA TAO.
What you get
MAL checkpoints, mIoU metrics, and inference label-dump JSON files with pseudo-label segmentation masks for human review.
- Fine-tuned MAL checkpoints
- Pseudo-label mask JSON dumps
- mIoU evaluation metrics
By the numbers
- Default dataset.crop_size 512 for ViT-MAE MAL training
- Default train.lr 1e-6 for ViT-MAE fine-tuning
- Skill metadata version 0.1.0 recommending 24GB+ GPU VRAM
Files
MAL
MAL (Mask Auto-Label) for weakly-supervised segmentation. Produces segmentation masks from minimal annotations (e.g., point or box annotations). Uses ViT-MAE backbone.
Set train.pretrained_model_path for ViT-MAE pretrained weights.
Dataclass Schemas
Generated TAO Core schemas are packaged in schemas/<action>.schema.json, with schemas/manifest.json listing available actions. Each generated schema also emits references/spec_template_<action>.yaml from the schema top-level default field. AutoML enablement is declared at the model layer in references/skill_info.yaml via automl_enabled. Runnable AutoML still requires schemas/train.schema.json and references/spec_template_train.yaml to exist and parse. Use the packaged train schema for automl_default_parameters, automl_disabled_parameters, defaults, min/max bounds, enums, option weights, math conditions, dependencies, and popular parameters. Do not expect ~/tao-core at runtime; maintainers regenerate schemas/templates before packaging the skill bank.
Train Action Policy
This model is AutoML-enabled at the model layer. Before handling any train-stage request, read references/skill_info.yaml and resolve the run override from either an explicit automl_policy value or the user's workflow request. Use automl_policy: on by default and only expose on / off in new launch prompts. Treat phrases like "turn off AutoML", "disable AutoML", "no HPO", or "plain training" as automl_policy: off for this run only. When automl_policy: on, automl_enabled: true, and both schemas/train.schema.json and references/spec_template_train.yaml are packaged, route the train action through tao-skill-bank:tao-run-automl by default with this model's skill_dir. Preserve workflow/application overrides for datasets, specs, output directories, GPU/platform settings, parent checkpoints, and automl_policy. Use direct model training only when automl_policy: off or the packaged train schema/template is missing; in the missing-schema case, report that AutoML is enabled but not runnable for this model until schemas are generated.
Non-train actions such as evaluate, inference, export, and deploy flows stay in this model skill. The per-run automl_policy override does not change model metadata.
Training Requirements
- Dataset type: segmentation
- Formats: default
- Monitoring metric: mIoU
Per-Action Dataset Requirements
| Action | Spec Key | Source | Files | List? |
|---|---|---|---|---|
| evaluate | dataset.val_img_dir | eval_dataset | images.tar.gz | No |
| evaluate | dataset.val_ann_path | eval_dataset | annotations.json | No |
| inference | inference.img_dir | inference_dataset | images.tar.gz | No |
| inference | inference.ann_path | inference_dataset | annotations.json | No |
| train | dataset.train_img_dir | train_datasets | images.tar.gz | No |
| train | dataset.train_ann_path | train_datasets | annotations.json | No |
| train | dataset.val_img_dir | eval_dataset | images.tar.gz | No |
| train | dataset.val_ann_path | eval_dataset | annotations.json | No |
Typical Spec Overrides
Data source overrides are mandatory for every action — the agent MUST construct data source paths from the Per-Action Dataset Requirements table above and include them in spec_overrides. MAL expects COCO-style annotation JSON plus image paths that match the JSON file_name entries after the data source is prepared. Archive-only CSV/image datasets are not compatible unless they are converted to this format first.
S3_TRAIN = "s3://bucket/data/train"
S3_EVAL = "s3://bucket/data/eval"train (mandatory data sources):
{
"train.num_gpus": 1,
"train.gpu_ids": [
0
],
"train.num_epochs": 5,
"train.checkpoint_interval": 5,
"train.validation_interval": 5,
"dataset.train_img_dir": f"{S3_TRAIN}/images.tar.gz",
"dataset.train_ann_path": f"{S3_TRAIN}/annotations.json",
"dataset.val_img_dir": f"{S3_EVAL}/images.tar.gz",
"dataset.val_ann_path": f"{S3_EVAL}/annotations.json",
}evaluate (mandatory data sources):
{
"evaluate.checkpoint": "<selected train/AutoML checkpoint>",
"dataset.val_img_dir": f"{S3_EVAL}/images.tar.gz",
"dataset.val_ann_path": f"{S3_EVAL}/annotations.json",
}inference (mandatory data sources):
{
"inference.checkpoint": "<selected train/AutoML checkpoint>",
"inference.img_dir": f"{S3_EVAL}/images.tar.gz",
"inference.ann_path": f"{S3_EVAL}/annotations.json",
}For checkpoint-dependent actions, use the model resolver declared in references/skill_info.yaml. Select the exact epoch/step checkpoint requested by the user or the best checkpoint when a best-checkpoint action is requested. The mal_model_latest.pth symlink is only appropriate when the user explicitly asks for the latest checkpoint.
Eval Dataset
Optional. Val images and annotations configured alongside train paths.
Important Parameters
- model.arch: ViT-MAE backbone variant. Default vit-mae-base/16.
Avoid vit-deit-tiny/16; the current runtime rejects tiny ViT variants.
- train.lr: Learning rate. Default 1e-6 (very low — fine-tuning ViT).
- dataset.crop_size: Training crop size. Default 512. Use this key, not
model.crop_size.
- train.warmup_epochs: Warmup epochs before full learning rate.
- model.load_mask: Whether to load pre-computed masks.
AutoML / HPO Notes
For MAL AutoML launches, keep the default smoke search space narrow and pass automl_hyperparameters=["train.lr", "train.wd"]. Use conservative Bayesian ranges around the ViT-MAE fine-tuning defaults, for example train.lr from 1e-7 to 1e-5 and train.wd from 1e-5 to 1e-2. The packaged train schema marks these two parameters as the default AutoML parameters; pass them explicitly when using a runtime that still derives MAL search metadata from its bundled config module.
Multi-GPU / Multi-Node
Launch method: Lightning-managed (single python process, Lightning spawns workers).
| Spec Key | Description | Default |
|---|---|---|
train.num_gpus | Number of GPUs | 1 |
train.gpu_ids | GPU device indices | [0] |
train.num_nodes | Number of nodes | 1 |
- Multi-GPU strategy:
ddp_find_unused_parameters_true - No fsdp support
- LR auto-scaling:
lr = lr * num_devices * batch_size(learning rate is scaled automatically by device count and batch size)
Multi-node env vars (set by orchestrator): WORLD_SIZE, NODE_RANK, MASTER_ADDR, MASTER_PORT, NUM_GPU_PER_NODE.
Hardware
Minimum 1 GPU(s), recommended 2 GPU(s). 24GB+ (A100 recommended) VRAM per GPU. ViT-MAE backbone at crop_size=512 needs 24GB+ GPU memory.
Error Patterns
CUDA out of memory: Reduce dataset.crop_size (512 -> 384 -> 256) or use a smaller ViT-MAE variant (base vs large).
Key `crop_size` not in `MALModelConfig`: The crop-size override was placed under model.crop_size. Move it to dataset.crop_size.
Spec Param / Parent Model Inference
Model-specific inference mappings belong in this MD file, not in config.json. Generated runners should read this section and apply the mappings with SDK helpers before create_job(). This mirrors the old microservices infer_params.py flow.
Inference mappings from TAO Core mal.config.json:
| Action | Spec Field | Inference Function | Meaning |
|---|---|---|---|
| evaluate | evaluate.checkpoint | parent_model | model file inferred from the parent job results folder |
| evaluate | results_dir | output_dir | current job results directory |
| inference | inference.checkpoint | parent_model | model file inferred from the parent job results folder |
| inference | inference.label_dump_path | create_inference_result_file_mal | MAL inference JSON path |
| inference | results_dir | output_dir | current job results directory |
| train | train.pretrained_model_path | ptm_if_no_resume_model | optional pretrained model when not resuming |
| train | train.resume_training_checkpoint_path | resume_model | exact checkpoint for resume runs |
| train | results_dir | output_dir | current job results directory |
For parent_model or parent_model_folder, pass the upstream train/export/AutoML child job id as parent_job_id. The SDK lists the parent result folder, filters checkpoint artifacts, and returns the selected model file or folder. Do not add these mappings back to config.json and do not patch generated runner scripts to guess checkpoint paths.
Evaluation Report
Evaluation of the tao-train-mask-auto-label skill before publication through NVSkills-Eval.
This benchmark summarizes 3-Tier Evaluation from NVSkills-Eval results for the skill. The goal is to document whether the skill is safe, discoverable, effective, and useful for agents before it is published for broader workflow use.
Evaluation Summary
- Skill:
tao-train-mask-auto-label - Evaluation date: 2026-06-22
- NVSkills-Eval profile:
external - Environment:
astra-sandbox - Dataset: 1 evaluation tasks
- Attempts per task: 1
- Pass threshold: 50%
- Overall verdict: PASS
Agents Used
claude-codecodex
Metrics Used
Reported benchmark dimensions:
- Security: checks whether skill-assisted execution avoids unsafe behavior such as secret leakage, destructive commands, or unauthorized access.
- Correctness: checks whether the agent follows the expected workflow and produces the correct final output.
- Discoverability: checks whether the agent loads the skill when relevant and avoids using it when irrelevant.
- Effectiveness: checks whether the agent performs measurably better with the skill than without it.
- Efficiency: checks whether the agent uses fewer tokens and avoids redundant work.
Underlying evaluation signals used in this run:
security(Security): checks for unsafe operations, secret leakage, and unauthorized access.skill_execution(Skill Execution): verifies that the agent loaded the expected skill and workflow.skill_efficiency(Efficiency): checks routing quality, decoy avoidance, and redundant tool usage.accuracy(Accuracy): grades final-answer correctness against the reference answer.goal_accuracy(Goal Accuracy): checks whether the overall user task completed successfully.behavior_check(Behavior Check): verifies expected behavior steps, including safety expectations.token_efficiency(Token Efficiency): compares token usage with and without the skill.
Test Tasks
The benchmark dataset contained 1 evaluation tasks:
- Positive tasks: 1 tasks where the skill was expected to activate.
- Negative tasks: 0 tasks where no skill was expected.
- Unlabeled tasks: 0 tasks where positive/negative intent could not be inferred.
Task composition is derived from the evaluation dataset when possible. Entries with expected_skill set are treated as positive skill-activation cases, while entries with expected_skill: null are treated as negative activation cases.
Results
| Dimension | Num | claude-code | codex |
|---|---|---|---|
| Security | 1 | 100% (+0%) | 100% (+0%) |
| Correctness | 1 | 50% (+40%) | 97% (+97%) |
| Discoverability | 1 | 0% (+0%) | 97% (+97%) |
| Effectiveness | 1 | 66% (+28%) | 90% (+72%) |
| Efficiency | 1 | 27% (+0%) | 96% (+68%) |
Score values show skill-assisted performance. Values in parentheses show uplift versus the no-skill baseline when baseline data is available.
Tier 1: Static Validation Summary
Tier 1 validation passed with observations. NVSkills-Eval ran 1 checks and found 5 total findings.
Top findings:
- MEDIUM SCHEMA/folder_hierarchy: Unexpected nesting depth for general skill (
skills/models/tao-train-mask-auto-label) - MEDIUM SCHEMA/body_recommended_section: Missing recommended section: '## Instructions' (
skills/models/tao-train-mask-auto-label/SKILL.md) - MEDIUM SCHEMA/body_recommended_section: Missing recommended section: '## Examples' (
skills/models/tao-train-mask-auto-label/SKILL.md) - LOW SCHEMA/unexpected_file: Unexpected 'schemas' in skill root (
skills/models/tao-train-mask-auto-label/schemas) - LOW SCHEMA/author_format: Author must be of the form 'Name <email@host>' (
skills/models/tao-train-mask-auto-label/SKILL.md)
Tier 2: Deduplication Summary
This tier was not run or did not produce findings in this report.
Publication Recommendation
The skill is suitable to proceed toward NVSkills-Eval publication based on this benchmark. Skill owners should keep this file with the skill and refresh it when the evaluation dataset, skill behavior, or target agents materially change.
[
{
"id": "tao-train-mask-auto-label-basic",
"question": "A user request: \"MAL (Mask Auto-Label) for weakly-supervised segmentation.\" Identify which TAO skill applies and, reading only that skill's documentation, outline the steps it prescribes. Do NOT run any commands, scripts, web searches, or other tools \u2014 describe the plan only.",
"expected_skill": "tao-train-mask-auto-label",
"expected_script": null,
"ground_truth": "Identify tao-train-mask-auto-label as the applicable skill and summarize its documented workflow from SKILL.md without executing anything.",
"expected_behavior": [
"Identifies tao-train-mask-auto-label as the relevant skill",
"Outlines the documented workflow steps from SKILL.md",
"Does not run commands, scripts, or web searches"
]
}
]
name: tao-train-mask-auto-label
network_arch: mal
automl_enabled: true
container_image: tao_toolkit.pyt
data_format: default
gpu_spec_key: train.num_gpus
actions:
train:
command: mal train -e {config_path}
config_format: yaml
mode: config
inputs:
dataset.train_img_dir:
type: folder
dataset.train_ann_path:
type: file
dataset.val_img_dir:
type: folder
dataset.val_ann_path:
type: file
train.pretrained_model_path:
type: file
optional: true
train.resume_training_checkpoint_path:
type: file
optional: true
outputs:
results_dir:
type: folder
upload_excludes:
- inputs/
evaluate:
command: mal evaluate -e {config_path}
config_format: yaml
mode: config
inputs:
evaluate.checkpoint:
type: file
dataset.val_img_dir:
type: folder
dataset.val_ann_path:
type: file
outputs:
results_dir:
type: folder
upload_excludes:
- inputs/
inference:
command: mal inference -e {config_path}
config_format: yaml
mode: config
inputs:
inference.checkpoint:
type: file
inference.img_dir:
type: folder
inference.ann_path:
type: file
outputs:
results_dir:
type: folder
inference.label_dump_path:
type: file
upload_excludes:
- inputs/
data_sources:
train:
dataset.train_img_dir:
source: train_datasets
path: images.tar.gz
runtime: extracted_folder
dataset.train_ann_path:
source: train_datasets
path: annotations.json
dataset.val_img_dir:
source: eval_dataset
path: images.tar.gz
runtime: extracted_folder
dataset.val_ann_path:
source: eval_dataset
path: annotations.json
evaluate:
dataset.val_img_dir:
source: eval_dataset
path: images.tar.gz
runtime: extracted_folder
dataset.val_ann_path:
source: eval_dataset
path: annotations.json
inference:
inference.img_dir:
source: inference_dataset
path: images.tar.gz
runtime: extracted_folder
inference.ann_path:
source: inference_dataset
path: annotations.json
spec_params:
train:
encryption_key: key
results_dir: output_dir
train.pretrained_model_path: ptm_if_no_resume_model
train.resume_training_checkpoint_path: resume_model
evaluate:
encryption_key: key
evaluate.checkpoint: parent_model
results_dir: output_dir
inference:
encryption_key: key
inference.checkpoint: parent_model
inference.label_dump_path: create_inference_result_file_mal
results_dir: output_dir
key_defaults: {}
spec_shorthand_keys:
num_epochs: train.num_epochs
batch_size: train.batch_size
train_batch_size: train.batch_size
evaluate_batch_size: evaluate.batch_size
inference_batch_size: inference.batch_size
learning_rate: train.lr
arch: model.arch
crop_size: dataset.crop_size
resume_checkpoint: train.resume_training_checkpoint_path
spec_templates:
train: ../references/spec_template_train.yaml
evaluate: ../references/spec_template_evaluate.yaml
inference: ../references/spec_template_inference.yaml
description: MAL (Minimal Annotation Learning) for weakly-supervised segmentation. Produces segmentation masks from minimal
annotations (e.g., point or box annotations). Uses ViT-MAE backbone.
model_name: ''
encryption_key: ''
results_dir: ''
wandb:
enable: true
project: TAO Toolkit
entity: ''
group: ''
tags:
- tao-toolkit
reinit: false
sync_tensorboard: false
save_code: false
name: TAO Toolkit Training
run_id: ''
dataset:
type: coco
train_ann_path: ''
train_img_dir: ''
val_ann_path: ''
val_img_dir: ''
min_obj_size: 2048.0
max_obj_size: 10000000000.0
num_workers_per_gpu: 2
load_mask: true
crop_size: 512
train:
num_gpus: 1
gpu_ids:
- 0
num_nodes: 1
seed: 1234
cudnn:
benchmark: false
deterministic: true
num_epochs: 10
checkpoint_interval: 1
checkpoint_interval_unit: epoch
validation_interval: 1
resume_training_checkpoint_path: ''
results_dir: ''
batch_size: 1
accum_grad_batches: 1
use_amp: true
pretrained_model_path: ''
optim_type: adamw
optim_momentum: 0.9
lr: 1.0e-06
min_lr: 0.0
min_lr_rate: 0.02
num_wave: 1.0
wd: 0.0005
optim_eps: 1.0e-08
optim_betas:
- 0.9
- 0.9
warmup_epochs: 1
margin_rate:
- 0
- 1.2
test_margin_rate:
- 0.6
- 0.6
mask_thres:
- 0.1
loss_mil_weight: 4.0
loss_crf_weight: 0.5
crf_zeta: 0.1
crf_kernel_size: 3
crf_num_iter: 100
loss_crf_step: 4000
loss_mil_step: 1000
crf_size_ratio: 1
crf_value_high_thres: 0.9
crf_value_low_thres: 0.1
model:
arch: vit-mae-base/16
frozen_stages:
- -1
mask_head_num_convs: 4
mask_head_hidden_channel: 256
mask_head_out_channel: 256
teacher_momentum: 0.996
not_adjust_scale: false
mask_scale_ratio_pre: 1
mask_scale_ratio: 2.0
vit_dpr: 0.0
evaluate:
num_gpus: 1
gpu_ids:
- 0
num_nodes: 1
checkpoint: ???
trt_engine: ''
results_dir: ''
batch_size: 3
use_mixed_model_test: false
use_teacher_test: false
comp_clustering: false
use_flip_test: false
model_name: ''
encryption_key: ''
results_dir: ''
wandb:
enable: true
project: TAO Toolkit
entity: ''
group: ''
tags:
- tao-toolkit
reinit: false
sync_tensorboard: false
save_code: false
name: TAO Toolkit Training
run_id: ''
dataset:
type: coco
train_ann_path: ''
train_img_dir: ''
val_ann_path: ''
val_img_dir: ''
min_obj_size: 2048.0
max_obj_size: 10000000000.0
num_workers_per_gpu: 2
load_mask: true
crop_size: 512
train:
num_gpus: 1
gpu_ids:
- 0
num_nodes: 1
seed: 1234
cudnn:
benchmark: false
deterministic: true
num_epochs: 10
checkpoint_interval: 1
checkpoint_interval_unit: epoch
validation_interval: 1
resume_training_checkpoint_path: ''
results_dir: ''
batch_size: 1
accum_grad_batches: 1
use_amp: true
pretrained_model_path: ''
optim_type: adamw
optim_momentum: 0.9
lr: 1.0e-06
min_lr: 0.0
min_lr_rate: 0.02
num_wave: 1.0
wd: 0.0005
optim_eps: 1.0e-08
optim_betas:
- 0.9
- 0.9
warmup_epochs: 1
margin_rate:
- 0
- 1.2
test_margin_rate:
- 0.6
- 0.6
mask_thres:
- 0.1
loss_mil_weight: 4.0
loss_crf_weight: 0.5
crf_zeta: 0.1
crf_kernel_size: 3
crf_num_iter: 100
loss_crf_step: 4000
loss_mil_step: 1000
crf_size_ratio: 1
crf_value_high_thres: 0.9
crf_value_low_thres: 0.1
model:
arch: vit-mae-base/16
frozen_stages:
- -1
mask_head_num_convs: 4
mask_head_hidden_channel: 256
mask_head_out_channel: 256
teacher_momentum: 0.996
not_adjust_scale: false
mask_scale_ratio_pre: 1
mask_scale_ratio: 2.0
vit_dpr: 0.0
inference:
num_gpus: 1
gpu_ids:
- 0
num_nodes: 1
checkpoint: ???
trt_engine: ''
results_dir: ''
batch_size: 3
ann_path: ''
img_dir: ''
label_dump_path: instances_val2017_mal.json
load_mask: false
model_name: ''
encryption_key: ''
results_dir: ''
wandb:
enable: true
project: TAO Toolkit
entity: ''
group: ''
tags:
- tao-toolkit
reinit: false
sync_tensorboard: false
save_code: false
name: TAO Toolkit Training
run_id: ''
dataset:
type: coco
train_ann_path: ''
train_img_dir: ''
val_ann_path: ''
val_img_dir: ''
min_obj_size: 2048.0
max_obj_size: 10000000000.0
num_workers_per_gpu: 2
load_mask: true
crop_size: 512
train:
num_gpus: 1
gpu_ids:
- 0
num_nodes: 1
seed: 1234
cudnn:
benchmark: false
deterministic: true
num_epochs: 10
checkpoint_interval: 1
checkpoint_interval_unit: epoch
validation_interval: 1
resume_training_checkpoint_path: ''
results_dir: ''
batch_size: 1
accum_grad_batches: 1
use_amp: true
pretrained_model_path: ''
optim_type: adamw
optim_momentum: 0.9
lr: 1.0e-06
min_lr: 0.0
min_lr_rate: 0.02
num_wave: 1.0
wd: 0.0005
optim_eps: 1.0e-08
optim_betas:
- 0.9
- 0.9
warmup_epochs: 1
margin_rate:
- 0
- 1.2
test_margin_rate:
- 0.6
- 0.6
mask_thres:
- 0.1
loss_mil_weight: 4.0
loss_crf_weight: 0.5
crf_zeta: 0.1
crf_kernel_size: 3
crf_num_iter: 100
loss_crf_step: 4000
loss_mil_step: 1000
crf_size_ratio: 1
crf_value_high_thres: 0.9
crf_value_low_thres: 0.1
model:
arch: vit-mae-base/16
frozen_stages:
- -1
mask_head_num_convs: 4
mask_head_hidden_channel: 256
mask_head_out_channel: 256
teacher_momentum: 0.996
not_adjust_scale: false
mask_scale_ratio_pre: 1
mask_scale_ratio: 2.0
vit_dpr: 0.0
{
"automl_default_parameters": [],
"automl_disabled_parameters": [
"train.cudnn",
"inference",
"evaluate",
"train.test_margin_rate",
"train",
"train.mask_thres",
"train.gpu_ids",
"model",
"wandb",
"wandb.tags",
"dataset",
"inference.gpu_ids",
"train.optim_betas",
"model.frozen_stages",
"train.margin_rate",
"evaluate.gpu_ids"
],
"default": {
"dataset": {
"crop_size": 512,
"load_mask": true,
"max_obj_size": 10000000000.0,
"min_obj_size": 2048.0,
"num_workers_per_gpu": 2,
"train_ann_path": "",
"train_img_dir": "",
"type": "coco",
"val_ann_path": "",
"val_img_dir": ""
},
"encryption_key": "",
"evaluate": {
"batch_size": 3,
"checkpoint": "???",
"comp_clustering": false,
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1,
"results_dir": "",
"trt_engine": "",
"use_flip_test": false,
"use_mixed_model_test": false,
"use_teacher_test": false
},
"model": {
"arch": "vit-mae-base/16",
"frozen_stages": [
-1
],
"mask_head_hidden_channel": 256,
"mask_head_num_convs": 4,
"mask_head_out_channel": 256,
"mask_scale_ratio": 2.0,
"mask_scale_ratio_pre": 1,
"not_adjust_scale": false,
"teacher_momentum": 0.996,
"vit_dpr": 0.0
},
"model_name": "",
"results_dir": "",
"train": {
"accum_grad_batches": 1,
"batch_size": 1,
"checkpoint_interval": 1,
"checkpoint_interval_unit": "epoch",
"crf_kernel_size": 3,
"crf_num_iter": 100,
"crf_size_ratio": 1,
"crf_value_high_thres": 0.9,
"crf_value_low_thres": 0.1,
"crf_zeta": 0.1,
"cudnn": {
"benchmark": false,
"deterministic": true
},
"gpu_ids": [
0
],
"loss_crf_step": 4000,
"loss_crf_weight": 0.5,
"loss_mil_step": 1000,
"loss_mil_weight": 4.0,
"lr": 1e-06,
"margin_rate": [
0,
1.2
],
"mask_thres": [
0.1
],
"min_lr": 0.0,
"min_lr_rate": 0.02,
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"num_wave": 1.0,
"optim_betas": [
0.9,
0.9
],
"optim_eps": 1e-08,
"optim_momentum": 0.9,
"optim_type": "adamw",
"pretrained_model_path": "",
"results_dir": "",
"resume_training_checkpoint_path": "",
"seed": 1234,
"test_margin_rate": [
0.6,
0.6
],
"use_amp": true,
"validation_interval": 1,
"warmup_epochs": 1,
"wd": 0.0005
},
"wandb": {
"enable": true,
"entity": "",
"group": "",
"name": "TAO Toolkit Training",
"project": "TAO Toolkit",
"reinit": false,
"run_id": "",
"save_code": false,
"sync_tensorboard": false,
"tags": [
"tao-toolkit"
]
}
},
"popular": {
"evaluate": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"inference": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"train": {
"checkpoint_interval": 1,
"gpu_ids": [
0
],
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"validation_interval": 1
}
},
"properties": {
"automl_disabled_parameters": [
"wandb",
"dataset",
"train",
"model",
"inference",
"evaluate"
],
"dataset": {
"automl_enabled": false,
"default": {
"crop_size": 512,
"load_mask": true,
"max_obj_size": 10000000000.0,
"min_obj_size": 2048.0,
"num_workers_per_gpu": 2,
"train_ann_path": "",
"train_img_dir": "",
"type": "coco",
"val_ann_path": "",
"val_img_dir": ""
},
"properties": {
"crop_size": {
"default": 512,
"maximum": Infinity,
"minimum": 256,
"type": "int"
},
"load_mask": {
"default": true,
"title": "Whether to load segmentation mask in annotation file",
"type": "bool"
},
"max_obj_size": {
"default": 10000000000.0,
"title": "maximum object size",
"type": "float"
},
"min_obj_size": {
"default": 2048.0,
"title": "minimum object size",
"type": "float"
},
"num_workers_per_gpu": {
"default": 2,
"type": "int"
},
"train_ann_path": {
"default": "",
"title": "Annotation path of the training set",
"type": "string"
},
"train_img_dir": {
"default": "",
"title": "Image directory of the training set",
"type": "string"
},
"type": {
"default": "coco",
"enum": [
"coco"
],
"title": "dataset type",
"type": "categorical"
},
"val_ann_path": {
"default": "",
"title": "Annotation path of the validation set",
"type": "string"
},
"val_img_dir": {
"default": "",
"title": "Image directory of the validation set",
"type": "string"
}
},
"type": "collection"
},
"encryption_key": {
"default": "",
"description": "Key for encrypting model checkpoints",
"title": "Encryption key",
"type": "string"
},
"evaluate": {
"automl_disabled_parameters": [
"evaluate.gpu_ids"
],
"automl_enabled": false,
"default": {
"batch_size": 3,
"checkpoint": "???",
"comp_clustering": false,
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1,
"results_dir": "",
"trt_engine": "",
"use_flip_test": false,
"use_mixed_model_test": false,
"use_teacher_test": false
},
"popular": [
"num_gpus",
"num_nodes",
"gpu_ids"
],
"properties": {
"batch_size": {
"default": 3,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"checkpoint": {
"default": "???",
"description": "Path to the checkpoint used for evaluation.",
"title": "Checkpoint path",
"type": "string"
},
"comp_clustering": {
"default": false,
"type": "bool"
},
"gpu_ids": {
"automl_enabled": false,
"default": [
0
],
"description": "\n List of GPU IDs to run the evaluation on. The length of this list\n must be equal to the number of gpus in evaluate.num_gpus.",
"popular": true,
"title": "GPU IDs",
"type": "list"
},
"num_gpus": {
"default": 1,
"description": "The number of GPUs to run the evaluation job.",
"minimum": 1,
"popular": true,
"title": "Number of GPUs",
"type": "int"
},
"num_nodes": {
"default": 1,
"description": "Number of nodes to run the evaluation on. If > 1, then multi-node is enabled.",
"minimum": 1,
"popular": true,
"title": "Number of nodes",
"type": "int"
},
"results_dir": {
"default": "",
"description": "\n Path to where all the assets generated from a task are stored.\n ",
"title": "Results directory",
"type": "string"
},
"trt_engine": {
"default": "",
"description": "Path to the TensorRT engine to be used for evaluation.\n This only works with :code:`tao-deploy`.",
"title": "TensorRT Engine",
"type": "string"
},
"use_flip_test": {
"default": false,
"type": "bool"
},
"use_mixed_model_test": {
"default": false,
"type": "bool"
},
"use_teacher_test": {
"default": false,
"type": "bool"
}
},
"type": "collection"
},
"model": {
"automl_disabled_parameters": [
"model.frozen_stages"
],
"automl_enabled": false,
"default": {
"arch": "vit-mae-base/16",
"frozen_stages": [
-1
],
"mask_head_hidden_channel": 256,
"mask_head_num_convs": 4,
"mask_head_out_channel": 256,
"mask_scale_ratio": 2.0,
"mask_scale_ratio_pre": 1,
"not_adjust_scale": false,
"teacher_momentum": 0.996,
"vit_dpr": 0.0
},
"properties": {
"arch": {
"default": "vit-mae-base/16",
"enum": [
"vit-deit-small/16",
"vit-mae-base/16",
"vit-mae-large/16",
"vit-mae-huge/14"
],
"type": "categorical"
},
"frozen_stages": {
"automl_enabled": false,
"default": [
-1
],
"type": "list_1_backbone"
},
"mask_head_hidden_channel": {
"default": 256,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"mask_head_num_convs": {
"default": 4,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"mask_head_out_channel": {
"default": 256,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"mask_scale_ratio": {
"default": 2.0,
"type": "float"
},
"mask_scale_ratio_pre": {
"default": 1,
"type": "int"
},
"not_adjust_scale": {
"default": false,
"type": "bool"
},
"teacher_momentum": {
"default": 0.996,
"maximum": 1.0,
"minimum": 0.0,
"type": "float"
},
"vit_dpr": {
"default": 0.0,
"type": "float"
}
},
"type": "collection"
},
"model_name": {
"default": "",
"description": "Name of model if invoking task via :code:`model_agnostic`",
"title": "Model name",
"type": "string"
},
"results_dir": {
"default": "",
"description": "\n Path to where all the assets generated from a task are stored.\n ",
"title": "Results directory",
"type": "string"
},
"train": {
"automl_disabled_parameters": [
"train.gpu_ids",
"train.cudnn",
"train.optim_betas",
"train.margin_rate",
"train.test_margin_rate",
"train.mask_thres"
],
"automl_enabled": false,
"default": {
"accum_grad_batches": 1,
"batch_size": 1,
"checkpoint_interval": 1,
"checkpoint_interval_unit": "epoch",
"crf_kernel_size": 3,
"crf_num_iter": 100,
"crf_size_ratio": 1,
"crf_value_high_thres": 0.9,
"crf_value_low_thres": 0.1,
"crf_zeta": 0.1,
"cudnn": {
"benchmark": false,
"deterministic": true
},
"gpu_ids": [
0
],
"loss_crf_step": 4000,
"loss_crf_weight": 0.5,
"loss_mil_step": 1000,
"loss_mil_weight": 4.0,
"lr": 1e-06,
"margin_rate": [
0,
1.2
],
"mask_thres": [
0.1
],
"min_lr": 0.0,
"min_lr_rate": 0.02,
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"num_wave": 1.0,
"optim_betas": [
0.9,
0.9
],
"optim_eps": 1e-08,
"optim_momentum": 0.9,
"optim_type": "adamw",
"pretrained_model_path": "",
"results_dir": "",
"resume_training_checkpoint_path": "",
"seed": 1234,
"test_margin_rate": [
0.6,
0.6
],
"use_amp": true,
"validation_interval": 1,
"warmup_epochs": 1,
"wd": 0.0005
},
"popular": [
"validation_interval",
"checkpoint_interval",
"num_gpus",
"num_nodes",
"num_epochs",
"gpu_ids"
],
"properties": {
"accum_grad_batches": {
"default": 1,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"batch_size": {
"default": 1,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"checkpoint_interval": {
"default": 1,
"description": "The interval (in epochs) at which a checkpoint will be saved. Helps resume training.",
"minimum": 1,
"popular": true,
"title": "Checkpoint interval",
"type": "int"
},
"checkpoint_interval_unit": {
"default": "epoch",
"description": "The unit of the checkpoint interval.",
"enum": [
"epoch",
"step"
],
"title": "Checkpoint interval unit",
"type": "categorical"
},
"crf_kernel_size": {
"default": 3,
"type": "int"
},
"crf_num_iter": {
"default": 100,
"type": "int"
},
"crf_size_ratio": {
"default": 1,
"type": "int"
},
"crf_value_high_thres": {
"default": 0.9,
"type": "float"
},
"crf_value_low_thres": {
"default": 0.1,
"type": "float"
},
"crf_zeta": {
"default": 0.1,
"type": "float"
},
"cudnn": {
"automl_enabled": false,
"default": {
"benchmark": false,
"deterministic": true
},
"properties": {
"benchmark": {
"default": false,
"type": "bool"
},
"deterministic": {
"default": true,
"type": "bool"
}
},
"type": "collection"
},
"gpu_ids": {
"automl_enabled": false,
"default": [
0
],
"description": "\n List of GPU IDs to run the training on. The length of this list\n must be equal to the number of gpus in train.num_gpus.",
"popular": true,
"title": "GPU IDs",
"type": "list"
},
"loss_crf_step": {
"default": 4000,
"type": "int"
},
"loss_crf_weight": {
"default": 0.5,
"type": "float"
},
"loss_mil_step": {
"default": 1000,
"type": "int"
},
"loss_mil_weight": {
"default": 4.0,
"type": "float"
},
"lr": {
"default": 1e-06,
"maximum": Infinity,
"minimum": 0.0,
"type": "float"
},
"margin_rate": {
"automl_enabled": false,
"default": [
0,
1.2
],
"type": "list"
},
"mask_thres": {
"automl_enabled": false,
"default": [
0.1
],
"type": "list"
},
"min_lr": {
"default": 0.0,
"type": "float"
},
"min_lr_rate": {
"default": 0.02,
"maximum": 1.0,
"minimum": 0.0,
"type": "float"
},
"num_epochs": {
"default": 10,
"description": "Number of epochs to run the training.",
"maximum": Infinity,
"minimum": 1,
"popular": true,
"title": "Number of epochs",
"type": "int"
},
"num_gpus": {
"default": 1,
"description": "The number of GPUs to run the train job.",
"minimum": 1,
"popular": true,
"title": "Number of GPUs",
"type": "int"
},
"num_nodes": {
"default": 1,
"description": "Number of nodes to run the training on. If > 1, then multi-node is enabled.",
"minimum": 1,
"popular": true,
"title": "Number of nodes",
"type": "int"
},
"num_wave": {
"default": 1.0,
"type": "float"
},
"optim_betas": {
"automl_enabled": false,
"default": [
0.9,
0.9
],
"type": "list"
},
"optim_eps": {
"default": 1e-08,
"type": "float"
},
"optim_momentum": {
"default": 0.9,
"maximum": 1.0,
"minimum": 0.0,
"type": "float"
},
"optim_type": {
"default": "adamw",
"enum": [
"adamw"
],
"type": "categorical"
},
"pretrained_model_path": {
"default": "",
"type": "string"
},
"results_dir": {
"default": "",
"description": "\n Path to where all the assets generated from a task are stored.\n ",
"title": "Results directory",
"type": "string"
},
"resume_training_checkpoint_path": {
"default": "",
"description": "Path to the checkpoint to resume training from.",
"title": "Resume checkpoint path",
"type": "string"
},
"seed": {
"default": 1234,
"description": "The seed for the initializer in PyTorch. If < 0, disable fixed seed.",
"maximum": Infinity,
"minimum": -1,
"title": "Seed for randomization",
"type": "int"
},
"test_margin_rate": {
"automl_enabled": false,
"default": [
0.6,
0.6
],
"type": "list"
},
"use_amp": {
"default": true,
"type": "bool"
},
"validation_interval": {
"default": 1,
"description": "\n The interval (in epochs) at which a evaluation\n will be triggered on the validation dataset.",
"minimum": 1,
"popular": true,
"title": "Validation interval",
"type": "int"
},
"warmup_epochs": {
"default": 1,
"maximum": Infinity,
"minimum": 0,
"type": "int"
},
"wd": {
"default": 0.0005,
"type": "float"
}
},
"type": "collection"
},
"wandb": {
"automl_disabled_parameters": [
"wandb.tags"
],
"automl_enabled": false,
"default": {
"enable": true,
"entity": "",
"group": "",
"name": "TAO Toolkit Training",
"project": "TAO Toolkit",
"reinit": false,
"run_id": "",
"save_code": false,
"sync_tensorboard": false,
"tags": [
"tao-toolkit"
]
},
"properties": {
"enable": {
"default": true,
"type": "bool"
},
"entity": {
"default": "",
"type": "string"
},
"group": {
"default": "",
"type": "string"
},
"name": {
"default": "TAO Toolkit Training",
"type": "string"
},
"project": {
"default": "TAO Toolkit",
"type": "string"
},
"reinit": {
"default": false,
"type": "bool"
},
"run_id": {
"default": "",
"type": "string"
},
"save_code": {
"default": false,
"type": "bool"
},
"sync_tensorboard": {
"default": false,
"type": "bool"
},
"tags": {
"automl_enabled": false,
"default": [
"tao-toolkit"
],
"type": "list"
}
},
"type": "collection"
}
},
"type": "object",
"x_tao_schema": {
"action": "evaluate",
"core_module": "mal",
"model": "mal",
"network_arch": "mal",
"schema_action": "evaluate",
"schema_version": 1,
"source": "tao-core dataclass config"
}
}
{
"automl_default_parameters": [],
"automl_disabled_parameters": [
"train.cudnn",
"inference",
"evaluate",
"train.test_margin_rate",
"train",
"train.mask_thres",
"train.gpu_ids",
"model",
"wandb",
"wandb.tags",
"dataset",
"inference.gpu_ids",
"train.optim_betas",
"model.frozen_stages",
"train.margin_rate",
"evaluate.gpu_ids"
],
"default": {
"dataset": {
"crop_size": 512,
"load_mask": true,
"max_obj_size": 10000000000.0,
"min_obj_size": 2048.0,
"num_workers_per_gpu": 2,
"train_ann_path": "",
"train_img_dir": "",
"type": "coco",
"val_ann_path": "",
"val_img_dir": ""
},
"encryption_key": "",
"inference": {
"ann_path": "",
"batch_size": 3,
"checkpoint": "???",
"gpu_ids": [
0
],
"img_dir": "",
"label_dump_path": "instances_val2017_mal.json",
"load_mask": false,
"num_gpus": 1,
"num_nodes": 1,
"results_dir": "",
"trt_engine": ""
},
"model": {
"arch": "vit-mae-base/16",
"frozen_stages": [
-1
],
"mask_head_hidden_channel": 256,
"mask_head_num_convs": 4,
"mask_head_out_channel": 256,
"mask_scale_ratio": 2.0,
"mask_scale_ratio_pre": 1,
"not_adjust_scale": false,
"teacher_momentum": 0.996,
"vit_dpr": 0.0
},
"model_name": "",
"results_dir": "",
"train": {
"accum_grad_batches": 1,
"batch_size": 1,
"checkpoint_interval": 1,
"checkpoint_interval_unit": "epoch",
"crf_kernel_size": 3,
"crf_num_iter": 100,
"crf_size_ratio": 1,
"crf_value_high_thres": 0.9,
"crf_value_low_thres": 0.1,
"crf_zeta": 0.1,
"cudnn": {
"benchmark": false,
"deterministic": true
},
"gpu_ids": [
0
],
"loss_crf_step": 4000,
"loss_crf_weight": 0.5,
"loss_mil_step": 1000,
"loss_mil_weight": 4.0,
"lr": 1e-06,
"margin_rate": [
0,
1.2
],
"mask_thres": [
0.1
],
"min_lr": 0.0,
"min_lr_rate": 0.02,
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"num_wave": 1.0,
"optim_betas": [
0.9,
0.9
],
"optim_eps": 1e-08,
"optim_momentum": 0.9,
"optim_type": "adamw",
"pretrained_model_path": "",
"results_dir": "",
"resume_training_checkpoint_path": "",
"seed": 1234,
"test_margin_rate": [
0.6,
0.6
],
"use_amp": true,
"validation_interval": 1,
"warmup_epochs": 1,
"wd": 0.0005
},
"wandb": {
"enable": true,
"entity": "",
"group": "",
"name": "TAO Toolkit Training",
"project": "TAO Toolkit",
"reinit": false,
"run_id": "",
"save_code": false,
"sync_tensorboard": false,
"tags": [
"tao-toolkit"
]
}
},
"popular": {
"evaluate": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"inference": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"train": {
"checkpoint_interval": 1,
"gpu_ids": [
0
],
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"validation_interval": 1
}
},
"properties": {
"automl_disabled_parameters": [
"wandb",
"dataset",
"train",
"model",
"inference",
"evaluate"
],
"dataset": {
"automl_enabled": false,
"default": {
"crop_size": 512,
"load_mask": true,
"max_obj_size": 10000000000.0,
"min_obj_size": 2048.0,
"num_workers_per_gpu": 2,
"train_ann_path": "",
"train_img_dir": "",
"type": "coco",
"val_ann_path": "",
"val_img_dir": ""
},
"properties": {
"crop_size": {
"default": 512,
"maximum": Infinity,
"minimum": 256,
"type": "int"
},
"load_mask": {
"default": true,
"title": "Whether to load segmentation mask in annotation file",
"type": "bool"
},
"max_obj_size": {
"default": 10000000000.0,
"title": "maximum object size",
"type": "float"
},
"min_obj_size": {
"default": 2048.0,
"title": "minimum object size",
"type": "float"
},
"num_workers_per_gpu": {
"default": 2,
"type": "int"
},
"train_ann_path": {
"default": "",
"title": "Annotation path of the training set",
"type": "string"
},
"train_img_dir": {
"default": "",
"title": "Image directory of the training set",
"type": "string"
},
"type": {
"default": "coco",
"enum": [
"coco"
],
"title": "dataset type",
"type": "categorical"
},
"val_ann_path": {
"default": "",
"title": "Annotation path of the validation set",
"type": "string"
},
"val_img_dir": {
"default": "",
"title": "Image directory of the validation set",
"type": "string"
}
},
"type": "collection"
},
"encryption_key": {
"default": "",
"description": "Key for encrypting model checkpoints",
"title": "Encryption key",
"type": "string"
},
"inference": {
"automl_disabled_parameters": [
"inference.gpu_ids"
],
"automl_enabled": false,
"default": {
"ann_path": "",
"batch_size": 3,
"checkpoint": "???",
"gpu_ids": [
0
],
"img_dir": "",
"label_dump_path": "instances_val2017_mal.json",
"load_mask": false,
"num_gpus": 1,
"num_nodes": 1,
"results_dir": "",
"trt_engine": ""
},
"popular": [
"num_gpus",
"num_nodes",
"gpu_ids"
],
"properties": {
"ann_path": {
"default": "",
"type": "string"
},
"batch_size": {
"default": 3,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"checkpoint": {
"default": "???",
"description": "Path to the checkpoint used for inference.",
"title": "Checkpoint path",
"type": "string"
},
"gpu_ids": {
"automl_enabled": false,
"default": [
0
],
"description": "\n List of GPU IDs to run the inference on. The length of this list\n must be equal to the number of gpus in inference.num_gpus.",
"popular": true,
"title": "GPU IDs",
"type": "list"
},
"img_dir": {
"default": "",
"type": "string"
},
"label_dump_path": {
"default": "instances_val2017_mal.json",
"type": "string"
},
"load_mask": {
"default": false,
"type": "bool"
},
"num_gpus": {
"default": 1,
"description": "The number of GPUs to run the inference job.",
"minimum": 1,
"popular": true,
"title": "Number of GPUs",
"type": "int"
},
"num_nodes": {
"default": 1,
"description": "Number of nodes to run the inference on. If > 1, then multi-node is enabled.",
"minimum": 1,
"popular": true,
"title": "Number of nodes",
"type": "int"
},
"results_dir": {
"default": "",
"description": "\n Path to where all the assets generated from a task are stored.\n ",
"title": "Results directory",
"type": "string"
},
"trt_engine": {
"default": "",
"description": "Path to the TensorRT engine to be used for inference.\n This only works with :code:`tao-deploy`.",
"title": "TensorRT Engine",
"type": "string"
}
},
"type": "collection"
},
"model": {
"automl_disabled_parameters": [
"model.frozen_stages"
],
"automl_enabled": false,
"default": {
"arch": "vit-mae-base/16",
"frozen_stages": [
-1
],
"mask_head_hidden_channel": 256,
"mask_head_num_convs": 4,
"mask_head_out_channel": 256,
"mask_scale_ratio": 2.0,
"mask_scale_ratio_pre": 1,
"not_adjust_scale": false,
"teacher_momentum": 0.996,
"vit_dpr": 0.0
},
"properties": {
"arch": {
"default": "vit-mae-base/16",
"enum": [
"vit-deit-small/16",
"vit-mae-base/16",
"vit-mae-large/16",
"vit-mae-huge/14"
],
"type": "categorical"
},
"frozen_stages": {
"automl_enabled": false,
"default": [
-1
],
"type": "list_1_backbone"
},
"mask_head_hidden_channel": {
"default": 256,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"mask_head_num_convs": {
"default": 4,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"mask_head_out_channel": {
"default": 256,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"mask_scale_ratio": {
"default": 2.0,
"type": "float"
},
"mask_scale_ratio_pre": {
"default": 1,
"type": "int"
},
"not_adjust_scale": {
"default": false,
"type": "bool"
},
"teacher_momentum": {
"default": 0.996,
"maximum": 1.0,
"minimum": 0.0,
"type": "float"
},
"vit_dpr": {
"default": 0.0,
"type": "float"
}
},
"type": "collection"
},
"model_name": {
"default": "",
"description": "Name of model if invoking task via :code:`model_agnostic`",
"title": "Model name",
"type": "string"
},
"results_dir": {
"default": "",
"description": "\n Path to where all the assets generated from a task are stored.\n ",
"title": "Results directory",
"type": "string"
},
"train": {
"automl_disabled_parameters": [
"train.gpu_ids",
"train.cudnn",
"train.optim_betas",
"train.margin_rate",
"train.test_margin_rate",
"train.mask_thres"
],
"automl_enabled": false,
"default": {
"accum_grad_batches": 1,
"batch_size": 1,
"checkpoint_interval": 1,
"checkpoint_interval_unit": "epoch",
"crf_kernel_size": 3,
"crf_num_iter": 100,
"crf_size_ratio": 1,
"crf_value_high_thres": 0.9,
"crf_value_low_thres": 0.1,
"crf_zeta": 0.1,
"cudnn": {
"benchmark": false,
"deterministic": true
},
"gpu_ids": [
0
],
"loss_crf_step": 4000,
"loss_crf_weight": 0.5,
"loss_mil_step": 1000,
"loss_mil_weight": 4.0,
"lr": 1e-06,
"margin_rate": [
0,
1.2
],
"mask_thres": [
0.1
],
"min_lr": 0.0,
"min_lr_rate": 0.02,
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"num_wave": 1.0,
"optim_betas": [
0.9,
0.9
],
"optim_eps": 1e-08,
"optim_momentum": 0.9,
"optim_type": "adamw",
"pretrained_model_path": "",
"results_dir": "",
"resume_training_checkpoint_path": "",
"seed": 1234,
"test_margin_rate": [
0.6,
0.6
],
"use_amp": true,
"validation_interval": 1,
"warmup_epochs": 1,
"wd": 0.0005
},
"popular": [
"validation_interval",
"checkpoint_interval",
"num_gpus",
"num_nodes",
"num_epochs",
"gpu_ids"
],
"properties": {
"accum_grad_batches": {
"default": 1,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"batch_size": {
"default": 1,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"checkpoint_interval": {
"default": 1,
"description": "The interval (in epochs) at which a checkpoint will be saved. Helps resume training.",
"minimum": 1,
"popular": true,
"title": "Checkpoint interval",
"type": "int"
},
"checkpoint_interval_unit": {
"default": "epoch",
"description": "The unit of the checkpoint interval.",
"enum": [
"epoch",
"step"
],
"title": "Checkpoint interval unit",
"type": "categorical"
},
"crf_kernel_size": {
"default": 3,
"type": "int"
},
"crf_num_iter": {
"default": 100,
"type": "int"
},
"crf_size_ratio": {
"default": 1,
"type": "int"
},
"crf_value_high_thres": {
"default": 0.9,
"type": "float"
},
"crf_value_low_thres": {
"default": 0.1,
"type": "float"
},
"crf_zeta": {
"default": 0.1,
"type": "float"
},
"cudnn": {
"automl_enabled": false,
"default": {
"benchmark": false,
"deterministic": true
},
"properties": {
"benchmark": {
"default": false,
"type": "bool"
},
"deterministic": {
"default": true,
"type": "bool"
}
},
"type": "collection"
},
"gpu_ids": {
"automl_enabled": false,
"default": [
0
],
"description": "\n List of GPU IDs to run the training on. The length of this list\n must be equal to the number of gpus in train.num_gpus.",
"popular": true,
"title": "GPU IDs",
"type": "list"
},
"loss_crf_step": {
"default": 4000,
"type": "int"
},
"loss_crf_weight": {
"default": 0.5,
"type": "float"
},
"loss_mil_step": {
"default": 1000,
"type": "int"
},
"loss_mil_weight": {
"default": 4.0,
"type": "float"
},
"lr": {
"default": 1e-06,
"maximum": Infinity,
"minimum": 0.0,
"type": "float"
},
"margin_rate": {
"automl_enabled": false,
"default": [
0,
1.2
],
"type": "list"
},
"mask_thres": {
"automl_enabled": false,
"default": [
0.1
],
"type": "list"
},
"min_lr": {
"default": 0.0,
"type": "float"
},
"min_lr_rate": {
"default": 0.02,
"maximum": 1.0,
"minimum": 0.0,
"type": "float"
},
"num_epochs": {
"default": 10,
"description": "Number of epochs to run the training.",
"maximum": Infinity,
"minimum": 1,
"popular": true,
"title": "Number of epochs",
"type": "int"
},
"num_gpus": {
"default": 1,
"description": "The number of GPUs to run the train job.",
"minimum": 1,
"popular": true,
"title": "Number of GPUs",
"type": "int"
},
"num_nodes": {
"default": 1,
"description": "Number of nodes to run the training on. If > 1, then multi-node is enabled.",
"minimum": 1,
"popular": true,
"title": "Number of nodes",
"type": "int"
},
"num_wave": {
"default": 1.0,
"type": "float"
},
"optim_betas": {
"automl_enabled": false,
"default": [
0.9,
0.9
],
"type": "list"
},
"optim_eps": {
"default": 1e-08,
"type": "float"
},
"optim_momentum": {
"default": 0.9,
"maximum": 1.0,
"minimum": 0.0,
"type": "float"
},
"optim_type": {
"default": "adamw",
"enum": [
"adamw"
],
"type": "categorical"
},
"pretrained_model_path": {
"default": "",
"type": "string"
},
"results_dir": {
"default": "",
"description": "\n Path to where all the assets generated from a task are stored.\n ",
"title": "Results directory",
"type": "string"
},
"resume_training_checkpoint_path": {
"default": "",
"description": "Path to the checkpoint to resume training from.",
"title": "Resume checkpoint path",
"type": "string"
},
"seed": {
"default": 1234,
"description": "The seed for the initializer in PyTorch. If < 0, disable fixed seed.",
"maximum": Infinity,
"minimum": -1,
"title": "Seed for randomization",
"type": "int"
},
"test_margin_rate": {
"automl_enabled": false,
"default": [
0.6,
0.6
],
"type": "list"
},
"use_amp": {
"default": true,
"type": "bool"
},
"validation_interval": {
"default": 1,
"description": "\n The interval (in epochs) at which a evaluation\n will be triggered on the validation dataset.",
"minimum": 1,
"popular": true,
"title": "Validation interval",
"type": "int"
},
"warmup_epochs": {
"default": 1,
"maximum": Infinity,
"minimum": 0,
"type": "int"
},
"wd": {
"default": 0.0005,
"type": "float"
}
},
"type": "collection"
},
"wandb": {
"automl_disabled_parameters": [
"wandb.tags"
],
"automl_enabled": false,
"default": {
"enable": true,
"entity": "",
"group": "",
"name": "TAO Toolkit Training",
"project": "TAO Toolkit",
"reinit": false,
"run_id": "",
"save_code": false,
"sync_tensorboard": false,
"tags": [
"tao-toolkit"
]
},
"properties": {
"enable": {
"default": true,
"type": "bool"
},
"entity": {
"default": "",
"type": "string"
},
"group": {
"default": "",
"type": "string"
},
"name": {
"default": "TAO Toolkit Training",
"type": "string"
},
"project": {
"default": "TAO Toolkit",
"type": "string"
},
"reinit": {
"default": false,
"type": "bool"
},
"run_id": {
"default": "",
"type": "string"
},
"save_code": {
"default": false,
"type": "bool"
},
"sync_tensorboard": {
"default": false,
"type": "bool"
},
"tags": {
"automl_enabled": false,
"default": [
"tao-toolkit"
],
"type": "list"
}
},
"type": "collection"
}
},
"type": "object",
"x_tao_schema": {
"action": "inference",
"core_module": "mal",
"model": "mal",
"network_arch": "mal",
"schema_action": "inference",
"schema_version": 1,
"source": "tao-core dataclass config"
}
}
{
"actions": {
"evaluate": {
"automl_default_parameters": [],
"automl_disabled_parameters": [
"dataset",
"evaluate",
"evaluate.gpu_ids",
"inference",
"inference.gpu_ids",
"model",
"model.frozen_stages",
"train",
"train.cudnn",
"train.gpu_ids",
"train.margin_rate",
"train.mask_thres",
"train.optim_betas",
"train.test_margin_rate",
"wandb",
"wandb.tags"
],
"core_module": "mal",
"path": "schemas/evaluate.schema.json",
"popular": {
"evaluate": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"inference": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"train": {
"checkpoint_interval": 1,
"gpu_ids": [
0
],
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"validation_interval": 1
}
},
"schema_action": "evaluate",
"spec_template": "references/spec_template_evaluate.yaml"
},
"inference": {
"automl_default_parameters": [],
"automl_disabled_parameters": [
"dataset",
"evaluate",
"evaluate.gpu_ids",
"inference",
"inference.gpu_ids",
"model",
"model.frozen_stages",
"train",
"train.cudnn",
"train.gpu_ids",
"train.margin_rate",
"train.mask_thres",
"train.optim_betas",
"train.test_margin_rate",
"wandb",
"wandb.tags"
],
"core_module": "mal",
"path": "schemas/inference.schema.json",
"popular": {
"evaluate": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"inference": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"train": {
"checkpoint_interval": 1,
"gpu_ids": [
0
],
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"validation_interval": 1
}
},
"schema_action": "inference",
"spec_template": "references/spec_template_inference.yaml"
},
"train": {
"automl_default_parameters": [
"train.lr",
"train.wd"
],
"automl_disabled_parameters": [
"dataset",
"evaluate",
"evaluate.gpu_ids",
"inference",
"inference.gpu_ids",
"model",
"model.frozen_stages",
"train",
"train.cudnn",
"train.gpu_ids",
"train.margin_rate",
"train.mask_thres",
"train.optim_betas",
"train.test_margin_rate",
"wandb",
"wandb.tags"
],
"core_module": "mal",
"path": "schemas/train.schema.json",
"popular": {
"evaluate": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"inference": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"train": {
"checkpoint_interval": 1,
"gpu_ids": [
0
],
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"validation_interval": 1
}
},
"schema_action": "train",
"spec_template": "references/spec_template_train.yaml"
}
},
"automl_enabled": true,
"failures": {},
"model": "mal",
"network_arch": "mal",
"schema_version": 1
}
{
"automl_default_parameters": [
"train.lr",
"train.wd"
],
"automl_disabled_parameters": [
"train.cudnn",
"inference",
"evaluate",
"train.test_margin_rate",
"train",
"train.mask_thres",
"train.gpu_ids",
"model",
"wandb",
"wandb.tags",
"dataset",
"inference.gpu_ids",
"train.optim_betas",
"model.frozen_stages",
"train.margin_rate",
"evaluate.gpu_ids"
],
"default": {
"dataset": {
"crop_size": 512,
"load_mask": true,
"max_obj_size": 10000000000.0,
"min_obj_size": 2048.0,
"num_workers_per_gpu": 2,
"train_ann_path": "",
"train_img_dir": "",
"type": "coco",
"val_ann_path": "",
"val_img_dir": ""
},
"encryption_key": "",
"model": {
"arch": "vit-mae-base/16",
"frozen_stages": [
-1
],
"mask_head_hidden_channel": 256,
"mask_head_num_convs": 4,
"mask_head_out_channel": 256,
"mask_scale_ratio": 2.0,
"mask_scale_ratio_pre": 1,
"not_adjust_scale": false,
"teacher_momentum": 0.996,
"vit_dpr": 0.0
},
"model_name": "",
"results_dir": "",
"train": {
"accum_grad_batches": 1,
"batch_size": 1,
"checkpoint_interval": 1,
"checkpoint_interval_unit": "epoch",
"crf_kernel_size": 3,
"crf_num_iter": 100,
"crf_size_ratio": 1,
"crf_value_high_thres": 0.9,
"crf_value_low_thres": 0.1,
"crf_zeta": 0.1,
"cudnn": {
"benchmark": false,
"deterministic": true
},
"gpu_ids": [
0
],
"loss_crf_step": 4000,
"loss_crf_weight": 0.5,
"loss_mil_step": 1000,
"loss_mil_weight": 4.0,
"lr": 1e-06,
"margin_rate": [
0,
1.2
],
"mask_thres": [
0.1
],
"min_lr": 0.0,
"min_lr_rate": 0.02,
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"num_wave": 1.0,
"optim_betas": [
0.9,
0.9
],
"optim_eps": 1e-08,
"optim_momentum": 0.9,
"optim_type": "adamw",
"pretrained_model_path": "",
"results_dir": "",
"resume_training_checkpoint_path": "",
"seed": 1234,
"test_margin_rate": [
0.6,
0.6
],
"use_amp": true,
"validation_interval": 1,
"warmup_epochs": 1,
"wd": 0.0005
},
"wandb": {
"enable": true,
"entity": "",
"group": "",
"name": "TAO Toolkit Training",
"project": "TAO Toolkit",
"reinit": false,
"run_id": "",
"save_code": false,
"sync_tensorboard": false,
"tags": [
"tao-toolkit"
]
}
},
"popular": {
"evaluate": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"inference": {
"gpu_ids": [
0
],
"num_gpus": 1,
"num_nodes": 1
},
"train": {
"checkpoint_interval": 1,
"gpu_ids": [
0
],
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"validation_interval": 1
}
},
"properties": {
"automl_disabled_parameters": [
"wandb",
"dataset",
"train",
"model",
"inference",
"evaluate"
],
"dataset": {
"automl_enabled": false,
"default": {
"crop_size": 512,
"load_mask": true,
"max_obj_size": 10000000000.0,
"min_obj_size": 2048.0,
"num_workers_per_gpu": 2,
"train_ann_path": "",
"train_img_dir": "",
"type": "coco",
"val_ann_path": "",
"val_img_dir": ""
},
"properties": {
"crop_size": {
"default": 512,
"maximum": Infinity,
"minimum": 256,
"type": "int"
},
"load_mask": {
"default": true,
"title": "Whether to load segmentation mask in annotation file",
"type": "bool"
},
"max_obj_size": {
"default": 10000000000.0,
"title": "maximum object size",
"type": "float"
},
"min_obj_size": {
"default": 2048.0,
"title": "minimum object size",
"type": "float"
},
"num_workers_per_gpu": {
"default": 2,
"type": "int"
},
"train_ann_path": {
"default": "",
"title": "Annotation path of the training set",
"type": "string"
},
"train_img_dir": {
"default": "",
"title": "Image directory of the training set",
"type": "string"
},
"type": {
"default": "coco",
"enum": [
"coco"
],
"title": "dataset type",
"type": "categorical"
},
"val_ann_path": {
"default": "",
"title": "Annotation path of the validation set",
"type": "string"
},
"val_img_dir": {
"default": "",
"title": "Image directory of the validation set",
"type": "string"
}
},
"type": "collection"
},
"encryption_key": {
"default": "",
"description": "Key for encrypting model checkpoints",
"title": "Encryption key",
"type": "string"
},
"model": {
"automl_disabled_parameters": [
"model.frozen_stages"
],
"automl_enabled": false,
"default": {
"arch": "vit-mae-base/16",
"frozen_stages": [
-1
],
"mask_head_hidden_channel": 256,
"mask_head_num_convs": 4,
"mask_head_out_channel": 256,
"mask_scale_ratio": 2.0,
"mask_scale_ratio_pre": 1,
"not_adjust_scale": false,
"teacher_momentum": 0.996,
"vit_dpr": 0.0
},
"properties": {
"arch": {
"default": "vit-mae-base/16",
"enum": [
"vit-deit-small/16",
"vit-mae-base/16",
"vit-mae-large/16",
"vit-mae-huge/14"
],
"type": "categorical"
},
"frozen_stages": {
"automl_enabled": false,
"default": [
-1
],
"type": "list_1_backbone"
},
"mask_head_hidden_channel": {
"default": 256,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"mask_head_num_convs": {
"default": 4,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"mask_head_out_channel": {
"default": 256,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"mask_scale_ratio": {
"default": 2.0,
"type": "float"
},
"mask_scale_ratio_pre": {
"default": 1,
"type": "int"
},
"not_adjust_scale": {
"default": false,
"type": "bool"
},
"teacher_momentum": {
"default": 0.996,
"maximum": 1.0,
"minimum": 0.0,
"type": "float"
},
"vit_dpr": {
"default": 0.0,
"type": "float"
}
},
"type": "collection"
},
"model_name": {
"default": "",
"description": "Name of model if invoking task via :code:`model_agnostic`",
"title": "Model name",
"type": "string"
},
"results_dir": {
"default": "",
"description": "\n Path to where all the assets generated from a task are stored.\n ",
"title": "Results directory",
"type": "string"
},
"train": {
"automl_disabled_parameters": [
"train.gpu_ids",
"train.cudnn",
"train.optim_betas",
"train.margin_rate",
"train.test_margin_rate",
"train.mask_thres"
],
"automl_enabled": false,
"default": {
"accum_grad_batches": 1,
"batch_size": 1,
"checkpoint_interval": 1,
"checkpoint_interval_unit": "epoch",
"crf_kernel_size": 3,
"crf_num_iter": 100,
"crf_size_ratio": 1,
"crf_value_high_thres": 0.9,
"crf_value_low_thres": 0.1,
"crf_zeta": 0.1,
"cudnn": {
"benchmark": false,
"deterministic": true
},
"gpu_ids": [
0
],
"loss_crf_step": 4000,
"loss_crf_weight": 0.5,
"loss_mil_step": 1000,
"loss_mil_weight": 4.0,
"lr": 1e-06,
"margin_rate": [
0,
1.2
],
"mask_thres": [
0.1
],
"min_lr": 0.0,
"min_lr_rate": 0.02,
"num_epochs": 10,
"num_gpus": 1,
"num_nodes": 1,
"num_wave": 1.0,
"optim_betas": [
0.9,
0.9
],
"optim_eps": 1e-08,
"optim_momentum": 0.9,
"optim_type": "adamw",
"pretrained_model_path": "",
"results_dir": "",
"resume_training_checkpoint_path": "",
"seed": 1234,
"test_margin_rate": [
0.6,
0.6
],
"use_amp": true,
"validation_interval": 1,
"warmup_epochs": 1,
"wd": 0.0005
},
"popular": [
"validation_interval",
"checkpoint_interval",
"num_gpus",
"num_nodes",
"num_epochs",
"gpu_ids"
],
"properties": {
"accum_grad_batches": {
"default": 1,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"batch_size": {
"default": 1,
"maximum": Infinity,
"minimum": 1,
"type": "int"
},
"checkpoint_interval": {
"default": 1,
"description": "The interval (in epochs) at which a checkpoint will be saved. Helps resume training.",
"minimum": 1,
"popular": true,
"title": "Checkpoint interval",
"type": "int"
},
"checkpoint_interval_unit": {
"default": "epoch",
"description": "The unit of the checkpoint interval.",
"enum": [
"epoch",
"step"
],
"title": "Checkpoint interval unit",
"type": "categorical"
},
"crf_kernel_size": {
"default": 3,
"type": "int"
},
"crf_num_iter": {
"default": 100,
"type": "int"
},
"crf_size_ratio": {
"default": 1,
"type": "int"
},
"crf_value_high_thres": {
"default": 0.9,
"type": "float"
},
"crf_value_low_thres": {
"default": 0.1,
"type": "float"
},
"crf_zeta": {
"default": 0.1,
"type": "float"
},
"cudnn": {
"automl_enabled": false,
"default": {
"benchmark": false,
"deterministic": true
},
"properties": {
"benchmark": {
"default": false,
"type": "bool"
},
"deterministic": {
"default": true,
"type": "bool"
}
},
"type": "collection"
},
"gpu_ids": {
"automl_enabled": false,
"default": [
0
],
"description": "\n List of GPU IDs to run the training on. The length of this list\n must be equal to the number of gpus in train.num_gpus.",
"popular": true,
"title": "GPU IDs",
"type": "list"
},
"loss_crf_step": {
"default": 4000,
"type": "int"
},
"loss_crf_weight": {
"default": 0.5,
"type": "float"
},
"loss_mil_step": {
"default": 1000,
"type": "int"
},
"loss_mil_weight": {
"default": 4.0,
"type": "float"
},
"lr": {
"automl_enabled": true,
"default": 1e-06,
"maximum": 1e-05,
"minimum": 1e-07,
"type": "float"
},
"margin_rate": {
"automl_enabled": false,
"default": [
0,
1.2
],
"type": "list"
},
"mask_thres": {
"automl_enabled": false,
"default": [
0.1
],
"type": "list"
},
"min_lr": {
"default": 0.0,
"type": "float"
},
"min_lr_rate": {
"default": 0.02,
"maximum": 1.0,
"minimum": 0.0,
"type": "float"
},
"num_epochs": {
"default": 10,
"description": "Number of epochs to run the training.",
"maximum": Infinity,
"minimum": 1,
"popular": true,
"title": "Number of epochs",
"type": "int"
},
"num_gpus": {
"default": 1,
"description": "The number of GPUs to run the train job.",
"minimum": 1,
"popular": true,
"title": "Number of GPUs",
"type": "int"
},
"num_nodes": {
"default": 1,
"description": "Number of nodes to run the training on. If > 1, then multi-node is enabled.",
"minimum": 1,
"popular": true,
"title": "Number of nodes",
"type": "int"
},
"num_wave": {
"default": 1.0,
"type": "float"
},
"optim_betas": {
"automl_enabled": false,
"default": [
0.9,
0.9
],
"type": "list"
},
"optim_eps": {
"default": 1e-08,
"type": "float"
},
"optim_momentum": {
"default": 0.9,
"maximum": 1.0,
"minimum": 0.0,
"type": "float"
},
"optim_type": {
"default": "adamw",
"enum": [
"adamw"
],
"type": "categorical"
},
"pretrained_model_path": {
"default": "",
"type": "string"
},
"results_dir": {
"default": "",
"description": "\n Path to where all the assets generated from a task are stored.\n ",
"title": "Results directory",
"type": "string"
},
"resume_training_checkpoint_path": {
"default": "",
"description": "Path to the checkpoint to resume training from.",
"title": "Resume checkpoint path",
"type": "string"
},
"seed": {
"default": 1234,
"description": "The seed for the initializer in PyTorch. If < 0, disable fixed seed.",
"maximum": Infinity,
"minimum": -1,
"title": "Seed for randomization",
"type": "int"
},
"test_margin_rate": {
"automl_enabled": false,
"default": [
0.6,
0.6
],
"type": "list"
},
"use_amp": {
"default": true,
"type": "bool"
},
"validation_interval": {
"default": 1,
"description": "\n The interval (in epochs) at which a evaluation\n will be triggered on the validation dataset.",
"minimum": 1,
"popular": true,
"title": "Validation interval",
"type": "int"
},
"warmup_epochs": {
"default": 1,
"maximum": Infinity,
"minimum": 0,
"type": "int"
},
"wd": {
"automl_enabled": true,
"default": 0.0005,
"maximum": 0.01,
"minimum": 1e-05,
"type": "float"
}
},
"type": "collection"
},
"wandb": {
"automl_disabled_parameters": [
"wandb.tags"
],
"automl_enabled": false,
"default": {
"enable": true,
"entity": "",
"group": "",
"name": "TAO Toolkit Training",
"project": "TAO Toolkit",
"reinit": false,
"run_id": "",
"save_code": false,
"sync_tensorboard": false,
"tags": [
"tao-toolkit"
]
},
"properties": {
"enable": {
"default": true,
"type": "bool"
},
"entity": {
"default": "",
"type": "string"
},
"group": {
"default": "",
"type": "string"
},
"name": {
"default": "TAO Toolkit Training",
"type": "string"
},
"project": {
"default": "TAO Toolkit",
"type": "string"
},
"reinit": {
"default": false,
"type": "bool"
},
"run_id": {
"default": "",
"type": "string"
},
"save_code": {
"default": false,
"type": "bool"
},
"sync_tensorboard": {
"default": false,
"type": "bool"
},
"tags": {
"automl_enabled": false,
"default": [
"tao-toolkit"
],
"type": "list"
}
},
"type": "collection"
}
},
"type": "object",
"x_tao_schema": {
"action": "train",
"core_module": "mal",
"model": "mal",
"network_arch": "mal",
"schema_action": "train",
"schema_version": 1,
"source": "tao-core dataclass config"
}
}
Description: <br>
MAL (Mask Auto-Label) for weakly-supervised segmentation. Produces segmentation masks from minimal annotations (point or box annotations) using a ViT-MAE backbone. <br>
This skill is ready for commercial/non-commercial use. <br>
Owner
NVIDIA <br>
License/Terms of Use: <br>
Apache-2.0 <br>
Use Case: <br>
Developers and engineers training, evaluating, or running inference on NVIDIA TAO MAL (Mask Auto-Label) models for weakly-supervised segmentation from minimal annotations. <br>
Deployment Geography for Use: <br>
Global <br>
Known Risks and Mitigations: <br>
Risk: Review before execution as proposals could introduce incorrect or misleading guidance into skills. <br> Mitigation: Review and scan skill before deployment. <br>
Reference(s): <br>
- Agent Skills Open Standard <br>
- skill_info.yaml <br>
- spec_template_train.yaml <br>
- spec_template_evaluate.yaml <br>
- spec_template_inference.yaml <br>
Skill Output: <br>
Output Type(s): [Shell commands, Configuration instructions] <br> Output Format: [Markdown with inline bash code blocks] <br> Output Parameters: [1D] <br> Other Properties Related to Output: [None] <br>
Evaluation Agents Used: <br>
- Claude Code (
claude-code) <br> - Codex (
codex) <br>
Evaluation Tasks: <br>
Evaluated against 1 internal skill task in astra-sandbox environment using NVSkills-Eval external profile. <br>
Evaluation Metrics Used: <br>
Reported benchmark dimensions: <br>
- Security: Checks whether skill-assisted execution avoids unsafe behavior such as secret leakage, destructive commands, or unauthorized access. <br>
- Correctness: Checks whether the agent follows the expected workflow and produces the correct final output. <br>
- Discoverability: Checks whether the agent loads the skill when relevant and avoids using it when irrelevant. <br>
- Effectiveness: Checks whether the agent performs measurably better with the skill than without it. <br>
- Efficiency: Checks whether the agent uses fewer tokens and avoids redundant work. <br>
Underlying evaluation signals used in this run: <br>
security: Checks for unsafe operations, secret leakage, and unauthorized access. <br>skill_execution: Verifies that the agent loaded the expected skill and workflow. <br>skill_efficiency: Checks routing quality, decoy avoidance, and redundant tool usage. <br>accuracy: Grades final-answer correctness against the reference answer. <br>goal_accuracy: Checks whether the overall user task completed successfully. <br>behavior_check: Verifies expected behavior steps, including safety expectations. <br>token_efficiency: Compares token usage with and without the skill. <br>
Evaluation Results: <br>
| Dimension | Num | claude-code | codex |
|---|---|---|---|
| Security | 1 | 100% (+0%) | 100% (+0%) |
| Correctness | 1 | 50% (+40%) | 97% (+97%) |
| Discoverability | 1 | 0% (+0%) | 97% (+97%) |
| Effectiveness | 1 | 66% (+28%) | 90% (+72%) |
| Efficiency | 1 | 27% (+0%) | 96% (+68%) |
Skill Version(s): <br>
0.1.0 (source: frontmatter) <br>
Ethical Considerations: <br>
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse. <br>
(For Release on NVIDIA Platforms Only) <br> Please report quality, risk, security vulnerabilities or NVIDIA AI Concerns here. <br>
{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"x509CertificateChain":{"certificates":[{"rawBytes":"MIICgzCCAgmgAwIBAgIUKIyS7SxNteQIiWzK1dWj85E6520wCgYIKoZIzj0EAwMwVTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjEpMCcGA1UEAwwgTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBJQ0EgMDEwHhcNMjYwNDAxMDAwMDAwWhcNMjgwNDIyMTUzMzA5WjBUMQswCQYDVQQGEwJVUzEbMBkGA1UECgwSTlZJRElBIENvcnBvcmF0aW9uMSgwJgYDVQQDDB9OVklESUEgQWdlbnQgU2tpbGxzIFNpZ25pbmcgMDAxMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEYoRM9bQl/dGlwSRNi6bTpIJUXH8Nv9GciP6LSflJYYMLCc296kpyuTSsk5ddbAWiDcFX3C/ydX3jwc+qCLYP6uHy9XphyLjOQ27Yb2J6rBLVtRBS1mgGco/Gr7fL6ODco4GaMIGXMB0GA1UdDgQWBBRQ/5ZW3nJ6lmo9SVk7I15o7UGmpTAfBgNVHSMEGDAWgBRPGpILxMBBleJSsBGjrMKsby1CgjAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIHgDA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6Ly9vY3NwLm5kaXMubnZpZGlhLmNvbTAKBggqhkjOPQQDAwNoADBlAjAUygu/GiOCIXrgGr4SmLgeEVDcEitfFUv7ALbvLVGVyMysB3mxmO/uInZfXzWcJZsCMQDxuoxj4ZmO30jhkPIcCxGFCOvnUsnfU3TfGcouYm4M6iRpbKvtVnHPiy4bi6pcKf0="},{"rawBytes":"MIICiDCCAg6gAwIBAgIUZsIuSv9NkpJCNqtYEfCouVv5BzowCgYIKoZIzj0EAwMwUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTAgFw0yNjA0MDEwMDAwMDBaGA85OTk5MTIzMTIzNTk1OVowVTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjEpMCcGA1UEAwwgTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBJQ0EgMDEwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASI72cR3ctKGg4VWnB3bNja6g1Z2PnOmFEopkPof+QeIcPk9rT+g9MjJnq51EQXL93a7C2GJ9J985G4o2V85VD7wJ1RaXhluHW2rf3y8bQGeAYaKMr5s/hUgn+M3/9WlWejgaAwgZ0wHQYDVR0OBBYEFE8akgvEwEGV4lKwEaOswqxvLUKCMB8GA1UdIwQYMBaAFItnoAjjfuCEUvzyvWyI2vOGvwPjMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEGMDcGCCsGAQUFBwEBBCswKTAnBggrBgEFBQcwAYYbaHR0cDovL29jc3AubmRpcy5udmlkaWEuY29tMAoGCCqGSM49BAMDA2gAMGUCMQCeIMMfAbyzPDacw2MxG+Yt1cikrJX/DVxiGfXuHmkkXn6VgSzE79+lkqDErpVO2gYCMCNEColOyvUvkzZGUEI1hQ3PfMgi3FIo9tHoBKMw4/wGBLFpu/0ubtmbBXM6/UMOEw=="},{"rawBytes":"MIICRTCCAcygAwIBAgIUeJdY3rV86EdvFmG7L8LJBsyQFYkwCgYIKoZIzj0EAwMwUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTAgFw0yNjA0MDEwMDAwMDBaGA85OTk5MTIzMTIzNTk1OVowUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTB2MBAGByqGSM49AgEGBSuBBAAiA2IABAYpiXCDjJ9NT2eSDhyHJVSw1Tbze18cGG2F/578oWvHxg23eQAhNRYdq88i1iOshZSO6C29doKui5Xpmo/7Ctw9Sx4PP2RzOmIuOLCuTdNtKcTRwi4GEsd5BAFvWj42M6NjMGEwHQYDVR0OBBYEFItnoAjjfuCEUvzyvWyI2vOGvwPjMB8GA1UdIwQYMBaAFItnoAjjfuCEUvzyvWyI2vOGvwPjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMAoGCCqGSM49BAMDA2cAMGQCMCwtAjWLaNwgGWNCgdyNoTyvNhqWRECRJV2r3+7w8g0PL6NHLOsbkgE09BH95h8XlgIwTaQmbbUh2ChAJ5TA1wRiVDnCcvbzHlZl2jM2FcwQQZlk19LOAbyGMRixbu2Ww/rj"}]},"tlogEntries":[]},"dsseEnvelope":{"payload":"ewogICJfdHlwZSI6ICJodHRwczovL2luLXRvdG8uaW8vU3RhdGVtZW50L3YxIiwKICAic3ViamVjdCI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAidGFvLXRyYWluLW1hc2stYXV0by1sYWJlbCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiZTk2ZWRhZjRlOWQ5OTVmMzZiM2M0Zjc1Y2Y0YWExYmE5ZDY4YWM0NmM0YjhiNmY4MjY3OWMxM2Q5N2U5NGFkIgogICAgICB9CiAgICB9CiAgXSwKICAicHJlZGljYXRlVHlwZSI6ICJodHRwczovL21vZGVsX3NpZ25pbmcvc2lnbmF0dXJlL3YxLjAiLAogICJwcmVkaWNhdGUiOiB7CiAgICAic2VyaWFsaXphdGlvbiI6IHsKICAgICAgImhhc2hfdHlwZSI6ICJzaGEyNTYiLAogICAgICAiaWdub3JlX3BhdGhzIjogWwogICAgICAgICIuZ2l0IiwKICAgICAgICAiLmdpdGlnbm9yZSIsCiAgICAgICAgIi5naXRodWIiLAogICAgICAgICIuZ2l0YXR0cmlidXRlcyIKICAgICAgXSwKICAgICAgIm1ldGhvZCI6ICJmaWxlcyIsCiAgICAgICJhbGxvd19zeW1saW5rcyI6IGZhbHNlCiAgICB9LAogICAgInJlc291cmNlcyI6IFsKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAiZGlnZXN0IjogIjZmZTJkODE4OTcwNGVjMzliYzQ2ODkxZmFkMjZmMmU1OTYxNDQxZjgzMTQ4YTg0YzQ1Nzc0MmQ0MWQxYjNmZDEiLAogICAgICAgICJuYW1lIjogIkJFTkNITUFSSy5tZCIKICAgICAgfSwKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAiZGlnZXN0IjogIjhmYTFjZjE3MjZkMzczNzRjOTNiMTcxMDc0ZjAyY2ZjMTEwZDgzZTU3ZGZhY2UyN2RjY2UyZDkxYzM0YWQ0ZGUiLAogICAgICAgICJuYW1lIjogIlNLSUxMLm1kIgogICAgICB9LAogICAgICB7CiAgICAgICAgImFsZ29yaXRobSI6ICJzaGEyNTYiLAogICAgICAgICJkaWdlc3QiOiAiNDQyYjA3MDgxMWU4ZWZlZWM2OTM0MmQwMTAzY2QwMzIyYTI1MzcyN2ZlZDBjZjU1MjVkZTUzNDViNzczYWExYSIsCiAgICAgICAgIm5hbWUiOiAiZXZhbHMvZXZhbHMuanNvbiIKICAgICAgfSwKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAiZGlnZXN0IjogIjVjYWJmMDg3NmFiZDlhNzkwN2NlZmViMTQ2ODMwMGZiM2VjYjUwZDZjMzhiYTMyYWIwZGFjMDBlMWNhYWFmYmQiLAogICAgICAgICJuYW1lIjogInJlZmVyZW5jZXMvc2tpbGxfaW5mby55YW1sIgogICAgICB9LAogICAgICB7CiAgICAgICAgImFsZ29yaXRobSI6ICJzaGEyNTYiLAogICAgICAgICJkaWdlc3QiOiAiZGZjZDEwMjJiYTJiODdkYzhkNmM1YjA1NGIwZTNkYTA2ODJmNDY4MGQ1OTI1MDQyMWJkZmQ2YzJkYjFhMWY5NCIsCiAgICAgICAgIm5hbWUiOiAicmVmZXJlbmNlcy9zcGVjX3RlbXBsYXRlX2V2YWx1YXRlLnlhbWwiCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiYWxnb3JpdGhtIjogInNoYTI1NiIsCiAgICAgICAgImRpZ2VzdCI6ICIwZjg0MTE1YzNiZGRjMmFjYmRhNmUzYjhlZGJlMGMzOWY3YWQxYzIyNWNhODYyZTcxZjI0MzZiOTZkN2RjZjA0IiwKICAgICAgICAibmFtZSI6ICJyZWZlcmVuY2VzL3NwZWNfdGVtcGxhdGVfaW5mZXJlbmNlLnlhbWwiCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiYWxnb3JpdGhtIjogInNoYTI1NiIsCiAgICAgICAgImRpZ2VzdCI6ICJjNWUwYmI1ZDU2ZjAwZjhhYmY3YWQ1ZTE3YjNlZjdkOTQwYzE1NTRjYzVjNWVjNmEzZDE0YjEzNGUyMDMxZDNjIiwKICAgICAgICAibmFtZSI6ICJyZWZlcmVuY2VzL3NwZWNfdGVtcGxhdGVfdHJhaW4ueWFtbCIKICAgICAgfSwKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAiZGlnZXN0IjogIjQ2MTg1YjA0ZTVlNzE0NDZjMzY0ZTgwZDJlZDljODI3N2JhMTIzNWRiZmJlMzg1NmIyNGM2OTk3YmIyNzJjYjkiLAogICAgICAgICJuYW1lIjogInNjaGVtYXMvZXZhbHVhdGUuc2NoZW1hLmpzb24iCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiYWxnb3JpdGhtIjogInNoYTI1NiIsCiAgICAgICAgImRpZ2VzdCI6ICI2YzA5MDc3YzZhZGRjMmY2NjMyOTdjNGI2NmVlZjJhZTE0NTViNTMzOTc3M2EyNWM5MTQ5ZDg1NjM3NjVkNDZkIiwKICAgICAgICAibmFtZSI6ICJzY2hlbWFzL2luZmVyZW5jZS5zY2hlbWEuanNvbiIKICAgICAgfSwKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAiZGlnZXN0IjogImE5ZTgwMjE2YzNhNDk3NDI3OTQwNTA5ZjE0ZjAzMjAyMTM4NWEyY2NlMDM1YTc3NTM3NjhmMDUzNGQ2Yzg2ZmIiLAogICAgICAgICJuYW1lIjogInNjaGVtYXMvbWFuaWZlc3QuanNvbiIKICAgICAgfSwKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAiZGlnZXN0IjogIjVhNGU5MjhjMWQ4MzZiN2MzMzY5MmUwMWQ1Y2ZiMWYxNzQyZDdhOGMzZDBhOTIwZGM4MmU0Y2ZlNjY1NGZlMzciLAogICAgICAgICJuYW1lIjogInNjaGVtYXMvdHJhaW4uc2NoZW1hLmpzb24iCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiYWxnb3JpdGhtIjogInNoYTI1NiIsCiAgICAgICAgImRpZ2VzdCI6ICIyNzJlOGY5MGEyNDk0Mjg1NGEyNTBjOTM0MGJhZmM2YjQ4ZjE0NDI5MjZjNjAyZTNlYzhhN2NlYTcxOGI2YjZjIiwKICAgICAgICAibmFtZSI6ICJza2lsbC1jYXJkLm1kIgogICAgICB9CiAgICBdCiAgfQp9","payloadType":"application/vnd.in-toto+json","signatures":[{"sig":"MGYCMQCWdNs+GqeNLXaG024WyjAsy3VBqnSRGID/1jFcwTeUeI1ZojokitNYpWpFZlB2HFoCMQDmacXGIffC2cIKifUFNNrY+Mv1GlNlC8qEQ11bZGLMsB5a0729O1ERnzSfNpdwY2U=","keyid":""}]}}Related skills
How it compares
Use tao-train-mask-auto-label to bootstrap masks from sparse prompts; use tao-train-mask2former when full panoptic ground truth is already available for universal segmentation training.
FAQ
What annotations does tao-train-mask-auto-label accept?
tao-train-mask-auto-label expects COCO-style annotation JSON plus image paths matching file_name entries after data preparation. Archive-only CSV datasets are incompatible unless converted to this format with images.tar.gz and annotations.json train and validation splits.
What ViT-MAE settings does MAL training use?
tao-train-mask-auto-label defaults to vit-mae-base/16 architecture with train.lr 1e-6 and dataset.crop_size 512. The skill warns against vit-deit-tiny/16 because the current runtime rejects tiny ViT variants, and crop_size overrides belong under dataset not model.
Does MAL support AutoML hyperparameter tuning?
tao-train-mask-auto-label is AutoML-enabled and recommends searching train.lr from 1e-7 to 1e-5 and train.wd from 1e-5 to 1e-2. The packaged train schema marks these two parameters as default AutoML hyperparameters for ViT-MAE fine-tuning runs.