Files
fuze_task/docs/03_codebase_guides/CAPTION_TEST_CODE_MAP.md
Pikaliov 2c6a00a4ca fuse_proj: Initial operational package for 3 researchers (Pavlenko/Blizno/Moroz)
Multimodal fusion research on StripNet+GTA-UAV proxy:
- 3 independent fusion tracks: condition-aware (A), token/bottleneck (B), role-aware (C)
- Shared interfaces, protocol, dataset audit, baseline benchmarks
- Canonical version-chain references to vault (SPEC, ANALYSIS, TRIAGE)
- Personalized task plans and decision tables for each researcher
- 3 generated DOCX task assignment files with milestones and DoD checklist
- Full modality dropout diagnostics and missing-modality robustness requirements
- Data contract, benchmark registry, experiment tracking infrastructure

Operational documents:
- docs/00_project/: MERIDIAN context, protocol, repository reuse guide, experiment specification
- docs/01_tasks/: Master assignment + 3 individual researcher tracks + joint integration
- docs/02_references/: Core literature, version-chain bases, code maps
- docs/03_codebase_guides/: Existing code snapshots from vault
- scripts/: gen_task_plans.js (DOCX generation), placeholder infrastructure
- vendor_reference/: Snapshots of caption_test, depth_edges_annotate, existing SOFIA/SegModel code
- reports/, results/, experiments/: Shared output structure for all 3 researchers

3 DOCX files generated from gen_task_plans.js (Times New Roman 14pt, GOST format):
- План_заданий_Павленко_БВ.docx (Condition-Aware track, fusion API owner)
- План_заданий_Близно_МВ.docx (Token/Bottleneck track, benchmark owner)
- План_заданий_Мороз_ЕС.docx (Role-Aware track, data contract owner)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-06-11 17:16:57 +03:00

3.6 KiB
Raw Permalink Blame History

Карта проекта caption-test

1. Источник

C:\Users\Lisadminipc\Documents\code\caption-test

Снимки ключевых файлов находятся в vendor_reference/caption_test/.

2. StripNet

Файл Назначение Действие
src/models/stripnet/model.py 4-stage StripNet-small переиспользовать backbone
src/models/stripnet_encoder.py GAP + Linear 512->1024 использовать как RGB baseline wrapper
src/models/stripnet/conv_mona.py adapters stages 3-4 применять одинаково во всех сравнениях
conf/gtauav_balanced_stripnet.gin reference config перенести параметры, убрать hardcoded paths

Ожидаемые stage outputs:

stage 1: [B, 64, 64, 64]
stage 2: [B, 128, 32, 32]
stage 3: [B, 320, 16, 16]
stage 4: [B, 512, 8, 8]

Текущий wrapper возвращает только stage 4 descriptor. Для multi-stage fusion нужен безопасный интерфейс к forward_features, не дублирующий backbone forward.

3. GTA-UAV data

Файл Полезная часть
src/datasets/gtauav_dataset.py pair JSON, captions L1/L2/L3, satellite candidates
src/datasets/mutually_exclusive_sampler.py исключение false negatives внутри batch
meta/train_80.json train split snapshot
meta/test_20.json test split snapshot
meta/seg_filter.json segmentation-based filter

Что добавить:

  1. Annotation root.
  2. SafeTensors loading.
  3. CHM для satellite, depth для UAV.
  4. Segmentation для обеих view.
  5. Validity masks.
  6. Auxiliary tensor validation.

4. Training

Файл Переиспользовать
src/training/train_gtauav.py seed, optimizer, scheduler, tracking, checkpoint patterns
src/training/trackers.py CSV/TensorBoard/W&B
src/training/profiling.py profiler и model summary
src/losses/multi_infonce.py symmetric objective
src/losses/weighted_infonce.py только если одинаково для всех variants

Текущий training file содержит исторические model options и hardcoded paths. В новом проекте отделить:

  • model construction;
  • fusion registry;
  • data config;
  • training loop;
  • evaluation;
  • run manifest.

5. Evaluation

Критическая проверка: одна UAV query может иметь несколько valid satellite matches. Нельзя считать единственным positive только diagonal pair текущего batch.

Сохранить per-query:

query_id
rank_first_positive
top_k_ids
success_at_1
success_at_5
success_at_10

Это требуется для paired statistical tests между fusion variants.

6. Residual fusion reference

src/models/residual_fusions.py содержит простые gate/residual baselines. Использовать как B1-B3 reference, но перед переносом:

  • проверить все ветви gate_type;
  • добавить strict shape validation;
  • добавить explicit diagnostics;
  • убрать неиспользуемые варианты;
  • обеспечить identity behaviour;
  • покрыть tests.

7. Рекомендуемый порядок переноса

  1. StripNet model и wrapper.
  2. Dataset pair semantics.
  3. Evaluation.
  4. RGB-only training smoke.
  5. SafeTensors extension.
  6. Common fusion API.
  7. Три fusion variants.