Sobes.tech
Senior
22

Что такое Bayesian neural networks и как считать posterior?

Companies where asked
IGaming
Райффайзенбанк

Answer from AI

sobes.tech AI

Bayesian Neural Networks (BNN) — это нейронные сети, в которых веса и параметры рассматриваются как случайные величины с априорным распределением. Вместо фиксированных весов BNN моделируют неопределённость в параметрах, что позволяет получать вероятностные предсказания и оценивать уверенность модели.

Основная идея — вычислить апостериорное распределение параметров сети ( p(\theta | D) ), где ( \theta ) — параметры сети, а ( D ) — обучающие данные. По формуле Байеса:

[ p(\theta | D) = \frac{p(D | \theta) p(\theta)}{p(D)} ]

  • ( p(\theta) ) — априорное распределение параметров.
  • ( p(D | \theta) ) — функция правдоподобия (вероятность данных при заданных параметрах).
  • ( p(D) ) — нормализующая константа (маргинальная вероятность данных).

Вычисление точного апостериора обычно невозможно из-за высокой размерности и сложности модели, поэтому применяются приближённые методы:

  • Вариационные методы (Variational Inference): аппроксимируют апостериорное распределение параметров более простой функцией, минимизируя расхождение Кульбака-Лейблера.
  • MCMC (Markov Chain Monte Carlo): выборка из апостериора с помощью стохастических методов.
  • Dropout как аппроксимация Бейсова (MC Dropout).

Пример: вариационный байесовский подход задаёт параметрическое распределение ( q(\theta) ) и оптимизирует его параметры, чтобы приблизить ( p(\theta | D) ).

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