Skip to content

About

Can complexity–entropy features detect diffusion-model errors? They separate real from synthetic images (AUROC up to 0.86), but not hallucinations from good generations (0/44 configs significant). HSE research.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

21 Commits

Folders and files

Repository files navigation

Влияние параметров методов оценки ошибок генерации диффузионных моделей

Курсовая работа (исследовательский проект), магистратура МФТАД, НИУ ВШЭ. Систематическое исследование того, как параметры лёгкого детерминированного метода на основе кривых сложности–энтропии Реньи (complexity–entropy, CE) влияют на оценку ошибок генерации диффузионных моделей.

Главный вывод

CE-дескрипторы пригодны для оценки синтетичности; обнаружение галлюцинаций остаётся вне их возможностей:

  • H1 (реальное vs синтетическое) — подтверждена: AUROC до 0.858 [0.779, 0.927], воспроизводится на независимом CIFAKE (0.756 [0.727, 0.782], n=1200); но CE не превосходит тривиальный спектр Фурье.
  • H2 (галлюцинации vs удачные генерации) — отвергнута: 0 из 44 конфигураций значимы (лучший AUROC 0.549 [0.411, 0.691]).
  • Механизм (E5): CE реагирует на текстурные дефекты (размытие, шум), но слеп к структуросохраняющему дублированию — аналогу семантической галлюцинации.

Структура

Путь Содержание
paper/ce_features.py CE-признаки: 5 схем линеаризации 2D→1D + нативные 2D-ординалы
paper/evaluate.py протокол: LogReg + повторная стратиф. CV + bootstrap-CI
paper/sweep.py параметрический перебор (scheme × d × τ × 2D)
paper/baselines.py FFT / GLCM-Haralick / LBP / pixel-stats
paper/inject.py контролируемая инъекция артефактов (ground truth)
paper/figs*.py фигуры
paper/results/ sweep.csv, baselines.csv, inject.csv + фигуры
arXiv_diploma_report/report_ru.tex текст работы (русский), компилируется в PDF
bach_code/ исходные ноутбуки (прототип)

Воспроизведение

python3 -m venv .venv
.venv/bin/pip install numpy scipy scikit-learn scikit-image pillow ordpy pandas matplotlib datasets pyarrow
cd paper
../.venv/bin/python sweep.py       # параметрический перебор -> results/sweep.csv
../.venv/bin/python baselines.py   # бейзлайны -> results/baselines.csv
../.venv/bin/python inject.py      # инъекция артефактов -> results/inject.csv
../.venv/bin/python figs.py figs_inject.py

Данные изображений (bach_code/data/) и CIFAKE не входят в репозиторий (авторские права); их нужно получить отдельно. CIFAKE подтягивается стримингом через HuggingFace (paper/cifake.py).

Параметры исследования

  • размерность вложения d ∈ {3, 4, 5, 6}; задержка τ ∈ {1, 2}
  • набор Реньи α ∈ {0.0, 0.1, …, 1.0} (10 точек) → вектор [Hα, Cα]
  • схемы линеаризации: row, col, snake, diag, hilbert; нативные 2D-ординалы (dx×dy)
  • метрики: AUROC, average precision (AP), 95% bootstrap-CI

Метод оценки

Лёгкий, быстрый, детерминированный. Исходный конвейер содержал необучаемую случайно инициализированную свёртку (источник шумовых «результатов»); она удалена.

About

Can complexity–entropy features detect diffusion-model errors? They separate real from synthetic images (AUROC up to 0.86), but not hallucinations from good generations (0/44 configs significant). HSE research.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages