Initial commit — generate-hypothesis skill

Standalone Claude Code skill repo extracted from CVGL vault
(.claude/skills/generate-hypothesis/). Generates testable
If/Then/Because hypotheses for the NADEZHDA / SOFIA research
project from the literature library.

Contents:
- SKILL.md             — behaviour spec (6-phase pipeline, output contract)
- README.md            — human-facing entry: when to use, install, examples
- templates/hypothesis_full.md     — full template (8 required sections)
- templates/hypothesis_compact.md  — short draft template
- reference/method_taxonomy.md     — methods to NADEZHDA components mapping

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-04 10:43:03 +03:00
commit f374b0dafc
6 changed files with 546 additions and 0 deletions

58
.gitignore vendored Normal file
View File

@@ -0,0 +1,58 @@
# Python build artifacts
__pycache__/
*.py[cod]
*$py.class
*.egg-info/
*.egg
.eggs/
build/
dist/
# Virtual environments
.venv/
venv/
env/
ENV/
.python-version
# Coverage / testing
.coverage
.coverage.*
htmlcov/
.tox/
.nox/
.pytest_cache/
.mypy_cache/
.ruff_cache/
.dmypy.json
# IDE / OS
.idea/
.vscode/
!.vscode/settings.json
!.vscode/launch.json
!.vscode/extensions.json
*.swp
*.swo
*~
.DS_Store
Thumbs.db
desktop.ini
# Jupyter
.ipynb_checkpoints/
# Secrets — never commit
.env
.env.local
*.key
*.pem
credentials.json
# Temp
*.log
*.tmp
*.bak
*.backup
*.orig
~$*

140
README.md Normal file
View File

