Байесовская нейронная сеть

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
 
(1 промежуточная версия не показана)
Строка 1: Строка 1:
-
== Почему распределение весов — ещё не готовая неопределённость ==
+
{{well|Статья написана с использованием LLM '''GPT-5.6 Terra High''' и проверена участником [[Участник:Oleg Batsiev|Oleg Batsiev]] 17:51, 19 июля 2026 (MSD).
 +
Промпты и описание редакторской проверки приведены в [[Обсуждение:Байесовская нейронная сеть]].
 +
}}
 +
{{TOCright}}
-
Статья «Байесовская нейронная сеть» была подготовлена с помощью '''GPT-5.6 Terra High'''. Мне было важно не свести тему к фразе «вместо одного веса хранится распределение»: оценка неопределённости зависит также от правдоподобия, априора и качества приближённого вывода.
+
'''Байесовская нейронная сеть''' (англ. ''Bayesian neural network'', BNN) — вероятностная модель на основе [[нейронная сеть|нейронной сети]], в которой задаётся априорное распределение параметров и после наблюдения данных выполняется байесовский вывод об их апостериорном распределении. Предсказание получают усреднением по этому распределению, а не подстановкой единственного набора весов.
-
Первый запрос был таким:
+
Такой подход позволяет описывать неопределённость параметров и функций, совместимых с обучающими данными. Однако наличие распределения весов само по себе не гарантирует хорошо откалиброванную или надёжную неопределённость: результат зависит от правдоподобия, априорного распределения, качества приближённого вывода и соответствия вероятностной модели реальному процессу.
-
{{well|Ты разбираешься в байесовском машинном обучении, нейронных сетях и оценке неопределённости. Напиши подробную энциклопедическую статью для MachineLearning.ru про байесовские нейронные сети (Bayesian neural networks, BNN).
+
== Основная идея ==
-
Сначала объясни отличие от обычной нейронной сети. Затем введи априорное и апостериорное распределения весов, маргинальное правдоподобие и предиктивное распределение. Раздели алеаторическую и эпистемическую неопределённость и объясни, почему высокая вероятность класса не всегда означает надёжную уверенность.
+
Пусть <tex>\mathcal D=\{(x_i,y_i)\}_{i=1}^{n}</tex> — обучающая выборка, а <tex>w</tex> — веса и смещения сети. В обычном обучении выбирают одну оценку параметров, например
-
Раскрой вариационный вывод, ELBO, среднеполевое приближение, Bayes by Backprop, MC dropout и MCMC. Сравни BNN с ансамблями обычных сетей. Добавь применения, способы проверки калибровки и ограничения.
+
::<tex>\hat w=\arg\min_w\sum_{i=1}^{n}\ell\bigl(y_i,f_w(x_i)\bigr).</tex>
-
Статья должна быть понятна студенту, но технически точна. Используй вики-разметку MachineLearning.ru, внутренние ссылки и реальные академические источники. Формулы оформляй через &lt;tex&gt;...&lt;/tex&gt;, а вынесенные формулы начинай с двойного двоеточия. Не выдумывай авторов, результаты и DOI.}}
+
В байесовской модели задают априорное распределение <tex>p(w)</tex> и правдоподобие <tex>p(\mathcal D\mid w)</tex>. По формуле Байеса апостериорное распределение равно
-
После первого черновика я решил точнее развести распределение весов, предиктивную неопределённость и качество вероятностного прогноза. Наличие нескольких случайных проходов ещё не означает, что получена полная предиктивная дисперсия или что модель будет надёжно распознавать все неизвестные объекты.
+
::<tex>p(w\mid\mathcal D)=\frac{p(\mathcal D\mid w)p(w)}{p(\mathcal D)},</tex>
-
Второй запрос был таким:
+
где маргинальное правдоподобие, или свидетельство модели, имеет вид
-
{{well|Доработай статью «Байесовская нейронная сеть» как научный редактор.
+
::<tex>p(\mathcal D)=\int p(\mathcal D\mid w)p(w)\,dw.</tex>
-
Добавь вероятностную модель наблюдений и разложение предиктивной дисперсии на алеаторическую и эпистемическую составляющие. Уточни связь MAP-оценки с регуляризацией и не называй MAP полным байесовским выводом.
+
Для нового объекта <tex>x_*</tex> предиктивное распределение получают интегрированием по параметрам:
-
Расширь вариационный вывод, Bayes by Backprop, аппроксимацию Лапласа, MC dropout и методы MCMC. Для MC dropout отдели выборочную дисперсию случайных прогнозов от полного шума наблюдений. Объясни, что глубокий ансамбль может быть сильной практической базовой линией, хотя не обязан быть апостериорной выборкой.
+
::<tex>p(y_*\mid x_*,\mathcal D)=\int p(y_*\mid x_*,w)p(w\mid\mathcal D)\,dw.</tex>
-
Добавь отдельный раздел об оценке неопределённости: логарифмическое правдоподобие, оценка Брайера, калибровка, покрытие интервалов, селективный риск и проверка при сдвиге данных. Не создавай впечатление, что байесовская модель автоматически калибрована или безопасна.
+
BNN тем самым выполняет байесовское усреднение прогнозов множества сетей с общей архитектурой и разными весами. Это не означает равномерного усреднения: больший вклад получают параметры с большей апостериорной вероятностью.
-
Учти старый парсер MachineLearning.ru: не используй неподдерживаемую команду \mathop и не переноси содержимое вынесенного тега &lt;tex&gt; на следующую физическую строку, иначе в формулу попадают HTML-теги списка и последующий текст получает нарастающий отступ. Верни готовую статью целиком в вики-разметке.}}
+
== Вероятностная модель наблюдений ==
-
== Что было исправлено после рендеринга ==
+
Распределение весов — только одна часть модели. Необходимо также определить, как выход сети задаёт распределение наблюдаемой цели.
-
После генерации я отдельно проверил не только математический смысл, но и отображение статьи в старом вики-движке:
+
В регрессии часто предполагают
-
* неподдерживаемая конструкция <nowiki>\mathop{\arg\min}</nowiki> заменена на совместимую запись <nowiki>\arg\min</nowiki>;
+
::<tex>y_i=f_w(x_i)+\varepsilon_i,\qquad \varepsilon_i\sim\mathcal N(0,\sigma^2),</tex>
-
* каждая вынесенная формула <nowiki>::<tex>...</tex></nowiki> записана на одной физической строке;
+
-
* устранено попадание закрывающих HTML-тегов <nowiki></dd></nowiki> в формулу дисперсии MC dropout;
+
-
* исправлен нарастающий отступ текста после многострочных формул;
+
-
* выборочная дисперсия проходов MC dropout не выдана за полную предиктивную неопределённость;
+
-
* добавлены модель наблюдений, разложение полной дисперсии, аппроксимация Лапласа и проверка качества неопределённости;
+
-
* библиографические сведения сверены с официальными страницами PMLR и NeurIPS.
+
-
Итоговая статья отделяет байесовскую постановку от конкретных приближений и от практического вопроса о том, насколько полученные вероятности действительно надёжны.
+
либо позволяют сети предсказывать зависящую от входа дисперсию <tex>\sigma^2(x_i)</tex>. В классификации выходные логиты преобразуют в вероятности классов, например функцией softmax, и задают категориальное правдоподобие.
-
— [[Участник:Oleg Batsiev|Oleg Batsiev]]
+
Неправильно выбранное правдоподобие может дать плохую оценку неопределённости даже при точном выводе о весах. Например, постоянная дисперсия в регрессии не описывает ситуацию, когда шум наблюдений меняется с <tex>x</tex>.
 +
 
 +
