Reference

YAML fields, CLI commands, utilities, and repository layout.

This page keeps the detailed tables out of the README while preserving the implementation-oriented information needed for feature-bank extraction and training.

CLI command map

Main commands and helper scripts

Command Purpose
fps-uda extract-feature-bank Extract dataset-level H5 banks from image datasets.
fps-uda analyze-feature-bank Compute analysis-only supervised view metrics and recommendations.
fps-uda train Train FPS from feature-bank roles or NumPy/Torch feature arrays.
fps-uda sweep Run alpha/beta sweeps from a sectioned training config.
scripts/download_feature_banks.py Download released H5 banks from Hugging Face with mirror fallback.
scripts/download_datasets.py Download datasets or generate manifests for existing local copies.
scripts/search_fps_hyperparams.py Search views and key hyperparameters, then write runnable YAML.

Training YAML

Training Parameter Reference

io

feature_bank, source_domain, target_domain, feature_transform, num_classes, and device.

views

src, entropy, cr.view1, cr.view2, and eval. Each role has a key and combine: stack|mean.

optimization

optimizer, base_lr, momentum, nesterov, weight_decay, adamw_betas, adamw_eps, lr_schedule, and min_lr.

schedule

iter_num, alpha, alpha_0, beta, beta_0, schedule_tau, dynamic_parameters, src_sample_ratio, and target_sample_ratio.

normalization

normalize, cross_norm_scale, cross_norm_target_weight, self_norm_scale_src, and self_norm_scale_tgt.

losses and eval

LSE/LCE/LCR, lambda_lcr, lcr_loss, lcr_sample_weight, sparse density, pseudo-margin, LDelta, entropy type, eval_interval, multi_class, and progress output.

Dataset YAML

Extraction Parameter Reference

Section Field Meaning
root root_dir Dataset root used by domain paths.
backbone backend, name, weights, checkpoint Model source and optional weights/checkpoint.
backbone.pooling feature_type, random_strategy Pooling shape and random mask strategy.
loader batch_size, num_workers DataLoader settings.
transform mean, std, interpolation, antialias, pad_fill Deterministic preprocessing controls.
domains kind: manifest or kind: class_folder Read image paths and labels from manifests or folders.
feature_bank water_level, mute_padding_in_pool Random pooling water level and padding-mask behavior.
feature_bank.views pad_to_square, resize_size, input_size, crop, flip Deterministic view geometry.
feature_bank.views random_pooling_count Optional number of random pooling views per base view; defaults to 2.

With random_pooling_count: 2, a base key such as pad_resize256_input224_center_orig expands to *_clean, *_pool_a, and *_pool_b. Set it to 0 for clean-only banks, or larger values for pool_c, pool_d, and so on.

Benchmark utilities

Run benchmark configs

PYTHONPATH=src \
PYTHON_BIN=python \
DEVICE=cuda:0 \
RESUME=1 \
KEEP_GOING=1 \
bash scripts/run_benchmarks.sh
PYTHONPATH=src DATASETS=office31 BACKBONES=vit DRY_RUN=1 \
  bash scripts/run_benchmarks.sh

PYTHONPATH=src TASKS=amazon_to_webcam ITER_NUM=1000 \
  bash scripts/run_benchmarks.sh