Алгоритм LOWESS

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

(Различия между версиями)
Перейти к: навигация, поиск
(Постановка задачи)
(Постановка задачи)
Строка 19: Строка 19:
<tex>K: [0,\infty) \rightarrow [0,\infty)</tex>, называемую ядром:
<tex>K: [0,\infty) \rightarrow [0,\infty)</tex>, называемую ядром:
-
::<tex>w_i(x) = K\left( \frac{\ro(x, xi)}{h}\right)</tex>
+
::<tex>w_i(x) = K\left( \frac{\rho(x, x_i)}{h}\right)</tex>
 +
 
 +
Параметр <tex>h</tex> называется ''шириной ядра'' или ''шириной окна сглаживания''. Чем меньше <tex>h</tex>,
 +
тем быстрее будут убывать веса <tex>w_i(x)</tex> по мере удаления <tex>x_i(x)</tex> от <tex>x(x)</tex>.
=== Вход ===
=== Вход ===

Версия 20:40, 28 декабря 2009

Статья плохо доработана.

Имеются указания по её улучшению:


Алгоритм LOWESS (locally weighted scatter plot smoothing) - локально взвешенное сглаживание.

Содержание

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

Решается задача восстановления регрессии. Задано пространство объектов X и множество возможных ответов Y=R. Существует неизвестная целевая зависимость  y^*: X \rightarrow Y, значения которой известны только на объектах обучающей выборки  X^m={(x_i, y_i)}_1^m Требуется построить алгоритм a: X \rightarrow Y , аппроксимирующий целевую зависимость y^*.

Непараметрическое восстановление регрессии основано на идее, что значение a(x) вычисляется для каждого объекта x по нескольким ближайшим к нему объектам обучающей выборки.

В формуле Надарая–Ватсона для учета близости объектов x_i обучающей выборки к объекту a(x) предлагалось использовать невозрастающую, гладкую, ограниченную функцию K: [0,\infty) \rightarrow [0,\infty), называемую ядром:

w_i(x) = K\left(  \frac{\rho(x, x_i)}{h}\right)

Параметр h называется шириной ядра или шириной окна сглаживания. Чем меньше h, тем быстрее будут убывать веса w_i(x) по мере удаления x_i(x) от x(x).

Вход

X^l - обучающая выборка

Выход

Коэффициенты \gamma_i, i=1,\ldots,l

Алгоритм

1: инициализация

\gamma_i:=1, i=1,\ldots,l

2: повторять 3: вычислить оценки скользящего контроля на каждом объекте:

a_i:=a_h\( x_i;X^l\setminus\{x_i\} \)=\frac{\sum_{j=1,j\ne i}^ly_j\gamma_jK\(\frac{\rho(x_i,x_j)}{h(x_i)}\)}{\sum_{j=1,j\ne i}^l\gamma_jK\(\frac{\rho(x_i,x_j)}{h(x_i)}\)},\;i=1,\ldots,l

4: вычислить коэффициенты \gamma_i:

\gamma_i:=\tilde{K}( \| a_i\;-\;y_i\| ) ,\;i=1,\ldots,l;

5: пока коэффициенты \gamma_i не стабилизируются

Коэффициенты \gamma_i, как и ошибки \epsilon_i, зависят от функции a_h, которая, в свою очередь, зависит от \gamma_i. Разумеется, это не "порочный круг", а хороший повод для организации итерационного процесса. На каждой итерации строится функция a_h, затем уточняются весовые множители \gamma_i. Как правило, этот процесс сходится довольно быстро.

Литература

  1. Воронцов К.В. Лекции по алгоритмам восстановления регрессии. — 2007.

См. также


Данная статья является непроверенным учебным заданием.
Студент: Участник:Валентин Голодов
Преподаватель: Участник:Vokov
Срок: 31 декабря 2009

До указанного срока статья не должна редактироваться другими участниками проекта MachineLearning.ru. По его окончании любой участник вправе исправить данную статью по своему усмотрению и удалить данное предупреждение, выводимое с помощью шаблона {{Задание}}.

См. также методические указания по использованию Ресурса MachineLearning.ru в учебном процессе.


Личные инструменты