@@ -0,0 +1,140 @@
# skill-claude-generate-hypothesis
Claude Code skill for generating testable scientific hypotheses for the CVGL / NADEZHDA research project. Analyzes the vault's literature library, extracts evidence from analyzed papers, deduplicates against existing hypotheses, and produces structured `If / Then / Because` claims ready to drop into `2_hypotesis/`.
> Behaviour spec — see [`SKILL.md`](SKILL.md). This file is the human-facing entry point.
## Installation
Drop this repo's contents into your vault's Claude Code skills directory:
```bash
git clone https://git.lissad.keenetic.name/Pikaliov/skill-claude-generate-hypothesis.git \
.claude/skills/generate-hypothesis
```
Or as a submodule, if you prefer to track upstream:
```bash
git submodule add https://git.lissad.keenetic.name/Pikaliov/skill-claude-generate-hypothesis.git \
.claude/skills/generate-hypothesis
```
After installation Claude Code picks up the skill on the next session. Verify with `/help``/generate-hypothesis` should appear in the user-invocable list.
**Vault prerequisites** (referenced by the skill but not bundled here):
- `1_lit_research/{2_backbone,3_fusion,4_reduction,5_multimodal_approach,6_cvgl}/` — paper analyses (P/B/F/R/M-prefixed)
- `1_lit_research/СИНТЕЗсех_статей_для_LUPI_CVGL.md` — synthesis index
- `2_hypotesis/cvgl/HYP_*.md` — existing hypotheses (used for dedup)
- `0_prompts/tag_taxonomy.md` — tag whitelist for frontmatter
- `CONVENTIONS.md` — repo-wide RU/EN split rules
If you adapt the skill to another vault layout, update the path globs in [`SKILL.md`](SKILL.md) §"Фаза 2: Поиск литературы".
## When to use
- Designing a new experiment and need a falsifiable claim before writing code.
- Synthesizing 58 related papers into one actionable research direction.
- Exploring "what if we replaced X with Y" without re-reading the entire vault.
- Stress-testing an idea against existing hypotheses to find duplicates or contradictions.
## Invocation
```text
/generate-hypothesis "<research-question>" [Teacher|Student|Fusion|Loss|Edge|Dataset]
```
**Examples**
```text
/generate-hypothesis "Поможет ли Coupled Mamba fusion для объединения drone и satellite признаков в Student?" Fusion
/generate-hypothesis "Снизит ли GGeM с FP16 кэшем latency на Jetson?" Edge
/generate-hypothesis "Заменит ли DINOv3-L текущий DINOv2-L Teacher?" Teacher
```
## What it does (6 phases)
| # | Phase | Output |
|---|-------|--------|
| 1 | Parse the question, route to the right NADEZHDA component | component tag, keywords |
| 2 | Targeted vault search across `1_lit_research/{2_backbone,3_fusion,4_reduction,5_multimodal_approach,6_cvgl}` and the synthesis index | 58 papers read |
| 3 | Dedup against `2_hypotesis/cvgl/HYP_*.md` | extend existing or create new |
| 4 | Extract method / numbers / limitations / applicability | per-paper evidence rows |
| 5 | Synthesize the claim in `If / Then / Because` form (≤30 words) | hypothesis statement |
| 6 | Render via [`templates/hypothesis_full.md`](templates/hypothesis_full.md) or [`templates/hypothesis_compact.md`](templates/hypothesis_compact.md) with frontmatter, wiki-links, math, tables | drop-in `.md` for `2_hypotesis/` |
## Output contract
Every produced hypothesis must have:
1. **Formal claim**`If [method], then [±X% on metric Y on dataset Z], because [mechanistic rationale]`
2. **Confidence** — High / Medium / Low + one-line justification
3. **Scope** — Teacher / Student / Fusion / Loss / Edge / Full system
4. **Evidence** — 24 papers, wiki-linked, with concrete numbers (R@1, params, FLOPs, latency)
5. **Falsifiable test** — baseline, metric, threshold, p-value
6. **Experimental plan** — datasets, stages, timeline
7. **Assumptions** — what must hold for the claim to be testable
8. **Links**`extends` / `contradicts` / `similar` references to existing hypotheses
## Hard constraints
- ❌ Никогда не выдумывать статьи, числа или wiki-links на несуществующие файлы. Если evidence отсутствует — `confidence = LOW` с явной отметкой.
- ✅ Текст — русский, формулы и термины — английский (см. `[[../../CONVENTIONS.md]]`).
- ✅ Каждое число должно иметь источник (откуда взято).
- ✅ Имя файла: `HYP_<метод>_<компонент>_<суть>.md`.
- ✅ Теги — только из `[[0_prompts/tag_taxonomy]]`.
- ✅ Перед расширением похожей гипотезы — обязательная проверка `2_hypotesis/cvgl/HYP_*.md`, не создавать дубликат.
## NADEZHDA component cheat-sheet
| Component | Current state | Where the skill looks |
|-----------|--------------|----------------------|
| **Teacher** | DINOv3-L, ~356 M frozen, 5 modalities (sat/UAV/street-view/depth/text), Multi-FiLM-Fusion, modality dropout p=0.3 | `1_lit_research/2_backbone/`, `5_multimodal_approach/` |
| **Student** | SOFIA v7.1 / FastViT-T12 weight-shared, 2 modalities, CVD, GGeM → 512-dim | `1_lit_research/2_backbone/`, `3_fusion/` |
| **Fusion** | Multi-FiLM-Fusion (Teacher) / late gated (Student) | `1_lit_research/3_fusion/` |
| **Distillation** | 7 losses (InfoNCE, LUPI-MSE, feature alignment, RKD, seg distill, CVD_MI, CVD_Recon) + GradNorm + progressive staging | `2_hypotesis/kd_hypotesis/`, `6_cvgl/` |
| **Edge** | Jetson Orin NX, < 50 ms, INT8, ≤ 5 GFLOPs (Tiny) / ≤ 500 MB (M-preset) | `1_lit_research/4_reduction/` |
Detailed taxonomy of methods → component mapping: [`reference/method_taxonomy.md`](reference/method_taxonomy.md).
## File layout
```
generate-hypothesis/
├── SKILL.md — full skill specification (frontmatter + 6-phase pipeline)
├── README.md — this file (human entry point)
├── templates/
│ ├── hypothesis_full.md — full template with all 8 required sections + tables + math
│ └── hypothesis_compact.md — short template for "draft" status hypotheses
└── reference/
└── method_taxonomy.md — mapping of literature methods → NADEZHDA components
```
## Allowed tools
`Read`, `Glob`, `Grep`, `WebSearch` — read-only literature analysis. Skill does not write to the vault directly; the model returns the hypothesis as a code block, the user persists it under `2_hypotesis/cvgl/`.
## Related skills (sibling skills in the host vault, not bundled here)
- `/analyze-paper` — single-paper deep-dive that feeds evidence into this skill.
- `/synthesize-review` — cross-paper review that the dedup phase consults.
- `/tag-vault` — keeps the tag taxonomy in sync so frontmatter tags stay valid.
## Worked example
**Input:**
```text
/generate-hypothesis "Поможет ли Coupled Mamba fusion для объединения drone и satellite признаков в Student?" Fusion
```
**Expected output (sketch):**
- Title: `HYP_coupled_mamba_Student_fusion.md`
- Claim: «Если заменить bottleneck cross-attention в Student на Coupled Mamba SSM fusion, то latency на Jetson Orin NX снизится на ≥ 15 % при сохранении R@1 ± 0.5 % на University-1652, потому что SSM имеет линейную сложность O(L) против O(L²) у attention…»
- Confidence: Medium
- Evidence: `[[Coupled_Mamba_NeurIPS_2024]]`, `[[F35_Sigma_Siamese_Mamba]]`, `[[B6_BB_2024_Efficient VMamba]]`
- Test: baseline = current cross-attention fusion · metric = R@1 + Jetson latency · threshold = ΔR@10.5 % AND Δlatency ≤ 15 % · 5 seeds, paired t-test p < 0.05
- Plan: 4 weeks on University-1652 + GTA-UAV, ablation per direction count
See `2_hypotesis/cvgl/` for previously generated hypotheses to study the produced format.

