Исследование устойчивости оценок ковариационной матрицы параметров

Материал из MachineLearning.

Перейти к: навигация, поиск

Содержание

Введение

В данной работе исследуется устойчивость оценок ковариационной матрицы параметров модели. Рассматриваются модели линейной регрессии. Тогда вектор параметров модели соответствует набору признаков модели. Ковариационная матрица параметров строится в предположении о вероятностном распределении вектора параметров. Исследуется, как будет меняться ковариационная матрица параметров модели при добавлении новых столбцов в матрицу плана. Для такой матрицы плана получаем расширенный вектор параметров модели и оценку матрицы ковариации параметров модели. Сравнивается ковариационная матрица для нерасширенного и расширенного вектора параметеров модели. Исследуется пространство параметров для информативных признаков.

Постановка задачи

Задана выборка D = (X, \mathbf{y}) = \{(x_i, y_i)\}_{i = 1}^m. Вектор свободных переменных x \in \mathbb{R}^n, зависимая переменная y \in \mathbb{R}. Предполгается, что

y = f(x, w) + \varepsilon,

где f(x, w) --- некоторая параметрическая функция, w \in W --- вектор ее параметров, \varepsilon --- ошибка, распределенная нормально с нулевым математическим ожиданием и дисперсией \beta, \varepsilon \sim \mathcal{N}(0, \beta). Предполагается, что вектор параметров w --- нормальнораспределенный случайный вектор с нулевым математическим ожиданием и матрицей ковариаций A.

Рассматривается класс линейных функций f(x, w). Наиболее вероятные параметры w_{MP} имеют вид:

w_{MP} = argmax_{w} p(w| D, A, \beta, f).

Для такого набора параметров исследуется матрица ковариации A, который мы тоже оцениваем, используя принцип максимального правдоподобия.

Описание алгоритма оценки матрицы ковариации

Для фиксированных гиперпарамтеров A, \beta вектор наиболее вероятных параметров минимизирует функционал

S(w) = w^T A w + \beta \sum_{i = 1}^n (y_i - x_i^T w)^2 = E_{w} + \beta E_D.

Набор наиболее вероятных гиперпараметров будем искать, максимизируя оценку правдоподобия по A, \beta

	\ln p(D|A, \beta, f) = - \frac12 \ln |A| - \frac{m}2 \ln 2\pi + \frac{m}2 \ln \beta \underbrace{- E_{w} - \beta E_D}_{S(w_0)} - \frac12 \ln |H|,

здесь H --- гессиан функционала S(w). В предположении о диагональности матрицы A = diag(\alpha) и гессиана H = diag(\mathbf{h}), \alpha = \{ \alpha_i \}_{i = 1}^m, \mathbf{h} = \{h_i \}_{i = 1}^m, приравняв производные по гиперпараметрам к нулю, получаем оценку для \alpha_i:

	\alpha_i = \frac12 \lambda_i \left( \sqrt{1 + \frac{4}{w_i^2 \lambda_i}} - 1 \right),

здесь \lambda_i = \beta h_i.

Так же получаем оценку \beta:

	\beta = \frac{n - \gamma}{2 E_D},

здесь

	\gamma = \sum_{j=1}^n \frac{\lambda_j}{\lambda_j + \alpha_j}.

Используя оценки вектора параметров при фиксированных гиперпарамтерах и гиперпараметров при фиксированных параметрах, выпишем итерационный алгоритм поиска наиболее вероятных параметров и гиперпараметров. Он состоит из шагов:

  • поиск вектора параметров, максимизирующих функционал S(w),
  • поиск гиперпараметров, максимизирующих правдоподобие,
  • проверка критерия остановки.

Критерий остановки --- малое изменение функционала S(w) для двух последовательных итераций алгоритма.

Вычислительный эксперимент

Один признак

