Аппроксимация Лапласа (пример)
Материал из MachineLearning.
(→Описание алгоритма) |
(→Описание алгоритма) |
||
Строка 52: | Строка 52: | ||
<center><tex>q(z)=(\frac{A}{2 pi})^{1/2}exp(-\frac{A}{2}(z-z_0)^2)</tex>.</center> | <center><tex>q(z)=(\frac{A}{2 pi})^{1/2}exp(-\frac{A}{2}(z-z_0)^2)</tex>.</center> | ||
- | Расстояние Кульбака - Лейблера: | + | В многомерном случае (размерности ''M''), аналогично действуя, придем к: |
+ | |||
+ | <center><tex>q(z)=(\frac{|A|}{(2 pi)^M})^{1/2}exp(-\frac{1}{2}(z-z_0)^T A (z-z_0))</tex>.</center> | ||
+ | |||
+ | где '''''A''''' Гаусиан, размера ''M x M'', равный: | ||
+ | |||
+ | <center><tex>A=-\nabla \nabla lnf(z)|_{z=z_0}</tex>;</center> | ||
+ | |||
+ | <tex>z</tex> и <tex>z_0</tex> есть вектора размерности ''M''. | ||
+ | # Расстояние Кульбака - Лейблера: | ||
<center> <tex>D_{kl}(p,q)=\sum\limits_{x\in \mathcal{X}} p(x) \ln \frac{p(x)}{q(x)}</tex></center> | <center> <tex>D_{kl}(p,q)=\sum\limits_{x\in \mathcal{X}} p(x) \ln \frac{p(x)}{q(x)}</tex></center> | ||
Версия 00:00, 24 ноября 2010
Аппроксимация Лапласа - способ оценки параметров нахождения нормального распределения при апроксимации заданой плотности вероятности.
Содержание[убрать] |
Сэмплирование
Сэмплирование – метод выбора подмножества наблюдаемых величин из данного множества, с целью выделения неких свойст исходного множества. Одно из основных приминений методов сэмплирования заключается в оценке математического ожидания сложных вероятностных распределений:
для которых данный инеграл не может быть подсчитан аналитическим методом (к примеру, ввиду сложного аналитического вида распределения ). Однако, можно подсчитать значение p(z) в любой точке z. Основная идея заключается в создании незавсимой выборки
(где
) из распределения
. Это позволит оцениваемое математическое ожидание приблизить конечной суммой:
Существует несколько методов сэмплирования для создания выборки [1]:
- Simple random sampling;
- Systematic sampling;
- Rejection sampling;
- Adaptive rejection sampling.
Постановка задачи
Задана выборка — множество значений свободных переменных и множество
соответствующих им значений зависимой переменной.
Необходимо для выбранной регрессионной модели
:
- показать зависимость среднеквадратичной ошибки от значений параметров модели:
;
- построить график и сделать апроксимацию Лапласа для нее;
- найти расстояния между получеными зависимостями, используя расстояние Кульбака - Лейблера.
Описание алгоритма
При востановлении регрессии рассматривалась следующая гипотеза порождения данных:
В таком случае, при фиксированной модели f плотность вероятности появления данных равняется[1]:
- это функция регрессионных невязок, т.е.
;
- нормировачный коэффициент.
- В заданной модели f, используя метод наименьших квадратов, находим оптимальное значение вектора параметров
. Далее, фиксируем все параметры выбранной регрессионной модели (для определенности зададим им оптимальные значения) кроме одного (пусть этот незафиксированный параметр будет w(1)). После чего, варируя значение w(1), строим искомую зависимость
и его график. Таким образом построена зависимость от одного параметра w(1). Аналогично действуя, строится зависимость от большего количества параметров.
- При построении апроксимации Лапласса вначале рассмотрим одномерный случай. Пусть есть распределение p(z):
- нормировочный коэффициент.
Первый шаг при построении апроксимации Лапласса, нахождение максимума, т.е. такого , что
. Далее, раскладываем
в ряд Тейлора в окресности
:
где
Тогда
Апроксимация Лапласса примет вид:
В многомерном случае (размерности M), аналогично действуя, придем к:
где A Гаусиан, размера M x M, равный:
и
есть вектора размерности M.
- Расстояние Кульбака - Лейблера:
Вычислительный эксперимент
Обозначим плоность распределения SSE как , а его апроксимация лапласса
.
Однако, во время вычислительного эксперимента SSE принимало достаточно большие значения (порядка ). Как следствие, p(y|x,w) принимало значения порядка 1, и апроксимация Лапласса была некоректной. Поэтому, апроксимация Лапласса применялась не к самому распределению p(y|x,w), а к ln(p(y|x,w)) (т.е. к -SSE c точностью до коэффициента).
Пример 1
Задуманная функция . Берем линейную регрессионную модель с двумя параметрами:
.
Используя метод наименьших квадратов находим оптимальное значение
и
(при которых SSE минимально).
При фиксированном задаем различные значение
(500 случайных значений на отрезке [-1;2]) и строим зависимость:
.
Повторим эксперимент, только теперь варируем сразу оба параметра и
:
апроксимация Лапласса:
На рис.2 наблюдается зависимость между коэффициентами и
. Следовательно, ковариационная матрица
не будет диагональной.
Смотри также
Литература
- Bishop, C. Pattern Recognition And Machine Learning. Springer. 2006.
Примечания
![]() | Данная статья является непроверенным учебным заданием.
До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}. См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе. |