Метод Монте-Карло — это численный метод решения математических задач с помощью генерации случайных чисел и последующей статистической оценки. Название происходит от казино в Монако, поскольку метод опирается на случайность. Основная идея: если какую-то величину (интеграл, вероятность, ожидание) трудно вычислить аналитически, её можно приближённо оценить, многократно simulating случайные сценарии и усредняя результаты.
1. Основная идея
Пусть нужно вычислить ожидание
где — случайная величина с плотностью .
Если мы можем генерировать независимые выборки из распределения , то по закону больших чисел:
Это и есть оценка Монте-Карло. Она состоятельна: при приближается к истинному значению. По центральной предельной теореме ошибка убывает как , то есть чтобы уменьшить ошибку в 10 раз, нужно в 100 раз больше выборок.
2. Простой пример: оценка числа
- Возьмём квадрат .
- Сгенерируем случайных точек .
- Посчитаем долю точек, попавших в четверть круга .
- Умножим на 4.
Чем больше , тем точнее оценка. Это классический пример метода Монте-Карло.
3. Зачем нужен в статистике
Монте-Карло применяется там, где интегралы многомерны или не берутся аналитически.
Байесовский вывод
Апостериорное распределение часто не имеет замкнутой формы. Чтобы найти средние, квантили, вероятности, используют MCMC (Markov Chain Monte Carlo) — методы, генерирующие зависимые выборки из апостериорного распределения:
- Metropolis–Hastings;
- Gibbs sampling;
- Hamiltonian Monte Carlo (используется в Stan);
- NUTS (No-U-Turn Sampler).
Смешанные модели
В GLMM и NLMM функция правдоподобия содержит интеграл по случайным эффектам:
Если случайных эффектов много, гауссова квадратура становится слишком дорогой (экспоненциальный рост). Тогда интеграл оценивают методом Монте-Карло: генерируют из и усредняют.
Пропущенные данные
- Множественная импутация: пропущенные значения многократно заполняются случайными draws из предсказанного распределения.
- Анализ чувствительности при MNAR: simulating данные при разных предположениях о механизме пропуска.
- EM-алгоритм с Monte Carlo (MCEM).
Другие применения
- Бутстрап (resampling).
- Оценка p-значений и доверительных интервалов.
- Проверка мощности.
- Финансовое моделирование, физика, машинное обучение.
4. MCMC: отдельный класс
MCMC — это методы Монте-Карло, которые генерируют не независимые, а зависимые выборки, образующие цепь Маркова, стационарное распределение которой совпадает с целевым. Это позволяет работать с распределениями, из которых напрямую сэмплировать сложно.
Основные алгоритмы:
- Metropolis–Hastings — предложение новой точки и принятие/отклонение по вероятностному правилу.
- Gibbs sampling — поочерёдное сэмплирование каждой переменной из условного распределения.
- Hamiltonian Monte Carlo — использует градиенты для эффективного исследования пространства.
Диагностика: burn-in, thinning, (Rhat), effective sample size (ESS), trace plots.
5. Преимущества и недостатки
Преимущества:
- Работает в многомерных задачах: сложность растёт не экспоненциально, а примерно линейно по размерности.
- Прост в реализации для сложных моделей.
- Универсален: подходит для интегралов, оптимизации, байесовского вывода.
- Позволяет оценить неопределённость естественным образом.
Недостатки:
-
Медленная сходимость .
-
Требует много вычислений для высокой точности.
-
Результат стохастичен: при повторном запуске оценки немного различаются.
-
В MCMC нужны диагностика сходимости и борьба с автокорреляцией.
-
Качество зависит от генератора случайных чисел и выбора алгоритма.
Кратко
Метод Монте-Карло — это численное интегрирование и оценка вероятностей через случайную выборку. Он заменяет аналитический интеграл усреднением по сгенерированным точкам. В статистике используется для байесовского вывода, смешанных моделей, импутации пропусков и анализа чувствительности. Главные плюсы — универсальность и работа в многомерных задачах; главный минус — медленная сходимость и вычислительная стоимость.