Files
fuze_task/reports/NOTES.md
bogdanpavl ec7586b68d Загрузить файлы в «reports»
П. 1.1. Конспект по пункту 
П. 1.2. Разбор personal_package, заметки, Evidence matrix (≥8 источников)
2026-06-25 14:05:26 +00:00

12 KiB
Raw Blame History

FusionCore Personal

02_fusion_core_персональный

B14_StripNet

^ead71b

3.1. Описание архитектуры

  • Общая структура: Strip R-CNN базируется на фреймворке O-RCNN. Она включает новый бэкбон (StripNet) и новую голову детектирования (Strip Head).
  • StripNet Backbone: Состоит из базовых блоков, каждый из которых имеет strip-подблок и подблок feed-forward сети (FFN).
  • Strip Module: Включает стандартную свертку 5×5 за которой следуют две последовательные полосовые свертки (горизонтальная и вертикальная, например, 1×19 и 19×1) и point-wise свертка.
  • Strip Head: Разделяет предсказание локализации и угла. Модуль локализации усилен полосовыми свертками для захвата дальнодействующих пространственных зависимостей, в то время как классификация и предсказание угла делят общие полносвязные (FC) слои.

3.2. Визуальные материалы из статьи

  • Figure 1: Статистика датасета DOTA и падение точности существующих SOTA методов при увеличении соотношения сторон объектов. Показывает критичность проблемы.
  • Figure 3: Структурное сравнение модуля авторов с LSKNet и PKINet. Демонстрирует, что Strip R-CNN использует последовательную (strip-sequential) парадигму, в то время как PKINet — параллельную (strip-parallel), что делает Strip R-CNN более легковесным.
  • Figure 4: Структура базового блока Strip Module. Иллюстрирует поток данных через квадратную свертку, горизонтальную/вертикальную strip-свертки и умножение признаков.
  • Figure 5, 6, 7: Архитектура Strip Head и тепловые карты пространственной чувствительности. Показывают, что предсказание угла фокусируется на границах объекта, а классификация — на центре, что оправдывает их частичное слияние.

3.3. Математическая формализация

  • Feature Reweighing (Внимание): Y^=X⋅Y Комментарий: X — входной тензор, Y — выход point-wise свертки, действующий как карта весов внимания (element-wise умножение).
  • Loss Function: L=Lc+Ll+La  Комментарий: Сумма кросс-энтропии для классификации (Lc) и Smooth L1 для локализации (Ll) и угла (La). Формула стандартна для rotated bounding box детекторов

3.4. Ключевые технические решения

  • Последовательные свертки: Использование горизонтальной свертки перед вертикальной (или наоборот) работает одинаково хорошо и не требует сложных механизмов слияния, присущих параллельным ветвям.
  • Ядро размером 19: Экспериментально установлено, что размер ядра 19 во всех стадиях бэкбона дает оптимальный результат для вытянутых объектов.

ПРЕИМУЩЕСТВА ПОДХОДА

  • Вычислительная эффективность: Отказ от параллельных heavy-сверток в пользу последовательных strip-сверток снижает FLOPs и количество параметров, обходя конкурентов (PKINet).
  • Архитектурная элегантность: Отсутствие сложных модулей внимания. Векторное внимание реализуется простой point-wise сверткой.
  • Универсальность: Замена классического detection head на Strip Head повышает метрики даже в старых фреймворках.

F14_WeatherPrompt

^e9be0c

1. Контекст 

F14 решает критическую проблему Visual Geo-Localization: катастрофическое падение точности при смене освещения (день/ночь) или погоды (лето/зима). Модель использует механизм FiLM (Feature-wise Linear Modulation) для модуляции визуальных признаков на основе текстового промпта (например: "Снимок сделан глубокой ночью в тумане"). 

2. Значимость для MERIDIAN

Это прямой источник архитектурного паттерна Multi-FiLM-Fusion для Teacher-ветки. Понимание, как именно генерируются параметры γ и β, необходимо для правильной балансировки 5 модальностей (RGB, Depth, Edges, Seg, Text).