115
SKILL.md Normal file
View File

@@ -0,0 +1,115 @@
---
name: generate-hypothesis
description: "Generate testable scientific hypotheses for CVGL research. Analyzes 240+ paper analyses in the vault, extracts methods and evidence, checks for duplicates, and produces structured hypotheses following the format 'If [method], then [result], because [rationale]'. Use when designing experiments, exploring novel approaches, or synthesizing literature into actionable research claims."
argument-hint: "[research-question] [component: Teacher|Student|Fusion|Loss|Edge|Dataset]"
user-invocable: true
allowed-tools: Read Glob Grep WebSearch
---
# Генерация научной гипотезы для CVGL
Сгенерируй проверяемую научную гипотезу для проекта перекрёстной геолокализации БЛА (система NADEZHDA), используя структурированное рассуждение и анализ литературы из хранилища.
## Входные данные
- `$ARGUMENTS` — исследовательский вопрос и целевой компонент
- Пример: `/generate-hypothesis "Улучшит ли CVD кросс-доменный перенос?" Student`
## Контекст проекта NADEZHDA
**Teacher (~356M params):** DINOv2-L + LoRA, 5 модальностей (спутник, дрон, street-view, depth, text), Multi-FiLM-Fusion, modality dropout p=0.3
**Student (~8.5M params):** FastViT-T12 weight-shared, 2 модальности (спутник + дрон), CVD, GGeM → 512-dim
**Дистилляция:** 7 losses (InfoNCE, LUPI-MSE, feature alignment, RKD, seg distill, CVD_MI, CVD_Recon) + GradNorm + progressive staging
**Edge:** Jetson Orin NX, <50ms, INT8, ≤5 GFLOPs, ≤5M params
## Процесс генерации
### Фаза 1: Анализ вопроса
Определи:
- Какой компонент системы затрагивает вопрос (Teacher / Student / Fusion / Loss / Edge / Dataset)
- Какие методы из литературы релевантны
- Ключевые слова для поиска
### Фаза 2: Поиск литературы
Выполни целенаправленный поиск по vault:
1. **CVGL-статьи**`1_lit_research/6_cvgl/` (P1P66)
2. **Backbone**`1_lit_research/2_backbone/` (B1B20, F1F9)
3. **Fusion**`1_lit_research/3_fusion/` (F1F13, reviews)
4. **Reduction**`1_lit_research/4_reduction/` (R1R17)
5. **Multimodal**`1_lit_research/5_multimodal_approach/` (M1M10)
6. **Синтез**`1_lit_research/СИНТЕЗсех_статей_для_LUPI_CVGL.md`
Используй Grep для поиска ключевых слов из вопроса. Прочитай 58 наиболее релевантных статей.
### Фаза 3: Проверка дубликатов
Поиск по `2_hypotesis/cvgl/HYP_*.md` — убедись, что гипотеза не дублирует существующие. Если похожая есть — расширь или уточни её, а не создавай заново.
### Фаза 4: Извлечение evidence
Для каждой релевантной статьи извлеки:
- **Метод** — что предлагается
- **Результаты** — R@1, params, FLOPs, latency
- **Ограничения** — что не работает
- **Применимость** — как соотносится с компонентом из вопроса
### Фаза 5: Синтез гипотезы
Сформулируй гипотезу строго по формату:
> **Если** [метод/подход/комбинация], **то** [измеримый результат], **потому что** [механистическое обоснование на основе литературы]
Требования:
- Формулировка ≤ 30 слов
- Результат — количественный (±X% на метрике Y)
- Обоснование — ссылки на 24 статьи
- Фальсифицируемость — как опровергнуть
### Фаза 6: Форматирование для Obsidian
Используй шаблон из [templates/hypothesis_full.md](templates/hypothesis_full.md).
Выход должен содержать:
- YAML frontmatter с тегами из таксономии `[[0_prompts/tag_taxonomy]]`
- Wiki-links на статьи: `[[P1_CVGL_2024_VimGeo...]]`
- Wiki-links на связанные гипотезы: `[[HYP_архитектура_Student_lightweight_distillation]]`
- Математические формулы в LaTeX
- Comparison tables для обоснования выбора
- Код: Python pseudo-code для ключевых компонентов
Для краткого формата — [templates/hypothesis_compact.md](templates/hypothesis_compact.md).
Классификацию методов по компонентам NADEZHDA см. в [reference/method_taxonomy.md](reference/method_taxonomy.md).
## Требования к выходу
### Обязательные секции
1. **Формальная формулировка** — If / Then / Because
2. **Уверенность** — High / Medium / Low + обоснование
3. **Область** — Teacher / Student / Fusion / Full system
4. **Evidence** — 24 статьи с wiki-links и конкретными числами
5. **Фальсифицируемый тест** — baseline, метрика, threshold, p-value
6. **Экспериментальный план** — датасеты, этапы, таймлайн
7. **Допущения** — что должно быть истинно
8. **Связи** — extends / contradicts / similar гипотезы из vault
### Ограничения
- НЕ выдумывай статьи или результаты — если evidence нет, укажи confidence = LOW
- НЕ создавай wiki-links на несуществующие файлы
- Используй русский для текста, английский для формул и терминов
- Все метрики — с источником (откуда число)
- Именование файла: `HYP_<метод>_<компонент>_<суть>.md`
## Пример вызова
```
/generate-hypothesis "Поможет ли Coupled Mamba fusion для объединения drone и satellite признаков в Student?" Fusion
```
Ожидаемый выход: гипотеза о замене bottleneck cross-attention на Coupled Mamba SSM fusion в Student с оценкой влияния на latency и R@1, evidence из Coupled Mamba (NeurIPS 2024) и Sigma (WACV 2025), экспериментальный план на University-1652.

