МОТП, Задачи на экзамене

Материал из eSyr's wiki.

(Различия между версиями)
Перейти к: навигация, поиск
(Крышечки у x заменены на чёрточки.)
(Решение)
Строка 91: Строка 91:
Еще один вариант - посчитать напрямую <math>(k,b)=(X^TX)^{-1}X^TY</math>, где <math>X</math> - матрица, первый столбец которой составлен из <math>x_i</math>, второй - из единиц, а <math>Y</math> - столбец из <math>t_i</math>.
Еще один вариант - посчитать напрямую <math>(k,b)=(X^TX)^{-1}X^TY</math>, где <math>X</math> - матрица, первый столбец которой составлен из <math>x_i</math>, второй - из единиц, а <math>Y</math> - столбец из <math>t_i</math>.
 +
 +
 +
== Доказательство формул ==
 +
 +
<math><c,u> = c_1u_1 + ... + c_nu_n</math>
 +
 +
производная по вектору -- это вектор, сотоавленный из покомпанентных производных:
 +
<math> \frac{d<c,u>}{du_1} = c_1u_1' + u_1c_1' + ... = c_1</math>
 +
и так для каждой компоненты, следовательно получаем итоговый вектор -- <math> c_1 </math>
 +
 +
<math>(||Au-f||^2)' = 2(Au-f)(Au-f)' = 2A(Au-f)</math>
 +
и аналогично 2-я формула

Версия 17:11, 27 мая 2009

За нерешение данных задач оценка снижается на балл. — Д. П. Ветров

Содержание

Метод главных компонент (PCA)

Даны р точек в двухмерном пространстве (буду прямо их ручкой у вас на листочке задавать). Найти методом главных компонент первую главную компоненту. Так что вспоминайте как матрицу 2х2 к главным осям приводить и ковариации считать.

Решение

Рассмотрим следующую задачу: p = 5, x1 = (1,1), x2 = (1,2), x3 = (3,2), x4 = (4,1), x5 = (6,4).

Находим \bar{x}=\frac{1}{p}\sum_{i=1}^px_i=(3,2).

Находим 
S=\frac{1}{p}\sum_{i=1}^p(x_i-\bar{x})^T(x_i-\bar{x})=
\frac{1}{5}\begin{pmatrix}18 && 7 \\ 7 && 6 \end{pmatrix}

Решаем |S-\lambda I| = 0 \Rightarrow \lambda=2.4\pm \sqrt{3.4}

Находим собственный вектор, соответствующий \lambda_1=2.4+\sqrt{3.4}, решая (S-\lambda_1I)\hat{d}=0. Получаем \hat{d}=(0.9085, 0.4179) - собственный вектор, соответствующий максимальному собственному значению матрицы ковариации. Он и будет являться первой главной компонентой.

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

Метод максимального правдоподобия (ММП)

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

Решение

Плотность распределения Лапласа: p(x|b,\mu)=\frac{1}{2b}e^{-\frac{|x-\mu|}{b}}, μ - сдвиг, b - масштаб (подробнее в википедии).

Вариант 1: неизвестный сдвиг, единичный масштаб

Пусть есть распределение Лапласа с неизвестным матожиданием и единичным параметром масштаба. Дана выборка, взятая из этого распределения: (x_1, x_2, \dots, x_n ). Оценим параметр μ.

Функция распределения запишется так: p(x | \mu) = \frac{1}{2} e^{-|x - \mu|}

Функция правдоподобия: L(\mu) = p(\mu | x_1, x_2, \dots, x_n ) = \prod_{i = 1}^{n} \frac{1}{2} e^{-|x_i - \mu|}

\log L(\mu) = \sum_{i = 1}^{n}(-|x_i - \mu|) + const

Покажем, что эта функция достигает максимума в точке \mu =  \mbox{med}(x_1, x_2, \dots, x_n ) -- когда параметр равен медиане выборки.

