Аппроксимация Лапласа (пример)
Материал из MachineLearning.
 (→Описание алгоритма)  | 
				 (→Описание алгоритма)  | 
			||
| Строка 28: | Строка 28: | ||
В таком случае, при фиксированной модели ''f'' плотность вероятности появления данных равняется<ref>Стрижов В.В., Крымова Е.А. Методы выбора регрессионных моделей. М.: ВЦ РАН, 2010. 60 с., стр. 41 </ref>:  | В таком случае, при фиксированной модели ''f'' плотность вероятности появления данных равняется<ref>Стрижов В.В., Крымова Е.А. Методы выбора регрессионных моделей. М.: ВЦ РАН, 2010. 60 с., стр. 41 </ref>:  | ||
<center><tex>p(y|x,w)=\frac{1}{Z_D}exp(-E_D)</tex>, где</center>  | <center><tex>p(y|x,w)=\frac{1}{Z_D}exp(-E_D)</tex>, где</center>  | ||
| - | <tex>E_D</tex> - это функция регрессионных невязок, т.е.   | + | <tex>E_D</tex> - это функция регрессионных невязок, т.е. <tex>SSE</tex>;  | 
<tex>Z_D</tex> - нормировачный коэффициент.  | <tex>Z_D</tex> - нормировачный коэффициент.  | ||
| - | #   | + | # В заданной модели ''f'', используя [[метод наименьших квадратов]], находим оптимальное значение вектора параметров <tex>\mathcal w_{opt}</tex>. Далее, фиксируем  все параметры выбранной регрессионной модели (для определенности зададим им оптимальные значения) кроме одного (пусть этот незафиксированный параметр будет ''w(1)''). После чего, варируя значение ''w(1)'', строим искомую зависимость <tex>SSE=SSE(w(1))</tex> и его график. Таким образом построена зависимость от одного параметра ''w(1)''. Аналогично действуя, строится зависимость от большего количества параметров.  | 
| - | #   | + | # При построении апроксимации Лапласса вначале рассмотрим одномерный случай. Пусть есть распределение ''p(z)'':  | 
| + | <center><tex>p(z)=\frac{1}{Z}f(z)</tex>, где</center>  | ||
| + | <tex>Z=\int f(z)dz</tex> - нормировочный коэффициент.  | ||
| + | Первый шаг при построении апроксимации Лапласса, нахождение максимума, т.е. такого <tex>z_0</tex>, что <tex>p'(z_0)=0</tex>. Далее, раскладываем <tex>lnf(z)</tex> в ряд Тейлора в окресности  <tex>z_0</tex>:  | ||
| + | <center><tex>lnf(z)=lnf(z_0)-\frac{1}{2}A(z-z_0)^2</tex></center>  | ||
| + | |||
| + | где  | ||
| + | |||
| + | <center><tex>A=-\frac{d^2}{dz^2}lnf(z)|_{z=z_0}</tex>.</center>  | ||
| + | |||
| + | Тогда  | ||
| + | |||
| + | <center><tex>f(z)=f(z_0)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>  | ||
Расстояние Кульбака - Лейблера:  | Расстояние Кульбака - Лейблера:  | ||
Версия 23:50, 23 ноября 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):
 
 - нормировочный коэффициент.
Первый шаг при построении апроксимации Лапласса, нахождение максимума, т.е. такого , что 
. Далее, раскладываем 
 в ряд Тейлора в окресности  
:
где
Тогда
Апроксимация Лапласса примет вид:
Расстояние Кульбака - Лейблера:
Вычислительный эксперимент
Обозначим плоность распределения 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 в учебном процессе.  | 