View File

@@ -0,0 +1,102 @@
# Таксономия методов по компонентам NADEZHDA
Справочник для скилла `/generate-hypothesis`: какие методы из литературы применимы к каким компонентам системы.
## Teacher backbone (DINOv3-L, ~300M frozen, patch 16×16)
| Метод | Источник | Применимость |
|:------|:---------|:-------------|
| **DINOv3-L** (SAT-493M pretraining, Register Tokens, Gram Anchoring) | F4_BB DINOv3 | **Текущий выбор** — превосходит DINOv2: +6.4 mIoU dense, satellite-native |
| DINOv2-L self-supervised | Устаревший | Заменён на DINOv3-L |
| GeoRSCLIP (RS-specific VL) | F2_BB | Альтернатива: domain-specific VL pretraining |
| CrossEarth (geospatial FM) | F3_BB | Альтернатива: explicit RS domain |
| Perception Encoder | B13 | Best features at intermediate layers |
**Технические особенности DINOv3 vs DINOv2:**
- Patch: 16×16 (не 14×14) → 256/16 = 16×16 = 256 токенов (точно)
- Register Tokens: 4 шт. → отфильтровать перед FPN
- Outlier dimensions: ОБЯЗАТЕЛЬНО LayerNorm перед loss-функциями
- Frozen > fine-tuned (by design) → не нужен LoRA
## Student backbone (FastViT-T12, ~8.5M, weight-shared)
| Метод | Источник | Применимость |
|:------|:---------|:-------------|
| FastViT-T12 | HYP_Student | Текущий выбор, weight-shared drone/sat |
| MambaVision-T | B12 | Гибрид Mamba+ViT, 4.4 GFLOPs, TensorRT |
| Efficient VMamba | B6 | Atrous selective scan, <50 GFLOPs |
| GroupMamba | B11 | Group-based SSM, ещё легче |
| LEGNet | B16 | 5-8M params, <5 GFLOPs — target-size |
| Channel Group Pooling (CGP) | P1 VimGeo | Замена FC, экономия ~40% params |
| RepViT-M1.1 | Benchmarking FM | 8.2M, 1.7 GFLOPs |
## Fusion module (Multi-FiLM-Fusion)
| Метод | Источник | Применимость |
|:------|:---------|:-------------|
| Multi-FiLM (γ·F + β) | F14 WeatherPrompt, SSF TPAMI | Текущий выбор, <0.7% overhead |
| Bottleneck Cross-Attention | GLEAM M3 | Sparse tokens (8/modality) |
| Coupled Mamba | NeurIPS 2024 | Inter-modal SSM state transition, 49% faster |
| Cross-Selective SSM Scan | Sigma WACV 2025 | Mamba-native fusion |
| Mutable Token + Dropout | P50 MMGeo | Graceful degradation при отсутствии модальности |
| MoE (Flex-MoE) | NeurIPS Spotlight | Arbitrary modality combinations |
| Gated Multimodal Unit | Pipeline v1 | Sigmoid gates + weighted sum |
## Loss functions (7 losses + GradNorm)
| Loss | Формула | Источник | Роль |
|:-----|:--------|:---------|:-----|
| L_task | Symmetric InfoNCE (τ learnable, ls=0.1) | P10 Sample4Geo | Основная retrieval |
| L_LUPI | MSE(z_S, sg(z_T_fused)) | R9 Vapnik, R6 MobileGeo | Privileged KD |
| L_feat | MSE(proj(F_S), sg(F_T)) через Conv1×1 | R1, R14 | Intermediate distill |
| L_RKD | |d_S(i,j) - d_T(i,j)|² | R1 | Relational KD |
| L_seg | hard CE + soft KL | Pipeline v2 | Segmentation distill |
| L_CVD_MI | HSIC penalty | disentangle.py | Content-viewpoint separation |
| L_CVD_Recon | Cross-view MSE | disentangle.py | Reconstruction from content only |
| GradNorm | Adaptive λ balancing | Pipeline v2 | Gradient dominance prevention |
| PALW | Progressive attenuate→enhance | P47 DPHR | Альтернатива GradNorm |
| DWBL | Dynamic weighted batch-tuple | P1 VimGeo | Hard negative emphasis |
## Distillation strategies
| Стратегия | Источник | Compression | R@1 |
|:----------|:---------|:-----------|:----|
| MobileGeo hierarchical KD | R6 | 60× | 97.15% (Univ-1652) |
| QDFL frozen + adapters | P62 | <5M adapter | 95.00% |
| LUPI + multi-modal teacher | R9, R3 | Theoretical | — |
| Teacher-Assistant chain | R15 MST-Distill | При capacity gap | — |
| Self-distillation | R4 GeoDistill | Geometry-guided | — |
## Edge deployment (Jetson Orin NX)
| Техника | Источник | Эффект |
|:--------|:---------|:-------|
| INT8 TensorRT | R5, R12 | 2-3× speedup, 1-2% R@1 drop |
| k-scaled PTQ для Mamba | R5 | FP16 state transitions + INT8 weights |
| All-adder networks | R12 Q-A²NN | mul→add (экспериментально) |
| Structured pruning | R16 survey | 5% incremental |
| ONNX export | B12 MambaVision | Native TensorRT support |
## Data augmentation
| Техника | Источник | Эффект |
|:--------|:---------|:-------|
| CHSG layout simulation | P11 GeoDTR+ | +16-22% cross-domain R@1 |
| Orientation randomization | P16 ConGeo | Предотвращает 16% collapse |
| Weather simulation (10 conditions) | M1 WeatherPrompt | All-weather robustness |
| GPS→DSS hard negatives | P10 Sample4Geo | k=64, K=128, refresh every 4 epochs |
| Modality dropout p=0.3 | P50 MMGeo | LUPI compatibility |
## Датасеты
| Датасет | Роль в проекте | Размер | Ключевая метрика |
|:--------|:---------------|:-------|:-----------------|
| University-1652 | Основной бенчмарк | 142K imgs | D→S R@1 (SOTA: 97.50%) |
| GeoText-1652 | Text modality training | 316K+ texts | Text→Image R@1 |
| GTA-UAV/Game4Loc | Pretraining | 33.7K+14.6K | Zero-shot transfer |
| UAV-VisLoc | Real-world validation | 6,742 drone | Continuous map matching |
| World-UAV | Multi-country test | 927K imgs | Rotation/height robustness |
| CVUSA | Cross-view benchmark | 35K pairs | R@1 (SOTA: 98.97%) |
| CVACT | Cross-domain test | 128K pairs | R@1 (SSM лучше: 81.69%) |
| VIGOR | Hardest benchmark | 90K+105K | Same-area R@1 |
| SUES-200 | Multi-altitude | 24K real | AP across 4 heights |