В выборках один информативный признак и n' шумовых. Вектор свободных переменных для каждого объекта генерируется из нормального распределения с нулевым математическим ожиданием и единичной дисперсией. Рассматриваются выборки размером 100 и 1000. Зависимая переменная --- зашумленная линейная или обобщенно-линейная функция входа. Рассматривались обобщенные-линейные функции y = \exp(-w^T x) и y = \sin(w^T x). Шум состоял из независимых нормальнораспределенных величин с дисперсией \frac{1}{4}.


Зависимость параметра от гиперпараметров

На рисунках приведена зависимость параметра w и гиперпараметра \alpha, которые соответствуют нешумовому признаку. \begin{figure}

 \centering
 \subfloat[Линейная функция]{\label{fig:gull}\includegraphics[width=0.3\textwidth]{images/covarianceOneFeature100}}                
 \subfloat[Экспонента]{\label{fig:tiger}\includegraphics[width=0.3\textwidth]{images/covarianceOneFeature100exp}}
 \subfloat[Синусоида]{\label{fig:mouse}\includegraphics[width=0.3\textwidth]{images/covarianceOneFeature100sin}}
 \caption{Зависимость параметров и гиперпараметров от числа шумовых признаков}
 \label{fig:parametersHyperparameters}

\end{figure}

Мы видим, что параметр сильно коррелирует с гиперпараметром, при этом, нет зависимости от числа шумовых признаков.

Сравнение гиперпараметров для разных признаков

Гиперпараметры \alpha_i могут служить мерой информативности признаков. Сравнивались логарифм гиперпараметра значимого признака и минимальный из логарифмов гиперпарамтеров для незначимых признаков. Бралось усреднение логарифма по пяти различным выборкам. Результаты приведены на рисунках \ref{fig:hyperparametersCompare}. На рисунке \ref{fig:hyperparametersCompare} видно, что в большинстве случаев значение гиперпараметра для значимого признака меньше, чем минимальное значение гиперпараметров для шумового, однако, в некоторых случаях наблюдаются выбросы. \begin{figure}

 \centering
 \subfloat[Линейная функция]{\label{fig:gull}\includegraphics[width=0.5\textwidth]{images/meanAlphaVsNoiseAlpha}}                
 \subfloat[Экспонента]{\label{fig:tiger}\includegraphics[width=0.5\textwidth]{images/meanAlphaVsNoiseAlphaExp}}
 \caption{Гиперпараметры для шумовых и информативного признака}
 \label{fig:hyperparametersCompare}

\end{figure}

Два признака

Проводился аналогичный эксперимент для двух информативных признаков, причем сравнивался максимальное значение гиперпараметра для информативных признаков с минимальным значением признака для шумовых признаков. На рисунках \ref{fig:hyperparametersCompare2} видно, что информативные признаки имели меньшие значения гиперпараметра \alpha, чем информативные. Таким образом, удается выделить информативные и шумовые признаки. На рисунке \ref{fig:hyperparametersCompare3}показано сравнение информативности первого и второго информативных признаков, видно, что из-за большего веса один признак информативнее другого для линейной модели. Так же отметим, что для обобщенно-линейной функции не удается выделить наиболее информативный признак, в некоторых случаях гиперпараметры для одного из признаков стремятся к бесконечности.


\begin{figure}

 \centering
 \subfloat[Линейная функция]{\label{fig:gull}\includegraphics[width=0.5\textwidth]{images/meanAlphaVsNoiseAlpha2}}                
 \subfloat[Синусоида]{\label{fig:tiger}\includegraphics[width=0.5\textwidth]{images/meanAlphaVsNoiseAlpha2sin}}
 \caption{Гиперпараметры для шумовых и информативных признаков}
 \label{fig:hyperparametersCompare2}

\end{figure}

\begin{figure}

 \centering
 \subfloat[Линейная функция]{\label{fig:gull}\includegraphics[width=0.5\textwidth]{images/alphasCompare}}                
 \subfloat[Синус]{\label{fig:tiger}\includegraphics[width=0.5\textwidth]{images/alphasCompareSin}}
 \caption{Гиперпараметры для шумовых и информативных признаков}
 \label{fig:hyperparametersCompare3}

