Исследование устойчивости оценок ковариационной матрицы параметров
Материал из MachineLearning.
(→Описание алгоритма оценки матрицы ковариации) |
|||
Строка 51: | Строка 51: | ||
Критерий остановки --- малое изменение функционала <tex>S(w)</tex> для двух последовательных итераций алгоритма. | Критерий остановки --- малое изменение функционала <tex>S(w)</tex> для двух последовательных итераций алгоритма. | ||
+ | |||
+ | ==Вычислительный эксперимент== | ||
+ | |||
+ | ===Один признак=== | ||
+ | |||
+ | В выборках один информативный признак и <tex>n'</tex> шумовых. | ||
+ | Вектор свободных переменных для каждого объекта генерируется из нормального распределения с нулевым математическим ожиданием и единичной дисперсией. | ||
+ | Рассматриваются выборки размером <tex>100</tex> и <tex>1000</tex>. | ||
+ | Зависимая переменная --- зашумленная линейная или обобщенно-линейная функция входа. | ||
+ | Рассматривались обобщенные-линейные функции <tex>y = \exp(-w^T x)</tex> и <tex>y = \sin(w^T x)</tex>. | ||
+ | Шум состоял из независимых нормальнораспределенных величин с дисперсией <tex>\frac{1}{4}</tex>. | ||
+ | |||
+ | |||
+ | ====Зависимость параметра от гиперпараметров==== | ||
+ | |||
+ | На рисунках приведена зависимость параметра <tex>w</tex> и гиперпараметра <tex>\alpha</tex>, которые соответствуют нешумовому признаку. | ||
+ | \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} | ||
+ | |||
+ | Мы видим, что параметр сильно коррелирует с гиперпараметром, при этом, нет зависимости от числа шумовых признаков. | ||
+ | |||
+ | ====Сравнение гиперпараметров для разных признаков==== | ||
+ | |||
+ | Гиперпараметры <tex>\alpha_i</tex> могут служить мерой информативности признаков. | ||
+ | Сравнивались логарифм гиперпараметра значимого признака и минимальный из логарифмов гиперпарамтеров для незначимых признаков. | ||
+ | Бралось усреднение логарифма по пяти различным выборкам. | ||
+ | Результаты приведены на рисунках \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} видно, что информативные признаки имели меньшие значения гиперпараметра <tex>\alpha</tex>, чем информативные. | ||
+ | Таким образом, удается выделить информативные и шумовые признаки. | ||
+ | На рисунке \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} | ||
+ | |||
+ | ===Реальные данные=== | ||
+ | |||
+ | Использовались реальные данные по определения характеристик цемента по его составу. | ||
+ | Данные были нормализованы так, что как у свободных, так и у зависимой переменной были нулевые математические ожидания и единичные дисперсии. | ||
+ | Для данных без шумовых признаков алгоритм был запущен сто раз на разных подвыборках размера <tex>90</tex> (размер полной выборки --- <tex>103</tex>). | ||
+ | Результаты приведены на рисунке \ref{fig:realDatanoNoise}. | ||
+ | Видно, что признаки разделяются по информативности и что информативность почти всегда эквивалента модулю веса. | ||
+ | |||
+ | \begin{figure} | ||
+ | \centering | ||
+ | \subfloat[Веса <tex>w_i<tex>]{\label{fig:gull}\includegraphics[width=0.5\textwidth]{images/weightArrayNoNoise}} | ||
+ | \subfloat[Гиперпараметры <tex>\alpha_i<tex>]{\label{fig:tiger}\includegraphics[width=0.5\textwidth]{images/alphaArrayNoNoise}} | ||
+ | \caption{Веса и гиперпараметры для выборки без шумовых признаков} | ||
+ | \label{fig:realDatanoNoise} | ||
+ | \end{figure} | ||
+ | |||
+ | Так же был проведен следующий эксперимент. | ||
+ | К начальному набору свободных переменных был добавлен ряд шумовых признаков, затем на ста запусках была оценена <tex>95</tex>-процентная квантиль рассматриваемой величины. | ||
+ | На рисунке \ref{fig:realDataNoise} видно, что увеличение числа шумовых признаков увеличивает, хоть и не сильно, квантиль как оценки параметра, так и оценки гиперпараметра для разных признаков. | ||
+ | Отметим, что, тем не менее, это не влияет на разделимость признаков по информативности. | ||
+ | |||
+ | \begin{figure} | ||
+ | \centering | ||
+ | \subfloat[Вес <tex>w_7<tex>]{\label{fig:gull}\includegraphics[width=0.5\textwidth]{images/featureWeightVsNoise7}} | ||
+ | \subfloat[Гиперпараметр <tex>\alpha_7<tex>]{\label{fig:tiger}\includegraphics[width=0.5\textwidth]{images/featureAlphaVsNoise7}} | ||
+ | \caption{Зависимость квантили оценки параметров и гиперпараметров при добавлении шумовых признаков} | ||
+ | \label{fig:realDataNoise} | ||
+ | \end{figure} | ||
+ | |||
+ | |||
+ | ==Выводы=== | ||
+ | |||
+ | Используемый подход устойчив по отношению к шумовым признакам, качество полученной аппроксимации и оценки весов и информативности для информативных признаков слабо зависят от количества шумовых признаков. | ||
+ | |||
== Исходный код и полный текст работы == | == Исходный код и полный текст работы == | ||
Строка 60: | Строка 161: | ||
== Литература == | == Литература == | ||
+ | |||
+ | # {{книга | ||
+ | |автор = Стрижов В.В. и Сологуб Р.А. | ||
+ | |заглавие = Алгоритм выбора нелинейных регрессионных моделей с анализом гиперпараметров | ||
+ | |издание = ММРО-14 | ||
+ | |год = 2009 | ||
+ | }} | ||
+ | # {{книга | ||
+ | |автор = Christopher M. Bishop | ||
+ | |заглавие = Pattern Recognition and Machine Learning | ||
+ | |издание = Hardcover | ||
+ | |год = 2006 | ||
+ | |страниц = 740 | ||
+ | }} | ||
+ | # {{книга | ||
+ | |автор = Yeh, I. and others | ||
+ | |заглавие = Modeling slump flow of concrete using second-order regressions and artificial neural networks | ||
+ | |год = 2007 | ||
+ | }} | ||
{{Задание|Алексей Зайцев|В.В. Стрижов|28 сентября 2011|likz|Strijov}} | {{Задание|Алексей Зайцев|В.В. Стрижов|28 сентября 2011|likz|Strijov}} |
Версия 18:22, 26 сентября 2011
Содержание |
Введение
В данной работе исследуется устойчивость оценок ковариационной матрицы параметров модели. Рассматриваются модели линейной регрессии. Тогда вектор параметров модели соответствует набору признаков модели. Ковариационная матрица параметров строится в предположении о вероятностном распределении вектора параметров. Исследуется, как будет меняться ковариационная матрица параметров модели при добавлении новых столбцов в матрицу плана. Для такой матрицы плана получаем расширенный вектор параметров модели и оценку матрицы ковариации параметров модели. Сравнивается ковариационная матрица для нерасширенного и расширенного вектора параметеров модели. Исследуется пространство параметров для информативных признаков.
Постановка задачи
Задана выборка . Вектор свободных переменных , зависимая переменная . Предполгается, что
где --- некоторая параметрическая функция, --- вектор ее параметров, --- ошибка, распределенная нормально с нулевым математическим ожиданием и дисперсией , . Предполагается, что вектор параметров --- нормальнораспределенный случайный вектор с нулевым математическим ожиданием и матрицей ковариаций .
Рассматривается класс линейных функций .
Наиболее вероятные параметры имеют вид:
Для такого набора параметров исследуется матрица ковариации , который мы тоже оцениваем, используя принцип максимального правдоподобия.
Описание алгоритма оценки матрицы ковариации
Для фиксированных гиперпарамтеров , вектор наиболее вероятных параметров минимизирует функционал
Набор наиболее вероятных гиперпараметров будем искать, максимизируя оценку правдоподобия по ,
здесь --- гессиан функционала .
В предположении о диагональности матрицы и гессиана ,
, , приравняв производные по гиперпараметрам к нулю, получаем оценку для :
здесь .
Так же получаем оценку :
здесь
Используя оценки вектора параметров при фиксированных гиперпарамтерах и гиперпараметров при фиксированных параметрах, выпишем итерационный алгоритм поиска наиболее вероятных параметров и гиперпараметров. Он состоит из шагов:
- поиск вектора параметров, максимизирующих функционал ,
- поиск гиперпараметров, максимизирующих правдоподобие,
- проверка критерия остановки.
Критерий остановки --- малое изменение функционала для двух последовательных итераций алгоритма.
Вычислительный эксперимент
Один признак
В выборках один информативный признак и шумовых. Вектор свободных переменных для каждого объекта генерируется из нормального распределения с нулевым математическим ожиданием и единичной дисперсией. Рассматриваются выборки размером и . Зависимая переменная --- зашумленная линейная или обобщенно-линейная функция входа. Рассматривались обобщенные-линейные функции и . Шум состоял из независимых нормальнораспределенных величин с дисперсией .
Зависимость параметра от гиперпараметров
На рисунках приведена зависимость параметра и гиперпараметра , которые соответствуют нешумовому признаку. \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}
Мы видим, что параметр сильно коррелирует с гиперпараметром, при этом, нет зависимости от числа шумовых признаков.
Сравнение гиперпараметров для разных признаков
Гиперпараметры могут служить мерой информативности признаков. Сравнивались логарифм гиперпараметра значимого признака и минимальный из логарифмов гиперпарамтеров для незначимых признаков. Бралось усреднение логарифма по пяти различным выборкам. Результаты приведены на рисунках \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} видно, что информативные признаки имели меньшие значения гиперпараметра , чем информативные. Таким образом, удается выделить информативные и шумовые признаки. На рисунке \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}
Реальные данные
Использовались реальные данные по определения характеристик цемента по его составу. Данные были нормализованы так, что как у свободных, так и у зависимой переменной были нулевые математические ожидания и единичные дисперсии. Для данных без шумовых признаков алгоритм был запущен сто раз на разных подвыборках размера (размер полной выборки --- ). Результаты приведены на рисунке \ref{fig:realDatanoNoise}. Видно, что признаки разделяются по информативности и что информативность почти всегда эквивалента модулю веса.
\begin{figure}
\centering \subfloat[Веса -процентная квантиль рассматриваемой величины. На рисунке \ref{fig:realDataNoise} видно, что увеличение числа шумовых признаков увеличивает, хоть и не сильно, квантиль как оценки параметра, так и оценки гиперпараметра для разных признаков. Отметим, что, тем не менее, это не влияет на разделимость признаков по информативности.\begin{figure}
\centering \subfloat[Вес