== Виды неопределённости ==
 +
 
 +
=== Алеаторическая неопределённость ===
 +
 
 +
'''Алеаторическая неопределённость''' (англ. ''aleatoric uncertainty'', неопределённость данных) связана со случайностью наблюдений, шумом измерений или отсутствием существенных признаков. Два объекта с одинаковыми наблюдаемыми характеристиками могут иметь разные исходы, поскольку часть причин не измеряется.
 +
 
 +
Эта неопределённость не обязана исчезать при увеличении обучающей выборки. Она задаётся прежде всего моделью правдоподобия и может быть постоянной либо зависеть от входа.<ref name="kendall2017">{{статья |автор=Kendall A., Gal Y. |заглавие=What Uncertainties Do We Need in Bayesian Deep Learning for Computer Vision? |издание=Advances in Neural Information Processing Systems |год=2017 |том=30 |ссылка статьи=https://proceedings.neurips.cc/paper_files/paper/2017/hash/2650d6089a6d640c5e85b2b88265dc2b-Abstract.html}}</ref>
 +
 
 +
=== Эпистемическая неопределённость ===
 +
 
 +
'''Эпистемическая неопределённость''' (англ. ''epistemic uncertainty'', неопределённость модели) возникает, когда данных недостаточно, чтобы однозначно определить подходящую функцию. Разные значения весов, согласующиеся с наблюдениями, тогда дают различные прогнозы.
 +
 
 +
При поступлении репрезентативных данных эпистемическая неопределённость в принципе может уменьшаться. Однако это утверждение относится к корректно специфицированной модели и адекватному выводу: приближённая BNN может оставаться чрезмерно уверенной за пределами обучающего распределения.
 +
 
 +
=== Разложение предиктивной дисперсии ===
 +
 
 +
В регрессии два источника можно связать законом полной дисперсии:
 +
 
 +
::<tex>\mathrm{Var}(Y_*\mid x_*,\mathcal D)=\mathbb E_{p(w\mid\mathcal D)}\left[\mathrm{Var}(Y_*\mid x_*,w)\right]+\mathrm{Var}_{p(w\mid\mathcal D)}\left(\mathbb E[Y_*\mid x_*,w]\right).</tex>
 +
 
 +
Первое слагаемое отражает средний условный шум данных, второе разброс условных средних при разных весах. Практическая оценка такого разложения зависит от выбранного правдоподобия и приближения к апостериорному распределению.
 +
 
 +
=== Вероятность класса и неопределённость ===
 +
 
 +
Высокая максимальная вероятность softmax не доказывает, что объект хорошо поддержан обучающими данными. Обычная сеть может выдать значение, близкое к единице, далеко от области обучения. BNN позволяет учитывать разброс прогнозов по весам, но также не получает автоматической гарантии обнаружения объектов вне распределения.
 +
 
 +
Для классификации апостериорную вероятность класса приближают выборками <tex>w^{(1)},\ldots,w^{(S)}</tex>:
 +
 
 +
::<tex>p(y_*=c\mid x_*,\mathcal D)\approx\frac{1}{S}\sum_{s=1}^{S}p(y_*=c\mid x_*,w^{(s)}).</tex>
 +
 
 +
Разброс отдельных вероятностей характеризует чувствительность к параметрам, но его следует отличать от энтропии усреднённого предиктивного распределения: эти показатели отвечают на разные вопросы.
 +
 
 +
== Априорные распределения ==
 +
 
 +
Часто веса считают независимо нормально распределёнными:
 +
 
 +
::<tex>w_j\sim\mathcal N(0,\sigma^2).</tex>
 +
 
 +
Такой априор выражает предпочтение к небольшим весам. Если вместо полного распределения искать максимум апостериорной вероятности (MAP), отрицательный логарифм нормального априора приводит к квадратичному штрафу, сходному с <tex>L_2</tex>-[[Регуляризация|регуляризацией]]. MAP-оценка при этом остаётся одним набором параметров и сама по себе не выполняет байесовского усреднения.
 +
 
 +
Независимый нормальный априор удобен, но не обязательно соответствует разумному распределению функций сети. Масштаб весов взаимодействует с глубиной, шириной и функциями активации. Поэтому применяют послойные, иерархические и структурированные априоры, а также формулировки, задающие желаемые свойства непосредственно в пространстве функций.
 +
 
 +
При малом объёме данных априор особенно заметно влияет на результат. Слишком концентрированный априор способен подавить полезные функции, а чрезмерно широкий — приводить к нереалистичному поведению вне обучающей области.
 +
 
 +
== Почему требуется приближённый вывод ==
 +
 
 +
В нейронной сети выход нелинейно зависит от большого числа параметров. Нормирующая константа <tex>p(\mathcal D)</tex> требует интегрирования по высокоразмерному пространству, а апостериорное распределение может быть многомодальным и сильно коррелированным. Поэтому точный вывод обычно недоступен.
 +
 
 +
Приближённый метод должен решать две разные задачи: найти области высокой апостериорной вероятности и представить достаточно важную часть их геометрии. Хорошая точность среднего прогноза не доказывает, что апостериорная неопределённость восстановлена правильно.
 +
 
 +
== Вариационный вывод ==
 +
 
 +
При '''вариационном выводе''' выбирают семейство распределений <tex>q_\theta(w)</tex> и минимизируют расхождение с истинным апостериорным распределением. Для стандартного направления дивергенции Кульбака—Лейблера это эквивалентно максимизации нижней границы логарифма свидетельства (ELBO):
 +
 
 +
::<tex>\mathcal L(\theta)=\mathbb E_{q_\theta(w)}\left[\log p(\mathcal D\mid w)\right]-\mathrm{KL}\bigl(q_\theta(w)\,\|\,p(w)\bigr).</tex>
 +
 
 +
Первое слагаемое поощряет объяснение данных, второе штрафует отклонение приближённого распределения от априорного. Разность между <tex>\log p(\mathcal D)</tex> и ELBO равна <tex>\mathrm{KL}(q_\theta(w)\,\|\,p(w\mid\mathcal D))</tex>.
 +
 
 +
В среднеполевом приближении параметры считаются независимыми:
 +
 
 +
::<tex>q_\theta(w)=\prod_j\mathcal N(w_j\mid\mu_j,\sigma_j^2).</tex>
 +
 
 +
Такое семейство масштабируется лучше полного ковариационного распределения, но не отражает корреляции и несколько удалённых мод апостериора. Минимизация <tex>\mathrm{KL}(q\,\|\,p)</tex> часто предпочитает покрыть одну моду и способна дать слишком узкую оценку неопределённости.
 +
 
 +
== Bayes by Backprop ==
 +
 
 +
'''Bayes by Backprop''' — метод вариационного обучения распределения весов с помощью [[метод обратного распространения ошибки|обратного распространения ошибки]]. Для диагонального гауссовского приближения выборку веса записывают через репараметризацию:
 +
 
 +
::<tex>w_j=\mu_j+\sigma_j\varepsilon_j,\qquad \varepsilon_j\sim\mathcal N(0,1).</tex>
 +
 
 +
Случайность переносится в <tex>\varepsilon_j</tex>, распределение которой не зависит от вариационных параметров. Это позволяет получать стохастические оценки градиента ELBO по <tex>\mu_j</tex> и <tex>\sigma_j</tex>.<ref name="blundell2015">{{статья |автор=Blundell C., Cornebise J., Kavukcuoglu K., Wierstra D. |заглавие=Weight Uncertainty in Neural Network |издание=Proceedings of the 32nd International Conference on Machine Learning |год=2015 |том=37 |страницы=1613–1622 |ссылка статьи=https://proceedings.mlr.press/v37/blundell15.html}}</ref>
 +
 
 +
Метод совместим с мини-пакетами и привычными оптимизаторами глубокого обучения. При этом число хранимых параметров для диагонального гауссовского семейства примерно удваивается, а оценка градиента и предсказания содержит шум Монте-Карло.
 +
 
 +
== Аппроксимация Лапласа ==
 +
 
 +
Аппроксимация Лапласа сначала находит MAP-оценку <tex>\hat w</tex>, а затем приближает логарифм апостериорной плотности квадратичной функцией в её окрестности. В результате получают гауссовское приближение
 +
 
 +
::<tex>p(w\mid\mathcal D)\approx\mathcal N(\hat w,H^{-1}),</tex>
 +
 
 +
где <tex>H</tex> — матрица кривизны отрицательного логарифма апостериорной плотности. Такая запись предполагает невырожденную положительно определённую матрицу; на практике кривизну часто демпфируют или регуляризуют. Полная матрица для большой сети слишком дорога, поэтому используют диагональные, блочные, кронекеровские и низкоранговые приближения.
 +
 
 +
Метод удобен как дополнение к уже обученной сети, но локальное гауссовское распределение не описывает далёкие моды и сложную глобальную геометрию апостериора.
 +
 
 +
== Монте-Карло dropout ==
 +
 
 +
'''Монте-Карло dropout''' (MC dropout) — способ получать случайные прогнозы сети с [[Dropout|dropout]], сохраняя dropout включённым на этапе вывода. Для одного объекта выполняют <tex>S</tex> проходов с разными масками:
 +
 
 +
::<tex>\hat y^{(1)},\hat y^{(2)},\ldots,\hat y^{(S)}.</tex>
 +
 
 +
Выборочное среднее равно
 +
 
 +
::<tex>\bar y=\frac{1}{S}\sum_{s=1}^{S}\hat y^{(s)},</tex>
 +
 
 +
а для скалярного выхода дисперсия случайных прогнозов оценивается как
 +
 
 +
::<tex>\widehat{\mathrm{Var}}_{\mathrm{MC}}(\hat y)=\frac{1}{S-1}\sum_{s=1}^{S}\left(\hat y^{(s)}-\bar y\right)^2.</tex>
 +
 
 +
Для векторного выхода вместо этой формулы используют выборочную ковариационную матрицу. Gal и Ghahramani интерпретировали обучение сети с dropout как определённое вариационное приближение в вероятностной модели, связанной с глубоким гауссовским процессом.<ref name="gal2016">{{статья |автор=Gal Y., Ghahramani Z. |заглавие=Dropout as a Bayesian Approximation: Representing Model Uncertainty in Deep Learning |издание=Proceedings of the 33rd International Conference on Machine Learning |год=2016 |том=48 |страницы=1050–1059 |ссылка статьи=https://proceedings.mlr.press/v48/gal16.html}}</ref>
 +
 
 +
Разброс проходов отражает вариативность, создаваемую выбранным приближением, но не обязательно полную предиктивную дисперсию. В регрессии к нему может потребоваться добавить оценку условного шума наблюдений. Результат зависит от расположения и вероятности dropout, режима обучения, числа проходов и соответствия теоретических предпосылок архитектуре. MC dropout нельзя считать точной выборкой из апостериора произвольной сети.
 +
 
 +
== Методы Монте-Карло по марковским цепям ==
 +
 
 +
Методы Монте-Карло по марковским цепям (MCMC) строят зависимую последовательность значений весов, стационарным распределением которой при выполнении условий является апостериорное <tex>p(w\mid\mathcal D)</tex>. Для нейронных сетей применяют, в частности, гамильтоновский метод Монте-Карло и стохастическую градиентную ланжевеновскую динамику (SGLD). Последняя заменяет полный градиент оценкой по мини-пакету и добавляет гауссовский шум.<ref name="sgld2011">{{статья |автор=Welling M., Teh Y. W. |заглавие=Bayesian Learning via Stochastic Gradient Langevin Dynamics |издание=Proceedings of the 28th International Conference on Machine Learning |год=2011 |страницы=681–688 |ссылка статьи=https://www.cs.toronto.edu/~hinton/absps/WellingTeh2011.pdf}}</ref>
 +
 
 +
MCMC не ограничивает апостериор заранее выбранным простым вариационным семейством, однако теоретическая асимптотическая корректность не гарантирует достаточного перемешивания за конечный бюджет. Высокая размерность, симметрии параметров, множество мод и стоимость проходов по данным затрудняют диагностику сходимости современных глубоких сетей. Для SGLD теоретические гарантии связаны с режимом убывающего шага, а постоянный шаг создаёт дискретизационное смещение.
 +
 
 +
== Приближения по траектории оптимизации ==
 +
 
 +
Некоторые методы строят распределение параметров по сохранённым точкам траектории стохастической оптимизации. Например, SWAG аппроксимирует локальную область распределением с диагональной и низкоранговой ковариацией, после чего использует выборки весов для усреднения прогнозов.<ref name="swag2019">{{статья |автор=Maddox W. J., Izmailov P., Garipov T., Vetrov D. P., Wilson A. G. |заглавие=A Simple Baseline for Bayesian Uncertainty in Deep Learning |издание=Advances in Neural Information Processing Systems |год=2019 |том=32 |ссылка статьи=https://proceedings.neurips.cc/paper_files/paper/2019/hash/118921efba23fc329e6560b27861f0c2-Abstract.html}}</ref>
 +
 
 +
Такие методы масштабируются лучше полного MCMC, но остаются аппроксимациями и обычно описывают ограниченную область пространства параметров.
 +
 
 +
== Байесовская сеть и ансамбль ==
 +
 
 +
[[Ансамбль алгоритмов|Глубокий ансамбль]] состоит из нескольких независимо обученных нейронных сетей. Различие их прогнозов также используется для оценки неопределённости.
 +
 
 +
* В BNN задаются априор, правдоподобие и процедура приближения апостериорного распределения одной вероятностной модели.
 +
* Ансамбль объединяет отдельно полученные модели и не обязан быть выборкой из единого апостериора.
 +
* Ансамбли легко обучать параллельно и они служат сильной практической базовой линией для неопределённости.<ref name="ensemble2017">{{статья |автор=Lakshminarayanan B., Pritzel A., Blundell C. |заглавие=Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles |издание=Advances in Neural Information Processing Systems |год=2017 |том=30 |ссылка статьи=https://proceedings.neurips.cc/paper_files/paper/2017/hash/9ef2ed4b7fd2c810847ffa5fa85bce38-Abstract.html}}</ref>
 +
* Полный ансамбль требует хранить и запускать несколько сетей; простое вариационное приближение может быть компактнее, но способно недооценивать неопределённость.
 +
 
 +
Ни название «байесовский», ни наличие ансамбля не позволяют заранее определить, какой метод лучше откалиброван на конкретной задаче. Требуется прямое экспериментальное сравнение при одинаковом вычислительном бюджете.
 +
 
 +
== Оценка качества неопределённости ==
 +
 
 +
Точность предсказаний и качество неопределённости — разные свойства. Для оценки используют:
 +
 
 +
* отрицательное логарифмическое правдоподобие и другие строгие правила оценки вероятностного прогноза;
 +
* оценку Брайера для классификации;
 +
* диаграммы надёжности и показатели калибровки;
 +
* покрытие и ширину предиктивных интервалов в регрессии;
 +
* селективный риск при отказе модели от части решений;
 +
* поведение при контролируемом распределительном сдвиге и на неизвестных классах.
 +
 
 +
Одна агрегированная мера калибровки может скрывать ошибки в редких подгруппах или при сдвиге данных. Проверку проводят отдельно на эксплуатационно важных режимах. Нельзя оценивать метод только по тому, что его неопределённость возрастает на одном специально выбранном наборе объектов вне распределения.
 +
 
 +
== Применения ==
 +
 
 +
=== Регрессия ===
 +
 
 +
В регрессии BNN возвращает предиктивное распределение или интервалы, учитывающие выбранную модель шума и неопределённость параметров. При ненулевом условном шуме предиктивный интервал будущего наблюдения обычно шире интервала условного среднего, поскольку включает алеаторическую составляющую.
 +
 
 +
=== Классификация и неизвестные объекты ===
 +
 
 +
В классификации неопределённость используют для отказа от решения, передачи объекта эксперту и выявления режимов, слабо поддержанных обучающими данными. Однако высокая неопределённость не является готовым детектором объектов вне распределения, а низкая — доказательством принадлежности обучающему распределению.
 +
 
 +
=== Активное обучение ===
 +
 
 +
В [[активное обучение|активном обучении]] система выбирает объекты, разметка которых ожидаемо наиболее полезна. Для этого применяют показатели эпистемической неопределённости или ожидаемого изменения апостериорного распределения. Простая отправка на разметку всех объектов с максимальной энтропией может преимущественно выбирать неразрешимый шум, поэтому функция приобретения должна соответствовать цели обучения.
 +
 
 +
=== Решения с возможностью отказа ===
 +
 
 +
В задачах с высокой ценой ошибки неопределённость может служить одним из сигналов для передачи решения человеку, дополнительного измерения или перехода в безопасный режим. Для этого заранее задают стоимость ошибок и отказов, проверяют пороги на отложенных данных и определяют действия после сигнала. Число, названное «неопределённостью», само по себе не делает систему безопасной.
 +
 
 +
== Ограничения ==
 +
 
 +
Байесовская нейронная сеть не гарантирует правильной уверенности автоматически.
 +
 
 +
* Апостериорное распределение почти всегда заменяется приближением, качество которого трудно проверить в большой модели.
 +
* Среднеполевой вариационный вывод не отражает корреляции и несколько мод и может недооценивать неопределённость.
 +
* Априор и правдоподобие влияют на прогноз, особенно при малом объёме данных и вне обучающей области.
 +
* Разные параметризации одной функции могут порождать сложные симметрии в пространстве весов.
 +
* Несколько выборок увеличивают стоимость обучения или вывода; малое число выборок добавляет ошибку Монте-Карло.
 +
* Хорошая калибровка на исходном тестовом распределении не гарантирует калибровку после сдвига данных.
 +
* Эпистемическая и алеаторическая неопределённости не всегда однозначно разделимы при неверно специфицированной модели.
 +
* Неопределённость не заменяет контроль качества данных, причинный анализ и содержательную проверку решения.
 +
 
 +
Если важный фактор отсутствует среди признаков, правила сбора данных систематически искажены или реальный процесс не входит в класс модели, формально последовательный вывод внутри BNN может оставаться неверным описанием мира.
 +
 
 +
== Философский аспект ==
 +
 
 +
Байесовская нейронная сеть подчёркивает различие между утверждением «модель выдала ответ» и утверждением «для этого ответа достаточно оснований». Вместо одной оценки параметров рассматривается распределение гипотез, совместимых с данными и априорными предположениями.
 +
 
 +
Однако вероятностная форма не устраняет человеческий выбор. Разработчик задаёт пространство моделей, априор, правдоподобие, метод приближения и правило принятия решения. Поэтому численная неопределённость выражает степень уверенности внутри выбранной модели, а не универсальную меру незнания о реальном мире.
 +
 
 +
== См. также ==
 +
 
 +
* [[Нейронная сеть]]
 +
* [[Машинное обучение]]
 +
* [[Байесовский вывод]]
 +
* [[Регуляризация]]
 +
* [[Dropout]]
 +
* [[Ансамбль алгоритмов]]
 +
* [[Активное обучение]]
 +
 
 +
== Литература ==
 +
 
 +
<references />
 +
 
 +
{{DEFAULTSORT:Байесовская нейронная сеть}}
 +
[[Категория:Машинное обучение]]
 +
[[Категория:Нейронные сети]]

Текущая версия

Статья написана с использованием LLM GPT-5.6 Terra High и проверена участником Oleg Batsiev 17:51, 19 июля 2026 (MSD).

Промпты и описание редакторской проверки приведены в Обсуждение:Байесовская нейронная сеть.


Содержание

Байесовская нейронная сеть (англ. Bayesian neural network, BNN) — вероятностная модель на основе нейронной сети, в которой задаётся априорное распределение параметров и после наблюдения данных выполняется байесовский вывод об их апостериорном распределении. Предсказание получают усреднением по этому распределению, а не подстановкой единственного набора весов.

Такой подход позволяет описывать неопределённость параметров и функций, совместимых с обучающими данными. Однако наличие распределения весов само по себе не гарантирует хорошо откалиброванную или надёжную неопределённость: результат зависит от правдоподобия, априорного распределения, качества приближённого вывода и соответствия вероятностной модели реальному процессу.

Основная идея

Пусть \mathcal D=\{(x_i,y_i)\}_{i=1}^{n} — обучающая выборка, а w — веса и смещения сети. В обычном обучении выбирают одну оценку параметров, например

\hat w=\arg\min_w\sum_{i=1}^{n}\ell\bigl(y_i,f_w(x_i)\bigr).

В байесовской модели задают априорное распределение p(w) и правдоподобие p(\mathcal D\mid w). По формуле Байеса апостериорное распределение равно

p(w\mid\mathcal D)=\frac{p(\mathcal D\mid w)p(w)}{p(\mathcal D)},

где маргинальное правдоподобие, или свидетельство модели, имеет вид

p(\mathcal D)=\int p(\mathcal D\mid w)p(w)\,dw.

Для нового объекта x_* предиктивное распределение получают интегрированием по параметрам:

p(y_*\mid x_*,\mathcal D)=\int p(y_*\mid x_*,w)p(w\mid\mathcal D)\,dw.

BNN тем самым выполняет байесовское усреднение прогнозов множества сетей с общей архитектурой и разными весами. Это не означает равномерного усреднения: больший вклад получают параметры с большей апостериорной вероятностью.

Вероятностная модель наблюдений

Распределение весов — только одна часть модели. Необходимо также определить, как выход сети задаёт распределение наблюдаемой цели.

В регрессии часто предполагают

y_i=f_w(x_i)+\varepsilon_i,\qquad \varepsilon_i\sim\mathcal N(0,\sigma^2),

либо позволяют сети предсказывать зависящую от входа дисперсию \sigma^2(x_i). В классификации выходные логиты преобразуют в вероятности классов, например функцией softmax, и задают категориальное правдоподобие.

Неправильно выбранное правдоподобие может дать плохую оценку неопределённости даже при точном выводе о весах. Например, постоянная дисперсия в регрессии не описывает ситуацию, когда шум наблюдений меняется с x.

Виды неопределённости

Алеаторическая неопределённость

Алеаторическая неопределённость (англ. aleatoric uncertainty, неопределённость данных) связана со случайностью наблюдений, шумом измерений или отсутствием существенных признаков. Два объекта с одинаковыми наблюдаемыми характеристиками могут иметь разные исходы, поскольку часть причин не измеряется.

Эта неопределённость не обязана исчезать при увеличении обучающей выборки. Она задаётся прежде всего моделью правдоподобия и может быть постоянной либо зависеть от входа.[1]

Эпистемическая неопределённость

Эпистемическая неопределённость (англ. epistemic uncertainty, неопределённость модели) возникает, когда данных недостаточно, чтобы однозначно определить подходящую функцию. Разные значения весов, согласующиеся с наблюдениями, тогда дают различные прогнозы.

При поступлении репрезентативных данных эпистемическая неопределённость в принципе может уменьшаться. Однако это утверждение относится к корректно специфицированной модели и адекватному выводу: приближённая BNN может оставаться чрезмерно уверенной за пределами обучающего распределения.

Разложение предиктивной дисперсии

В регрессии два источника можно связать законом полной дисперсии:

\mathrm{Var}(Y_*\mid x_*,\mathcal D)=\mathbb E_{p(w\mid\mathcal D)}\left[\mathrm{Var}(Y_*\mid x_*,w)\right]+\mathrm{Var}_{p(w\mid\mathcal D)}\left(\mathbb E[Y_*\mid x_*,w]\right).

Первое слагаемое отражает средний условный шум данных, второе — разброс условных средних при разных весах. Практическая оценка такого разложения зависит от выбранного правдоподобия и приближения к апостериорному распределению.

Вероятность класса и неопределённость

Высокая максимальная вероятность softmax не доказывает, что объект хорошо поддержан обучающими данными. Обычная сеть может выдать значение, близкое к единице, далеко от области обучения. BNN позволяет учитывать разброс прогнозов по весам, но также не получает автоматической гарантии обнаружения объектов вне распределения.

Для классификации апостериорную вероятность класса приближают выборками w^{(1)},\ldots,w^{(S)}:

p(y_*=c\mid x_*,\mathcal D)\approx\frac{1}{S}\sum_{s=1}^{S}p(y_*=c\mid x_*,w^{(s)}).

Разброс отдельных вероятностей характеризует чувствительность к параметрам, но его следует отличать от энтропии усреднённого предиктивного распределения: эти показатели отвечают на разные вопросы.

Априорные распределения

Часто веса считают независимо нормально распределёнными:

w_j\sim\mathcal N(0,\sigma^2).

Такой априор выражает предпочтение к небольшим весам. Если вместо полного распределения искать максимум апостериорной вероятности (MAP), отрицательный логарифм нормального априора приводит к квадратичному штрафу, сходному с L_2-регуляризацией. MAP-оценка при этом остаётся одним набором параметров и сама по себе не выполняет байесовского усреднения.

Независимый нормальный априор удобен, но не обязательно соответствует разумному распределению функций сети. Масштаб весов взаимодействует с глубиной, шириной и функциями активации. Поэтому применяют послойные, иерархические и структурированные априоры, а также формулировки, задающие желаемые свойства непосредственно в пространстве функций.

При малом объёме данных априор особенно заметно влияет на результат. Слишком концентрированный априор способен подавить полезные функции, а чрезмерно широкий — приводить к нереалистичному поведению вне обучающей области.

Почему требуется приближённый вывод

В нейронной сети выход нелинейно зависит от большого числа параметров. Нормирующая константа p(\mathcal D) требует интегрирования по высокоразмерному пространству, а апостериорное распределение может быть многомодальным и сильно коррелированным. Поэтому точный вывод обычно недоступен.

Приближённый метод должен решать две разные задачи: найти области высокой апостериорной вероятности и представить достаточно важную часть их геометрии. Хорошая точность среднего прогноза не доказывает, что апостериорная неопределённость восстановлена правильно.

Вариационный вывод

При вариационном выводе выбирают семейство распределений q_\theta(w) и минимизируют расхождение с истинным апостериорным распределением. Для стандартного направления дивергенции Кульбака—Лейблера это эквивалентно максимизации нижней границы логарифма свидетельства (ELBO):

\mathcal L(\theta)=\mathbb E_{q_\theta(w)}\left[\log p(\mathcal D\mid w)\right]-\mathrm{KL}\bigl(q_\theta(w)\,\|\,p(w)\bigr).

Первое слагаемое поощряет объяснение данных, второе штрафует отклонение приближённого распределения от априорного. Разность между \log p(\mathcal D) и ELBO равна \mathrm{KL}(q_\theta(w)\,\|\,p(w\mid\mathcal D)).

В среднеполевом приближении параметры считаются независимыми:

q_\theta(w)=\prod_j\mathcal N(w_j\mid\mu_j,\sigma_j^2).

Такое семейство масштабируется лучше полного ковариационного распределения, но не отражает корреляции и несколько удалённых мод апостериора. Минимизация \mathrm{KL}(q\,\|\,p) часто предпочитает покрыть одну моду и способна дать слишком узкую оценку неопределённости.

Bayes by Backprop

Bayes by Backprop — метод вариационного обучения распределения весов с помощью обратного распространения ошибки. Для диагонального гауссовского приближения выборку веса записывают через репараметризацию:

w_j=\mu_j+\sigma_j\varepsilon_j,\qquad \varepsilon_j\sim\mathcal N(0,1).

Случайность переносится в \varepsilon_j, распределение которой не зависит от вариационных параметров. Это позволяет получать стохастические оценки градиента ELBO по \mu_j и \sigma_j.[1]

Метод совместим с мини-пакетами и привычными оптимизаторами глубокого обучения. При этом число хранимых параметров для диагонального гауссовского семейства примерно удваивается, а оценка градиента и предсказания содержит шум Монте-Карло.

Аппроксимация Лапласа

Аппроксимация Лапласа сначала находит MAP-оценку \hat w, а затем приближает логарифм апостериорной плотности квадратичной функцией в её окрестности. В результате получают гауссовское приближение

p(w\mid\mathcal D)\approx\mathcal N(\hat w,H^{-1}),

где H — матрица кривизны отрицательного логарифма апостериорной плотности. Такая запись предполагает невырожденную положительно определённую матрицу; на практике кривизну часто демпфируют или регуляризуют. Полная матрица для большой сети слишком дорога, поэтому используют диагональные, блочные, кронекеровские и низкоранговые приближения.

Метод удобен как дополнение к уже обученной сети, но локальное гауссовское распределение не описывает далёкие моды и сложную глобальную геометрию апостериора.

Монте-Карло dropout

Монте-Карло dropout (MC dropout) — способ получать случайные прогнозы сети с dropout, сохраняя dropout включённым на этапе вывода. Для одного объекта выполняют S проходов с разными масками:

\hat y^{(1)},\hat y^{(2)},\ldots,\hat y^{(S)}.

Выборочное среднее равно

\bar y=\frac{1}{S}\sum_{s=1}^{S}\hat y^{(s)},

а для скалярного выхода дисперсия случайных прогнозов оценивается как

\widehat{\mathrm{Var}}_{\mathrm{MC}}(\hat y)=\frac{1}{S-1}\sum_{s=1}^{S}\left(\hat y^{(s)}-\bar y\right)^2.

Для векторного выхода вместо этой формулы используют выборочную ковариационную матрицу. Gal и Ghahramani интерпретировали обучение сети с dropout как определённое вариационное приближение в вероятностной модели, связанной с глубоким гауссовским процессом.[1]

Разброс проходов отражает вариативность, создаваемую выбранным приближением, но не обязательно полную предиктивную дисперсию. В регрессии к нему может потребоваться добавить оценку условного шума наблюдений. Результат зависит от расположения и вероятности dropout, режима обучения, числа проходов и соответствия теоретических предпосылок архитектуре. MC dropout нельзя считать точной выборкой из апостериора произвольной сети.

Методы Монте-Карло по марковским цепям

Методы Монте-Карло по марковским цепям (MCMC) строят зависимую последовательность значений весов, стационарным распределением которой при выполнении условий является апостериорное p(w\mid\mathcal D). Для нейронных сетей применяют, в частности, гамильтоновский метод Монте-Карло и стохастическую градиентную ланжевеновскую динамику (SGLD). Последняя заменяет полный градиент оценкой по мини-пакету и добавляет гауссовский шум.[1]

MCMC не ограничивает апостериор заранее выбранным простым вариационным семейством, однако теоретическая асимптотическая корректность не гарантирует достаточного перемешивания за конечный бюджет. Высокая размерность, симметрии параметров, множество мод и стоимость проходов по данным затрудняют диагностику сходимости современных глубоких сетей. Для SGLD теоретические гарантии связаны с режимом убывающего шага, а постоянный шаг создаёт дискретизационное смещение.

Приближения по траектории оптимизации

Некоторые методы строят распределение параметров по сохранённым точкам траектории стохастической оптимизации. Например, SWAG аппроксимирует локальную область распределением с диагональной и низкоранговой ковариацией, после чего использует выборки весов для усреднения прогнозов.[1]

Такие методы масштабируются лучше полного MCMC, но остаются аппроксимациями и обычно описывают ограниченную область пространства параметров.

Байесовская сеть и ансамбль

Глубокий ансамбль состоит из нескольких независимо обученных нейронных сетей. Различие их прогнозов также используется для оценки неопределённости.

  • В BNN задаются априор, правдоподобие и процедура приближения апостериорного распределения одной вероятностной модели.
  • Ансамбль объединяет отдельно полученные модели и не обязан быть выборкой из единого апостериора.
  • Ансамбли легко обучать параллельно и они служат сильной практической базовой линией для неопределённости.[1]
  • Полный ансамбль требует хранить и запускать несколько сетей; простое вариационное приближение может быть компактнее, но способно недооценивать неопределённость.

Ни название «байесовский», ни наличие ансамбля не позволяют заранее определить, какой метод лучше откалиброван на конкретной задаче. Требуется прямое экспериментальное сравнение при одинаковом вычислительном бюджете.

Оценка качества неопределённости

Точность предсказаний и качество неопределённости — разные свойства. Для оценки используют:

  • отрицательное логарифмическое правдоподобие и другие строгие правила оценки вероятностного прогноза;
  • оценку Брайера для классификации;
  • диаграммы надёжности и показатели калибровки;
  • покрытие и ширину предиктивных интервалов в регрессии;
  • селективный риск при отказе модели от части решений;
  • поведение при контролируемом распределительном сдвиге и на неизвестных классах.

Одна агрегированная мера калибровки может скрывать ошибки в редких подгруппах или при сдвиге данных. Проверку проводят отдельно на эксплуатационно важных режимах. Нельзя оценивать метод только по тому, что его неопределённость возрастает на одном специально выбранном наборе объектов вне распределения.

Применения

Регрессия

В регрессии BNN возвращает предиктивное распределение или интервалы, учитывающие выбранную модель шума и неопределённость параметров. При ненулевом условном шуме предиктивный интервал будущего наблюдения обычно шире интервала условного среднего, поскольку включает алеаторическую составляющую.

Классификация и неизвестные объекты

В классификации неопределённость используют для отказа от решения, передачи объекта эксперту и выявления режимов, слабо поддержанных обучающими данными. Однако высокая неопределённость не является готовым детектором объектов вне распределения, а низкая — доказательством принадлежности обучающему распределению.

Активное обучение

В активном обучении система выбирает объекты, разметка которых ожидаемо наиболее полезна. Для этого применяют показатели эпистемической неопределённости или ожидаемого изменения апостериорного распределения. Простая отправка на разметку всех объектов с максимальной энтропией может преимущественно выбирать неразрешимый шум, поэтому функция приобретения должна соответствовать цели обучения.

Решения с возможностью отказа

В задачах с высокой ценой ошибки неопределённость может служить одним из сигналов для передачи решения человеку, дополнительного измерения или перехода в безопасный режим. Для этого заранее задают стоимость ошибок и отказов, проверяют пороги на отложенных данных и определяют действия после сигнала. Число, названное «неопределённостью», само по себе не делает систему безопасной.

Ограничения

Байесовская нейронная сеть не гарантирует правильной уверенности автоматически.

  • Апостериорное распределение почти всегда заменяется приближением, качество которого трудно проверить в большой модели.
  • Среднеполевой вариационный вывод не отражает корреляции и несколько мод и может недооценивать неопределённость.
  • Априор и правдоподобие влияют на прогноз, особенно при малом объёме данных и вне обучающей области.
  • Разные параметризации одной функции могут порождать сложные симметрии в пространстве весов.
  • Несколько выборок увеличивают стоимость обучения или вывода; малое число выборок добавляет ошибку Монте-Карло.
  • Хорошая калибровка на исходном тестовом распределении не гарантирует калибровку после сдвига данных.
  • Эпистемическая и алеаторическая неопределённости не всегда однозначно разделимы при неверно специфицированной модели.
  • Неопределённость не заменяет контроль качества данных, причинный анализ и содержательную проверку решения.

Если важный фактор отсутствует среди признаков, правила сбора данных систематически искажены или реальный процесс не входит в класс модели, формально последовательный вывод внутри BNN может оставаться неверным описанием мира.

Философский аспект

Байесовская нейронная сеть подчёркивает различие между утверждением «модель выдала ответ» и утверждением «для этого ответа достаточно оснований». Вместо одной оценки параметров рассматривается распределение гипотез, совместимых с данными и априорными предположениями.

Однако вероятностная форма не устраняет человеческий выбор. Разработчик задаёт пространство моделей, априор, правдоподобие, метод приближения и правило принятия решения. Поэтому численная неопределённость выражает степень уверенности внутри выбранной модели, а не универсальную меру незнания о реальном мире.

См. также

Литература

Личные инструменты