Упорядочим выборку по возрастанию. Пусть теперь она выглядит так: (x_1', x_2', \dots, x_n' ). Рассмотрим последнюю функцию на интервалах вида (-\infty, x_1'),  (x_1', x_2'), \dots, (x_{n-1}', x_n'), (x_n', +\infty),. На первом из них все функции под знаком суммы возрастают, итоговая производная равна n, на втором -- одна убывает, остальные возрастают, производная равна (n-2), и т.д. Переломный момент наступает в середине -- в одной точке перегиба (если n нечётно), или на центральном интервале производная равна 0 (если n чётно). После этого функция только убывает. Там и достигается максимум правдоподобия. Короче, нужно нарисовать график, и всё будет понятно: максимум правдоподобия достигается в точке, равной медиане выборки.

Вариант 2: нулевой сдвиг, неизвестный масштаб

p(x|b)=\frac{1}{2b}e^{-\frac{|x|}{b}}=\frac{\lambda}{2}e^{-\lambda|x|}=p(x|\lambda)

p(X|\lambda)=\prod_{i=1}^n\frac{\lambda}{2}e^{-\lambda|x_i|}=\left(\frac{\lambda}{2}\right)^n\prod_{i=1}^ne^{-\lambda|x_i|}

\log p(X|\lambda)=n\log(\frac{\lambda}{2}) - \lambda\sum_{i=1}^n|x_i|=n\log\lambda-\lambda\sum_{i=1}^n|x_i| - n \log 2 \rightarrow \max_{\lambda}

\frac{\partial \log p(X|\lambda)}{\partial \lambda}=\frac{n}{\lambda}-\sum_{i=1}^n|x_i|=0 \Rightarrow \frac{1}{\lambda}=\frac{1}{n}\sum_{i=1}^n|x_i|

Правило множителей Лангранжа

Обязательно кому-то дам задачку на условную максимизацию квадратичной функции с линейным ограничением в виде равенства. Писанины там немного, но вот без правила множителей Лагранжа обойтись вряд ли удастся.

Решение

множители Лагранжа на вики

Пусть нам необходимо максимизировать функцию f(x,y) = − 5x2 + 2xy − 3y2 при условии xy + 1 = 0.

Запишем функцию Лагранжа F(x,y,\lambda)=-5x^2+2xy-3y^2+\lambda(x-y+1) \rightarrow \max_{x,y,\lambda}.

Приравняем частные производные к нулю:


\begin{cases}
\frac{\partial F}{\partial x}=-10x+2y+\lambda=0 \\
\frac{\partial F}{\partial y}=2x-6y-\lambda=0 \\
\frac{\partial F}{\partial \lambda}=x-y+1=0
\end{cases}
\Rightarrow

\Rightarrow x=y-1 \Rightarrow 2(y-1)-6y=-4y-2=\lambda \Rightarrow -10(y-1)+2y-4y-2=8-12y=0 \Rightarrow y=\frac{2}{3} \Rightarrow x=-\frac{1}{3}.

Линейная регрессия

Даны 3-4 точки в двухмерном пространстве - одна координата, это х, другая - t. Задача построить по ним линейную регрессию вида \hat{t}=kx+b, т.е. найти коэффициенты k и b.

Решение

E(T,X,k,b)=\sum_{i=1}^n(t_i-kx_i-b)^2

\frac{\partial E(T,X,k,b)}{\partial k}=2\sum_{i=1}^n(t_i-kx_i-b)(-x_i)=0 \Rightarrow \sum_{i=1}^n(t_i-kx_i-b)x_i=0

\frac{\partial E(T,X,k,b)}{\partial b}=2\sum_{i=1}^n(t_i-kx_i-b)(-1)=0 \Rightarrow \frac{1}{n}\sum_{i=1}^n(t_i-kx_i)=b

k \left(\sum_{i=1}^nx_i^2-\frac{1}{n}\left(\sum_{i=1}^nx_i\right)^2\right)=\sum_{i=1}^nt_ix_i-\frac{1}{n}\left(\sum_{i=1}^nx_i\right)\left(\sum_{i=1}^nt_i\right)

Подставляем значения для xi и ti, получаем k, затем b. Решение проверено на нескольких наборах данных в MATLAB.

Еще один вариант - посчитать напрямую (k,b) = (XTX) − 1XTY, где X - матрица, первый столбец которой составлен из xi, второй - из единиц, а Y - столбец из ti.


Доказательство формул

< c,u > = c1u1 + ... + cnun

производная по вектору -- это вектор, сотоавленный из покомпанентных производных:  \frac{d<c,u>}{du_1} = c_1u_1' + u_1c_1' + ... = c_1 и так для каждой компоненты, следовательно получаем итоговый вектор -- c1

( |  | Auf |  | 2)' = 2(Auf)(Auf)' = 2A(Auf)

и аналогично 2-я формула

Личные инструменты
Разделы