\end{figure}

Реальные данные

Использовались реальные данные по определения характеристик цемента по его составу. Данные были нормализованы так, что как у свободных, так и у зависимой переменной были нулевые математические ожидания и единичные дисперсии. Для данных без шумовых признаков алгоритм был запущен сто раз на разных подвыборках размера 90 (размер полной выборки --- 103). Результаты приведены на рисунке \ref{fig:realDatanoNoise}. Видно, что признаки разделяются по информативности и что информативность почти всегда эквивалента модулю веса.

\begin{figure}

 \centering
 \subfloat[Веса w_i<tex>]{\label{fig:gull}\includegraphics[width=0.5\textwidth]{images/weightArrayNoNoise}}                
</p>
<pre> \subfloat[Гиперпараметры <tex>\alpha_i<tex>]{\label{fig:tiger}\includegraphics[width=0.5\textwidth]{images/alphaArrayNoNoise}}
 \caption{Веса и гиперпараметры для выборки без шумовых признаков}
 \label{fig:realDatanoNoise}
</pre>
<p>\end{figure}
</p><p>Так же был проведен следующий эксперимент.
К начальному набору свободных переменных был добавлен ряд шумовых признаков, затем на ста запусках была оценена  <tex>95-процентная квантиль рассматриваемой величины.
На рисунке \ref{fig:realDataNoise} видно, что увеличение числа шумовых признаков увеличивает, хоть и не сильно, квантиль как оценки параметра, так и оценки гиперпараметра для разных признаков.
Отметим, что, тем не менее, это не влияет на разделимость признаков по информативности.

\begin{figure}

 \centering
 \subfloat[Вес w_7<tex>]{\label{fig:gull}\includegraphics[width=0.5\textwidth]{images/featureWeightVsNoise7}}                
</p>
<pre> \subfloat[Гиперпараметр <tex>\alpha_7<tex>]{\label{fig:tiger}\includegraphics[width=0.5\textwidth]{images/featureAlphaVsNoise7}}
 \caption{Зависимость квантили оценки параметров и гиперпараметров при добавлении шумовых признаков}
 \label{fig:realDataNoise}
</pre>
<p>\end{figure}
</p><p><br />
==Выводы===
</p><p>Используемый подход устойчив по отношению к шумовым признакам, качество полученной аппроксимации и оценки весов и информативности для информативных признаков слабо зависят от количества шумовых признаков.
</p><p><br />
== Исходный код и полный текст работы ==
</p>
<ul><li> [https://mlalgorithms.svn.sourceforge.net/svnroot/mlalgorithms/Zaitsev2011CovarianceEstimation Zaitsev2011CovarianceEstimation]
</li></ul>
<p>== Смотри также ==
</p>
<ul><li> [[Связанный Байесовский вывод]]
</li><li> [[Многомерная случайная величина]]
</li></ul>
<p>== Литература ==
</p>
<ol><li> {{книга
</li></ol>
<p>|автор        = Стрижов В.В. и Сологуб Р.А.
|заглавие     = Алгоритм выбора нелинейных регрессионных моделей с анализом гиперпараметров
|издание      = ММРО-14
|год          = 2009
}}
</p>
<ol><li> {{книга
</li></ol>
<p>|автор        = Christopher M. Bishop 
|заглавие     = Pattern Recognition and Machine Learning
|издание      = Hardcover
|год          = 2006
|страниц      = 740
}}
</p>
<ol><li> {{книга
</li></ol>
<p>|автор        = Yeh, I. and others
|заглавие     = Modeling slump flow of concrete using second-order regressions and artificial neural networks
|год          = 2007
}}
</p><p>{{Задание|Алексей Зайцев|В.В. Стрижов|28 сентября 2011|likz|Strijov}}
</p><p>[[Категория:Практика и вычислительные эксперименты]]
[[Категория:Регрессионный анализ]]