==В F14 WeatherPrompt параметры масштаба (γ) и сдвига (β) генерируются динамически из текстового эмбеддинга (text_embed):==

  • text_embed: Вектор размерности 768 (выход CLIP/BERT).
  • Генераторы fγ, fβ: Это НЕ линейные слои, а 2-Layer MLPs (Многослойные перцептроны).
    • Linear(768, 256) -> GELU -> Dropout(0.1) -> Linear(256, C)
    • Где C — количество каналов в Feature Map на конкретном уровне визуальной сети (например, C=1024C=1024 для DINOv3).
  • Особенность инициализации: Последний слой в fγ инициализируется нулями, а выход оборачивается в экспоненту: γ=exp(fγ(text)). Это гарантирует, что на старте обучения γ=1.0 и β=0.0 (Identity mapping, не разрушающий pre-trained веса).

3. Размещение в пирамиде признаков (Feature Pyramid)

F14 доказывает, что применять FiLM ко всем слоям подряд — избыточно и ведет к over-fitting.

  • Early Layers (до Block 1/2): Не модулируются. Они извлекают низкоуровневые края и градиенты, которые инвариантны к тексту.
  • Middle Layers (Blocks 2, 3): Слегка модулируются.
  • Late Layers (Block 4 / Последние 3 блока Transformer): Интенсивно модулируются. Именно здесь сеть принимает семантические решения ("Это снег или белая крыша?").
  • Вывод: FiLM встраивается исключительно в последние 1/31/3 архитектуры Teacher'а.

4. Как работает Dynamic Adaptation?

Динамическая адаптация означает, что каналы визуальной сети перевзвешиваются в реальном времени:

  1. При промпте "Bright sunny day": γγ усиливает цветовые фильтры и текстурные детекторные каналы.
  2. При промпте "Midnight, low light": γγ обнуляет каналы, зависящие от цвета, и усиливает $edges$-каналы и угловые детекторы (которые работают даже при плохом освещении).
  3. При промпте "Snowy terrain": Сбрасывает детекторы травы/листьев.

5. ## Протокол обучения (Learning Rate и EMA)

Так как визуальный backbone загружен весами Foundation Model (DINOv2/v3), а fγ,fβ​ инициализируются с нуля, требуется Two-Speed Learning Rate:

  • LR_Backbone = 1e-5 (или заморожен на ранних этапах).
  • LR_FiLM_MLP = 1e-3 (в 100 раз больше!). Оптимизатору нужно быстро научиться генерировать правильные γ,β.
  • EMA (Exponential Moving Average): Для всех весов визуальной сети используется momentum m=0.999, чтобы обучение FiLM-модуляторов не расшатало основную геометрию пространства признаков.

6. Сравнение с SSF (Scale and Shift Features, TPAMI)

  • SSF: К каждому слою сети добавляются обучаемые векторы γtask и βtask. Они статичны для конкретной задачи (например, один набор для Semantic Seg, другой для Depth).
  • WeatherPrompt (FiLM): Векторы γ и β генерируются на лету для каждого отдельного изображения в зависимости от текста.
  • Вердикт: SSF великолепен для Transfer Learning (Task Adaptation), но FiLM — абсолютный победитель для Data-driven / Context-aware адаптации.

7. Расширение до 5-modal FiLM для MERIDIAN Teacher

В проекте MERIDIAN ветка Teacher (спутник) имеет доступ не только к RGB и Тексту, но и к Глубине (Depth), Границам (Edges) и Семантике (Seg). Как использовать формулы F14, чтобы слить 5 модальностей воедино?

Решение: Концепт Privileged Context Vector (PCV) Вместо того чтобы делать независимые FiLM слои для каждой модальности, мы сливаем все Privileged-данные в единый вектор, который управляет модуляцией главного ствола (RGB DINOv3):

  1. Прогоняем Depth через легкую CNN-ветку →→ Depth_Embed (256-d)
  2. Прогоняем Edges через легкую CNN-ветку →→ Edge_Embed (256-d)
  3. Получаем текст из VLM →→ Text_Embed (256-d)
  4. Конкатенируем: PCV=[Depth_Embed,Edge_Embed,Text_Embed]PCV=[Depth_Embed,Edge_Embed,Text_Embed] (размерность 768).
  5. Подаем PCVPCV в fγ,fβ MLP-генераторы.

Итоговое уравнение Multi-modal FiLM для MERIDIAN:

!Pasted image 20260625162506.png