claude_refactor_v3: Added .py-confs and all presets (nx5 .gin files). TODO: common gins-mapping and prepare to next step
This commit is contained in:
@@ -1 +1,10 @@
|
||||
# SOFIA v7.1 from-scratch — keep activations live (no gradient checkpointing).
|
||||
HardwareConfig.device = 'cuda'
|
||||
HardwareConfig.batch_size = 8
|
||||
HardwareConfig.grad_accum_steps = 8
|
||||
HardwareConfig.num_workers = 4
|
||||
HardwareConfig.use_amp = True
|
||||
HardwareConfig.gradient_checkpointing = False
|
||||
HardwareConfig.reserve_gb = 2.0
|
||||
HardwareConfig.total_vram_gb = 24.0
|
||||
|
||||
|
||||
@@ -1 +1,92 @@
|
||||
# SOFIA v7.1 Tiny preset (~5M params) with text fusion (Text-FiLM mid-level
|
||||
# in SAT and UAV heads + GatedFusion late-level on descriptors).
|
||||
#
|
||||
# Tiny-specific notes:
|
||||
# - num_heads_s3/s4 = 4 (channels 176/224 not divisible by 8)
|
||||
# - mamba_headdim = 16 (channels not divisible by default 64)
|
||||
# - mamba_variant = 'mamba1' (Mamba-2 torch fallback bug for these dims)
|
||||
# - d_descriptor = 1024 (override from preset M default 512)
|
||||
# - text fusion enabled (override from preset M default disabled)
|
||||
|
||||
ModelsCommonConfig.backbone = 'sofia_v71'
|
||||
ModelsCommonConfig.baseline_mode = True
|
||||
ModelsCommonConfig.init_gate = 0.7
|
||||
ModelsCommonConfig.lrsclip_path = 'nn_models/LRSCLIP/DGTRS-CLIP-ViT-L-14.pt'
|
||||
|
||||
# Variant label (informational).
|
||||
SOFIAv71ModelsConfig.variant_label = 'Tiny'
|
||||
|
||||
# Input.
|
||||
SOFIAv71ModelsConfig.input_size = 256
|
||||
SOFIAv71ModelsConfig.in_channels = 3
|
||||
|
||||
# Stem (Tiny dims).
|
||||
SOFIAv71ModelsConfig.stem_mid = 16
|
||||
SOFIAv71ModelsConfig.stem_out = 32
|
||||
|
||||
# Backbone dimensions (Tiny).
|
||||
SOFIAv71ModelsConfig.embed_dims = [48, 96, 176, 224]
|
||||
SOFIAv71ModelsConfig.depths = [2, 3, 4, 2]
|
||||
|
||||
# Stage 1-2 block params (default).
|
||||
SOFIAv71ModelsConfig.mbconv_expand = 4
|
||||
SOFIAv71ModelsConfig.se_ratio = 16
|
||||
SOFIAv71ModelsConfig.strip_kernel_s1 = 7
|
||||
SOFIAv71ModelsConfig.strip_kernel_s2 = 5
|
||||
SOFIAv71ModelsConfig.mix_kernels = [3, 5, 7]
|
||||
SOFIAv71ModelsConfig.use_dcn_strip = True
|
||||
|
||||
# Stage 3-4 (MambaVision). Tiny: mamba1 to bypass torch fallback bug.
|
||||
SOFIAv71ModelsConfig.mamba_d_state = 16
|
||||
SOFIAv71ModelsConfig.mamba_dt_rank = None
|
||||
SOFIAv71ModelsConfig.mamba_backend = 'auto'
|
||||
SOFIAv71ModelsConfig.mamba_variant = 'mamba1'
|
||||
|
||||
# Mamba-2 tunables (used when mamba_variant='mamba2'; Tiny would need
|
||||
# headdim=16 because 176 % 64 != 0 and 224 % 64 != 0).
|
||||
SOFIAv71ModelsConfig.mamba_d_state_mamba2 = 64
|
||||
SOFIAv71ModelsConfig.mamba_headdim = 16
|
||||
SOFIAv71ModelsConfig.mamba_expand = 2
|
||||
SOFIAv71ModelsConfig.mamba_d_conv = 4
|
||||
SOFIAv71ModelsConfig.mamba_n_directions = 2
|
||||
|
||||
# Heads / attention (Tiny: heads=4).
|
||||
SOFIAv71ModelsConfig.num_heads_s3 = 4
|
||||
SOFIAv71ModelsConfig.num_heads_s4 = 4
|
||||
SOFIAv71ModelsConfig.use_strip_branch_s3 = True
|
||||
SOFIAv71ModelsConfig.use_strip_branch_s4 = False
|
||||
SOFIAv71ModelsConfig.ffn_expand = 4
|
||||
|
||||
# EVSS bridge (off by default).
|
||||
SOFIAv71ModelsConfig.use_evss_bridge = False
|
||||
SOFIAv71ModelsConfig.evss_bridge_locations = ['pre_stage3']
|
||||
|
||||
# Neck (Tiny).
|
||||
SOFIAv71ModelsConfig.neck_channels = 128
|
||||
|
||||
# CVGL Head.
|
||||
SOFIAv71ModelsConfig.d_descriptor = 1024
|
||||
SOFIAv71ModelsConfig.use_asymmetric_heads = True
|
||||
SOFIAv71ModelsConfig.chp_rings = 8
|
||||
SOFIAv71ModelsConfig.chp_angles = 16
|
||||
SOFIAv71ModelsConfig.chp_harmonics = 4
|
||||
SOFIAv71ModelsConfig.use_film_altitude = True
|
||||
SOFIAv71ModelsConfig.altitude_norm = 500.0
|
||||
SOFIAv71ModelsConfig.ring_count = 4
|
||||
SOFIAv71ModelsConfig.use_ring_aux = True
|
||||
|
||||
# Text fusion enabled.
|
||||
SOFIAv71ModelsConfig.return_normalized = True
|
||||
SOFIAv71ModelsConfig.use_text_film_sat = True
|
||||
SOFIAv71ModelsConfig.use_text_film_uav = True
|
||||
SOFIAv71ModelsConfig.text_film_dim = 1024
|
||||
SOFIAv71ModelsConfig.text_film_hidden = 256
|
||||
|
||||
# Sharing / KD / deploy.
|
||||
SOFIAv71ModelsConfig.share_stages_1_2 = True
|
||||
SOFIAv71ModelsConfig.enable_kd_taps = True
|
||||
SOFIAv71ModelsConfig.precision = 'fp16'
|
||||
|
||||
# LoRA.
|
||||
SOFIAv71ModelsConfig.lora_rank = 4
|
||||
|
||||
|
||||
@@ -1 +1,15 @@
|
||||
# Pipeline: GTA-UAV-LR with text captions, servml workstation paths.
|
||||
PipelineConfig.train_json = 'meta/train_80.json'
|
||||
PipelineConfig.test_json = 'meta/test_20.json'
|
||||
PipelineConfig.rgb_root = '/home/servml/Документы/datasets/GTA-UAV-LR'
|
||||
PipelineConfig.caption_root = '/home/servml/Документы/datasets/GTA-UAV-LR-captions'
|
||||
PipelineConfig.filter_meta = 'meta/seg_filter.json'
|
||||
|
||||
PipelineConfig.epochs = 10
|
||||
PipelineConfig.warmup_epochs = 2
|
||||
PipelineConfig.eval_every = 1
|
||||
PipelineConfig.seed = 42
|
||||
|
||||
PipelineConfig.output_dir = 'out/gtauav/baseline_sofia'
|
||||
PipelineConfig.resume_from = None
|
||||
|
||||
|
||||
@@ -1 +1,16 @@
|
||||
# Default tracking: TensorBoard on, W&B off, no Grad-CAM, no profiler.
|
||||
TrackingConfig.use_wandb = False
|
||||
TrackingConfig.use_tb = True
|
||||
TrackingConfig.wandb_project = 'caption-test-gtauav'
|
||||
TrackingConfig.wandb_run_name = None
|
||||
TrackingConfig.wandb_entity = None
|
||||
|
||||
TrackingConfig.log_grad_norms = True
|
||||
TrackingConfig.use_gradcam = False
|
||||
TrackingConfig.gradcam_every = 5
|
||||
TrackingConfig.gradcam_samples = 8
|
||||
|
||||
TrackingConfig.use_profiler = False
|
||||
TrackingConfig.profiler_warmup = 3
|
||||
TrackingConfig.profiler_active = 5
|
||||
|
||||
|
||||
@@ -1 +1,32 @@
|
||||
# Loss + optimizer + sampler — symmetric InfoNCE, AdamW, mutex sampler.
|
||||
TrainingConfig.loss_type = 'symmetric'
|
||||
TrainingConfig.tau_init = 0.07
|
||||
TrainingConfig.tau_min = 0.01
|
||||
TrainingConfig.tau_max = 0.1
|
||||
TrainingConfig.learnable_temperature = True
|
||||
TrainingConfig.label_smoothing = 0.1
|
||||
|
||||
TrainingConfig.tau_final = 0.01
|
||||
TrainingConfig.weight_q2g = 0.6
|
||||
TrainingConfig.weight_g2q = 0.4
|
||||
TrainingConfig.hard_mining_k = 0
|
||||
TrainingConfig.neg_bank_size = 0
|
||||
|
||||
# WeightedInfoNCE-only (unused when loss_type='symmetric').
|
||||
TrainingConfig.weighted_loss_k = 5.0
|
||||
|
||||
TrainingConfig.learning_rate = 1e-4
|
||||
TrainingConfig.text_lr_factor = 0.1
|
||||
TrainingConfig.weight_decay = 1e-4
|
||||
TrainingConfig.grad_clip = 1.0
|
||||
|
||||
TrainingConfig.sampler_type = 'mutex'
|
||||
TrainingConfig.dss_warmup_epochs = 1
|
||||
TrainingConfig.dss_reembed_every = 1
|
||||
TrainingConfig.dss_knn_device = 'cuda'
|
||||
TrainingConfig.dss_use_lsh = False
|
||||
TrainingConfig.dss_lsh_num_tables = 8
|
||||
TrainingConfig.dss_lsh_num_bits = 14
|
||||
TrainingConfig.dss_cache_dir = None
|
||||
TrainingConfig.use_mutex_sampler = True
|
||||
|
||||
|
||||
Reference in New Issue
Block a user