View File

@@ -0,0 +1,33 @@
---
type: hypothesis
status: draft
date: YYYY-MM-DD
tags: [task/experiment, component/COMPONENT, method/METHOD]
author: claude
---
# Гипотеза: [Краткая формулировка]
**Если** [метод], **то** [результат], **потому что** [обоснование].
**Уверенность:** [High/Medium/Low] | **Область:** [компонент NADEZHDA]
## Evidence
- [[P{N}_...]]: [что показывает, R@1 = ...%]
- [[P{N}_...]]: [что показывает]
## Тест
- **Baseline:** [метод]
- **Метрика:** [R@1 на University-1652]
- **Threshold:** ΔR@1 ≥ [X]%
- **Таймлайн:** [N] недель
## Допущения
1. [Ключевое допущение]
## Связи
- Расширяет: [[HYP_...]]

View File

@@ -0,0 +1,98 @@
---
type: hypothesis
status: draft
date: YYYY-MM-DD
tags: [task/experiment, hypothesis/HYPOTHESIS_TAG, component/COMPONENT, method/METHOD, arch/ARCH]
related: ["[[связанная_гипотеза]]", "[[связанная_статья]]"]
author: claude
---
# Гипотеза: [Краткая формулировка, ≤15 слов]
## 1. Формальная формулировка
**Если** [метод / подход / архитектурное решение],
**то** [измеримый результат: ±X% на метрике Y на датасете Z],
**потому что** [механистическое обоснование со ссылками на литературу].
- **Уверенность:** [High / Medium / Low] — [1 предложение: почему такой уровень]
- **Область:** [Teacher training / Student distillation / Fusion module / Loss design / Edge deployment / Full system]
- **Связь с NADEZHDA:** [Какой компонент затрагивает и как]
## 2. Обоснование и evidence
### 2.1 Поддерживающие работы
| Статья | Метод | Результат | Применимость |
|:-------|:------|:----------|:-------------|
| [[P{N}_...]] | ... | R@1 = ...% | Прямая / Косвенная |
| [[P{N}_...]] | ... | ... | ... |
| [[R{N}_...]] | ... | ... | ... |
### 2.2 Механистическое обоснование
[1-2 абзаца: почему данный метод ДОЛЖЕН работать в контексте NADEZHDA. Ссылки на конкретные результаты из таблицы выше. Формулы при необходимости.]
### 2.3 Противоречащие данные
[Статьи или факты, которые могут опровергнуть гипотезу. Если нет — явно указать "Прямых противоречий в литературе не выявлено".]
## 3. Фальсифицируемый тест
| Параметр | Значение |
|:---------|:---------|
| **Baseline** | [Метод/эксперимент для сравнения] |
| **Метрика** | [R@1, R@5, R@10, AP, latency, FLOPs] |
| **Датасет** | [University-1652 / CVUSA / CVACT / VIGOR / SUES-200] |
| **Threshold** | [Минимальный прирост для подтверждения: ΔR@1 ≥ X%] |
| **Статистика** | [3 повтора, 95% CI, paired t-test p < 0.05] |
| **Подтверждение** | Результат > Threshold на ≥ 2 датасетах |
| **Опровержение** | Результат ≤ Baseline или Feature Pollution (ухудшение L_task) |
## 4. Экспериментальный план
### Этап 1: Подготовка [N дней]
- [ ] [Действие 1]
- [ ] [Действие 2]
### Этап 2: Реализация [N дней]
- [ ] [Действие 1]
- [ ] [Действие 2]
### Этап 3: Оценка [N дней]
- [ ] [Действие 1]
- [ ] Аблация: поочерёдное отключение компонентов
- [ ] Кросс-доменный тест: train на [X] → test на [Y]
### Этап 4: Анализ [N дней]
- [ ] Сравнительная таблица с baseline
- [ ] Визуализация feature maps / attention maps
- [ ] Запись результатов в `3_work/`
**Общий таймлайн:** [N недель]
## 5. Допущения
1. [Вычислительное допущение: напр., RTX 4090 24GB достаточно для обучения]
2. [Допущение о данных: напр., University-1652 репрезентативен для real-world]
3. [Архитектурное допущение: напр., weight-sharing не деградирует при данном capacity gap]
## 6. Математическая формализация
[Формулы ключевых компонентов в LaTeX:]
$$L_{\text{total}} = \lambda_1 L_{\text{task}} + \lambda_2 L_{\text{...}} + ...$$
[Описание каждого компонента с размерностями тензоров.]
## 7. Связи с другими гипотезами
| Тип связи | Гипотеза | Описание |
|:----------|:---------|:---------|
| Расширяет | [[HYP_...]] | [Как развивает предыдущую гипотезу] |
| Противоречит | [[HYP_...]] | [В чём конфликт] |
| Дополняет | [[HYP_...]] | [Как сочетается] |
## 8. Лог статуса
- YYYY-MM-DD: Черновик создан (Claude, `/generate-hypothesis`)