## 0. Главный вердикт --- ## 1. Где HID-Fusion уже соответствует SOTA (не трогать) |Компонент|Подтверждение в литературе| |---|---| |**InfoNCE как ядро L_cvi**|Sample4Geo (98.68% R@1 CVUSA), GeoSSM (96.02%), GeoBridge, GLEAM — все на InfoNCE; Triplet вытеснена| |**Симметричный Loss (drone↔sat и sat↔drone)**|Sample4Geo, GLEAM — стандартная практика| |**Ортогональные проекции P_M⊥P_S, Q_desc⊥Q_cvi**|CVD M5/P16, GeoDTR+ — disentanglement через ортогональность подтверждён| |**CKA-based disentanglement (L_disent)**|Современная замена MINE; O(Bd) дешевле, стабильнее градиент| |**Дифференциальная bias-инициализация шлюзов (0.4/0.3/0.2)**|WeatherPrompt F14 (zero-init γ,β), WildDet3D F33 — концепция modality injection с малыми инициалами валидна| |**Curriculum 3 фазы с graceful degradation**|GLEAM two-phase warmup, GeoBridge поэтапное обучение — концепт принят в SOTA| |**MobileCLIP2-s0 как text encoder с partial unfreeze**|Sweet spot для текста БПЛА; альтернатив с лучшим Pareto нет (см. §6)| |**Иерархическая декомпозиция в 3 листа**|**Не покрыто литературой:** CVD = 2 фактора, GeoText-1652 = 2 уровня текста (image/region), Aquila VLM6 — 2 уровня. **Это новизна.**| |**L_hier (реконструкционная когерентность Level-2 → Level-1)**|**Не покрыто литературой.** Новизна.| |**L_center на основе SM-InfoScore (Mahalanobis к EMA-центрам)**|**Не покрыто в CVGL.** Стандартный L2-center заменён на Mahalanobis — новизна.| --- ## 2. Конкурентные работы 2025–2026 (pre-publication threats) | Работа | Год | R@1 (Univ-1652) | Что делает | Угроза | Контрмера | | --------------------------- | :--: | :--------------------------------: | ----------------------------------------------- | :------------------------------------: | ---------------------------------------------------------------------------------- | | **CGSI** (P64) | 2025 | 95.45% | DINOv2+BERT+metadata, late fusion HBP | 🔴 Критично — text+metadata fusion | Подчеркнуть **иерархию (3 листа)** + L_cvi на CVI-подпр.; CGSI flat-fusion | | **GeoBridge** (P58/M10) | 2026 | 94.89% | DINOv2+BERT+meta, semantic anchoring | 🔴 Критично — text как «якорь» | HID не использует text как anchor; явная декомпозиция typов текста (T_meta/L12/L3) | | **MMGeo** (P50) | 2026 | 94.81% | 5-modal mutable token | 🟠 Среднее — но out of scope (5-modal) | Кандидатская = 2 модальности; MMGeo цитировать как шире-задачный baseline | | **CVD** (M5/P16) | 2025 | +1–2% поверх baseline | Content/Viewpoint disentanglement (vision-only) | 🟠 Среднее — disentanglement | HID = 3 листа vs CVD = 2; vision+text vs vision-only | | **(MGS)²** (P44) | 2026 | 97.50% | Depth + multi-scale geometric | 🟢 Не в scope (depth) | Цитировать как upper bound при depth-priors; HID = vision+text only | | **GeoText-1652** (P57/VLM2) | 2024 | 13.6% T→I | Region-level text + 9-zone | 🟢 Низкая — это benchmark | HID использует его как evaluation set, цитирует как мотивацию для T_L12 | | **GeoDTR+** (P11) | 2023 | 95.05% (CVUSA) | Geometric disentangle + CHSG aug | 🟢 Низкая — vision-only | CHSG как идея для аугментаций (см. §3) | | **Sample4Geo** (P10) | 2023 | 98.68% (CVUSA), 92.65% (Univ-1652) | InfoNCE + GPS-DSS sampling | 🟡 Базовый baseline | Использовать GPS-DSS как стратегию sampling в L_cvi | **Стратегическая отстройка HID-Fusion:** новизна = **двухуровневая иерархия + 3 типа текста + L_cvi/L_disent/L_hier/L_center как авторские**. CGSI/GeoBridge — это flat fusion, не иерархия. CVD — это 2 фактора, не 3. GeoText-1652 — это benchmark, не архитектура. --- ## 3. Что **добавить** в HID-Fusion (точечные коррекции, ранжированы по приоритету) ### 🔴 P1 — критические, сделать в S0–S2 #### 3.1. CHSG-аугментация (Layout Simulation) для L_cvi **Источник:** GeoDTR+ (P11), +7.52% R@1 cross-area на CVUSA. **Что:** для каждой пары `(I_drone, I_sat)` создавать 2 layout-shifted варианта спутникового снимка (random translation 0–20%, без вращения). Батч становится `2B` пар. Это даёт «бесплатные» hard negatives внутри батча без mining. **Применимо к HID:** работает в Фазе 1 (DISC) и Фазе 2 (full HID), не конфликтует с curriculum. **Риск:** дополнительная аугментация — нужно проверить, что текстовые описания (`T_L12`, `T_L3`) не теряют валидности при shift. Решение: применять только к спутнику, текстовые описания при shift сохраняются. **Действие:** добавить `LayoutShiftAug` в dataloader S0; включить с эпохи 16 (Фаза 2). #### 3.2. Hard-negative mining: GPS-then-DSS вместо in-batch random **Источник:** Sample4Geo (P10), +9.46% R@1 от GPS-sampling, +11.71% от DSS, вместе +12.63% на VIGOR. **Что:** заменить in-batch negatives для `L_cvi` на двухфазную стратегию: - **Фаза 1 (cold start, эпохи 1–15):** GPS-sampling — для каждого якоря брать k=64 негативов из географических соседей (100–500 м, исключая 100-метровую зону «может быть позитив»). - **Фаза 2 (16+):** DSS — каждые 4 эпохи пересчёт эмбеддингов всего датасета, top-128 ближайших по cosine, батч = `k/2 top + k/2 random` с маской 100 м. **Применимо к HID:** не меняет архитектуру, только стратегию формирования батчей в L_cvi. **Риск:** DSS — overhead full forward-pass каждые 4 эпохи. Для GeoText-1652 (~1652 здания × несколько ракурсов) это терпимо, для World-UAV (~927K) — критично. Решение: использовать EMA-encoder для DSS-пересчёта. **Действие:** реализовать в S6 (CVGL); для S1–S5 регрессии на VisLoc — оставить in-batch (там не нужно). #### 3.3. Quality-filtering captions Поляковой ПЕРЕД подачей в HID **Источник:** SC3 Quality-Driven Curation (Полякова/3_scoring), top-30% отфильтрованных данных > 100% сырых; H2 Seeing Clearly (-11pp hallucination); H3 RSPOPE. **Что:** перед использованием captions Поляковой: 1. **Фильтр по длине:** `tokens_output > 300` (отсев 44% обрезанных без Level 3). 2. **Фильтр по FDR:** `FDR < 0.10` для drone, `FDR < 0.15` для sat (отсев hallucinations). 3. **Фильтр по NumAcc:** `NumAcc > 0.95` (counts должны быть точны). 4. **Очистка raw JSON в output_text:** удалить `coverage_pct`, `quadrant`, `inventory` маркеры через regex. 5. **Infer terrain:** заменить `terrain="Unknown"` на категорию из доминирующего класса segmentation. **Применимо к HID:** все правки на стороне dataloader, не меняют HID-блок. **Риск:** после фильтрации может остаться <50% captions. Если это всё ещё ≥30 K — приемлемо для VisLoc/World-UAV. Если <15K — нужен перегенерация. **Действие:** S0, до запуска S1. ### 🟠 P2 — важные, сделать в S3–S6 #### 3.4. Adaptive λ-balancing (GradNorm или PALW) вместо фиксированных весов **Источник:** DPHR (P47, +2–3%), GradNorm (общая практика), GLEAM warmup. **Что:** 8 фиксированных λ — много, есть риск, что L_cvi или L_reg доминирует. Два варианта: - **PALW (проще):** `λ_i(t) = λ_i^* · σ(10 · (t/T − 0.3))` — сигмоидная рампа. - **GradNorm:** автоматически балансирует λ_i так, чтобы `||∇_θ L_i||` были одного масштаба. **Применимо к HID:** PALW тривиально подключается к curriculum (Фаза 2). GradNorm требует одной дополнительной forward через backbone — в 1.1× медленнее. **Риск:** GradNorm может «оживить» компоненту, которую ты намеренно держишь маленькой (например, L_disent с λ=0.01 — он _должен_ быть малым, чтобы CKA не дробил подпространства). Решение: применять адаптацию только к `λ_cvi, λ_hier, λ_center`, фиксировать `λ_align, λ_disent, λ_ortho`. **Действие:** S3 (curriculum) — использовать PALW для warmup новых компонент `λ_cvi, λ_hier, λ_center`. GradNorm — опционально в S4 ablation A_balance. #### 3.5. Аугментации: ColorJitter + Rotation + GridMask **Источник:** TransGeo, Sample4Geo, Stage4Geo — стандартный CVGL pipeline. **Что:** добавить в dataloader для drone и satellite (синхронно): - ColorJitter (brightness/contrast/saturation = 0.3 для drone, 0.2 для sat). - Rotation спутника (0/90/180/270° или непрерывное), drone — без вращения (yaw уже метаданные). - HorizontalFlip спутника (drone не флипать — yaw меняется). - GridMask 64×64 с p=0.5 на drone (имитация occlusion). **Применимо к HID:** работает на любом датасете, не конфликтует с курс-обучением. **Риск:** GridMask на текстовых данных не имеет смысла. Применять только к img-входу. **Действие:** S0, реализация в transforms.py. #### 3.6. Knowledge injection в промпт VLM Поляковой **Источник:** RSTeller PE8/9 (-30…-50% hallucination), Aquila VLM6. **Что:** в промпт Qwen3-VL **обязательно** инъецировать факты из Step 1 (segmentation): ``` "Сегментация подтверждает: {N1} buildings, {N2} road segments, {N3} vegetation patches. Опираясь ТОЛЬКО на эти счёты, сгенерируй описание. Не выдумывай объекты." ``` **Применимо к HID:** улучшает качество T_L12 → меньше шума в `z^desc` → стабильнее L_disent. **Риск:** требует координации с Поляковой по обновлению промпта v7.1 → v7.2. Время — 1–2 дня. **Действие:** обсудить с Поляковой в S0; перегенерация subset (1000 captions) для проверки. ### 🟡 P3 — опциональные, в S4–S7 как ablation #### 3.7. Two-stage prompting (RADAR-like) для T_L3 **Источник:** H2 Seeing Clearly without Training (-11pp hallucination). **Что:** для генерации `T_L3` использовать 2 запроса: 1. **Where:** «опиши пространственную структуру: что в каких углах, какие формы доминируют». 2. **What:** «уточни характерные признаки крыш, дорог, растительности». Объединить в финальный fingerprint. **Применимо к HID:** улучшает cross-view stability T_L3 → сильнее L_cvi. **Риск:** +2× latency VLM. Для 80K captions это +16 ч на RTX 4090. Терпимо. **Действие:** S6 пилот на 5K captions; если SigLIP score satellite растёт с 0.16 → 0.25, перегенерировать всё. #### 3.8. Constrained decoding (JSON-schema) для T_L3 **Источник:** DGTRSD VLM8, GeoGround PE1. **Что:** заменить free-form промпт T_L3 на `json_schema` через vLLM/`outlines`. Обязательные поля: `roof_signatures`, `road_pattern`, `vegetation_distribution`, `9_zone_anchors`, `cross_view_invariants`. **Применимо к HID:** гарантирует 100% парсируемость, упрощает извлечение `T_L3` из JSON в dataloader. **Риск:** structured output может уменьшить разнообразие → SigLIP-score может упасть. Тестировать. **Действие:** S6 пилот, A/B сравнение со свободным форматом. #### 3.9. Cross-area validation split **Источник:** Sample4Geo (CVUSA→CVACT даёт честную картинку), VIGOR same-area vs cross-area (77.86% vs 46% R@1). **Что:** для GeoText-1652 — train на одних университетах, test на других. Для VisLoc — train на одних регионах, test на других. **Применимо к HID:** проверка обобщающей способности; ожидаемая просадка R@1 на 10–25%, но это честный показатель. **Риск:** absolute R@1 будет ниже, чем у конкурентов на same-area (CGSI 95.45%). Решение: репортить **обе** настройки. **Действие:** S5–S6, обязательно для Scopus-публикации. --- ## 4. Что **не** добавлять в HID-Fusion (отвергнуто после фильтрации) | Идея агентов | Почему не делать | | ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | **Слить `L_ortho^(1)` + `L_ortho^(2)`** | Это **разные уровни иерархии** (P_M⊥P_S vs Q_desc⊥Q_cvi). Слияние сломает теоретическую структуру и Положение 1 | | **Слить `L_align` в `L_cvi`** | Разные роли: `L_align` = внутри-подпространственное cosine между модальностями; `L_cvi` = cross-view contrastive на одном CVI-подпр. Слияние теряет смысл иерархии | | **Удалить `L_disent` (CKA)** | Преждевременно. Литература (CVD M5) показывает, что disentanglement даёт +1–2%. Сначала ablation A4 в S4, потом решать | | **Заменить FiLM на Sigma CroMB / Coupled Mamba** | HID не использует FiLM — у него мультипликативные шлюзы. Это другой механизм. CroMB может быть рассмотрен как **альтернативная архитектура шлюза** в очень дальних ablation, но не как корректировка | | **Top-down semantic projection как 6-я модальность** | Out of scope (это 5-modal докторской) | | **Pure LUPI / Knowledge Distillation** | Out of scope (докторская Пикалёва) | | **DINOv3-L SAT-493M teacher** | Out of scope (масштаб докторской) | | **Mutable token для graceful modality dropout (MMGeo)** | Полезно, но out of scope: HID работает с 2 модальностями (RGB+Text), а text-dropout уже опубликован SPCRAS 2025 | | **Сменить Qwen3-VL-8B на DeepSight/AeroLite** | FDR=0.076 уже хорош. Смена VLM = high risk новых классов ошибок. **Stay with Qwen3-VL.** Лучше LoRA fine-tune на top-30% отфильтрованных | | **Edge deployment Jetson Orin / INT8 TensorRT** | Out of scope (докторская). Кандидатская репортит только GPU FLOPs/latency как H_HID-8 | --- ## 5. Численные ориентиры — куда целиться |Датасет|SOTA 2025–2026|Ориентир для HID-Fusion (кандидатская)| |---|:-:|:-:| |**University-1652 D→S R@1**|97.50% (MGS²+depth), 95.45% (CGSI flat)|≥ **94%** (без depth, на vision+text)| |**University-1652 D→S AP**|97.77% (GeoBridge)|≥ **95%**| |**CVUSA R@1**|98.68% (Sample4Geo)|≥ **86%** (HID = vision+text, не vision-only optimized)| |**VIGOR same-area R@1**|77.86% (Sample4Geo)|≥ **70%**| |**VIGOR cross-area R@1**|61.70% (Sample4Geo + DSS)|≥ **55%**| |**SUES-200 R@1 (150m alt.)**|96.47% (JRN-Geo с normals)|≥ **88%** (vision+text)| |**GeoText-1652 T→I R@1**|13.6% (P57 baseline)|≥ **20%** — это новизна, есть пространство| |**VisLoc регрессия val MAE**|0.17 (Gate-Fusion baseline)|≤ **0.155** (HID с DISC), ≤ **0.140** (полный HID)| **Стратегия:** на same-area не выйти на CGSI/GeoBridge (95%+), но **HID может побеждать на cross-area** благодаря дизентэнглменту через 3 подпространства — это и есть аргумент для рецензента. --- ## 6. Vision-side: backbone и текст-encoder — менять? ### Vision backbone: **StripNet-small остаётся** - StripNet-small (~5M) валидирован публикацией ПИИ 2024. - Альтернативы (ConvNeXt-Nano 15.5M, Vim 35M, DINOv3-S/B) — больше параметров, выгода неочевидна для регрессии БПЛА. - Цена смены: пере-обучение всех baselines, потеря преемственности с опубликованным baseline. **Не оправдано.** ### Text encoder: **MobileCLIP2-s0 остаётся** - Партиальная разморозка работает, RU/EN не критично (всё промпты EN, валидировано в ПИИ 2025 Т.39 №4). - Альтернатива — DINOv3 (визуальный), не text. RemoteCLIP / GeoRSCLIP — RS-domain, но больше параметров. - **Не менять.** --- ## 7. Приоритизированный action-list ### Срочно (S0, 1 неделя — до 13 мая) 1. ✅ **Quality-filter captions Поляковой** (длина >300, FDR<0.10, NumAcc>0.95, очистка raw JSON, infer terrain) — §3.3 2. ✅ **Реализовать аугментации** (ColorJitter, Rotation/Flip спутника, GridMask drone) — §3.5 3. ✅ **Согласовать с Поляковой knowledge-injection** в промпт v7.2 (counts из сегментации как аксиомы) — §3.6 4. ✅ **Сгенерировать captions для VisLoc** через Qwen3-VL-8B (~6742 снимков, ~3.5 ч на RTX 4090) — критично для S1 ### Важно (S1–S3, 4 недели — до 9 июня) 5. ⚙️ **Курсовое обучение с PALW** для warmup λ_cvi, λ_hier, λ_center — §3.4 6. ⚙️ **DSC: реализовать SM-InfoScore + L_center** на базе Cholesky-стабильной версии — задача S2 7. ⚙️ **Обновить CLAUDE.md и novelty_differentiation.md** — заменить «7 компонент» на «8 компонент» во всех местах (см. предыдущий отчёт) ### Среднесрочно (S4–S6, 6 недель — до 21 июля) 8. 🔬 **Cross-area validation split** на VisLoc и GeoText-1652 — §3.9 9. 🔬 **GPS-then-DSS hard-negative mining** для L_cvi — §3.2 10. 🔬 **CHSG layout-shift аугментация** — §3.1 11. 🔬 **Ablations A1–A15** (включая A4: λ_disent=0; A11: T_L3=∅; A13: λ_center=0) — S4 ### Опционально (S6–S7, как ablation) 12. 🧪 **Two-stage RADAR prompting для T_L3** — §3.7 13. 🧪 **Constrained JSON-schema decoding** для T_L3 — §3.8 14. 🧪 **Hit Rate / VIGOR-style semi-positive evaluation** на GeoText-1652 --- ## 8. Что писать в Related Work / Differentiation ``` "Отличия HID-Fusion от существующих подходов: 1. От flat vision-text fusion (CGSI [P64], GeoBridge [P58/M10]): двухуровневая иерархическая декомпозиция на 3 подпространства с разными целевыми задачами, обоснованная Hierarchical IB (Goldfeld 2019). 2. От vision-only disentanglement (CVD [M5/P16], GeoDTR+ [P11]): расширение на vision+text, 3 листа против 2, явная привязка текстовых уровней к подпространствам. 3. От contrastive CVGL без текста (Sample4Geo [P10], DAC): текстово-индуцированная cross-view инвариантность через L_cvi на CVI-подпространстве (а не на полном представлении), что сохраняет drone-специфичные признаки в z^M, z^desc. 4. От 5-modal multimodal CVGL (MMGeo [P50]): рамки кандидатской диссертации сознательно ограничены парой RGB+Text; обобщение на K≥5 модальностей вынесено в смежную докторскую работу (Пикалёв Я.С.). HID-Fusion — строительный блок более общего метода." ``` --- ## 9. Финальный вердикт **Ничего фундаментального в HID-Fusion не менять.** Архитектура, формализация (8 формул), curriculum, набор loss-компонент — валидны и новы. Корректировки точечные, в основном на стороне данных и стратегии sampling (не архитектуры): - **3 действия P1** до S1 (фильтр captions, аугментации, knowledge-injection) - **3 действия P2** в S3–S6 (PALW, DSS, cross-area split) - **3 опциональных P3** для ablation-таблицы Всё это закрывает критику рецензентов («где hard negative mining? — DSS», «где аугментации? — CHSG», «где валидация generalization? — cross-area») без изменения научных Положений 1–4.