§2. Непараметрическая регрессия
Изучаемая в этом параграфе задача заключается в сглаживании данных при помощи некоторой непрерывной кривой . Данные рассматриваются как реализация выборки, описываемой одной из двух моделей.
Смысл по-пацански: в гл. 21 мы заранее говорили: «зависимость — прямая» (или парабола) — и подгоняли коэффициенты. Здесь формулу не заказываем вообще. Пусть точки сами нарисуют кривую, а мы только аккуратно сгладим шум.
Модель со случайным планом эксперимента
Пары считаются независимыми и одинаково распределёнными. Кривая регрессии определяется как (см. П7)
Это определение корректно, если . Если у вектора существует плотность , то
где — маргинальная плотность случайной величины .
Например, пусть (см. П9), где , . Несложно подсчитать, что в этом случае
т. е. кривая регрессии линейна.
По кирпичикам: условное распределение при в нормальном случае снова нормально, его среднее сдвигается от пропорционально отклонению , а коэффициент — ковариация, делённая на дисперсию предиктора , т. е. . (У Лагутина в знаменателе напечатано — это опечатка: дисперсия отклика тут ни при чём, ср. наклон прямой МНК из гл. 21.)
Смысл по-пацански: для нормального облака «кривая» регрессии — честная прямая. Всё нелинейное начинается, когда облако не нормальное, — вот для этого и нужна непараметрика.
Модель с фиксированным планом эксперимента
В случае управляемой неслучайной предикторной (предсказывающей) переменной применяется модель
где — «узлы» (задаваемые значения , в которых производятся измерения отклика ), — независимые и одинаково распределённые случайные ошибки, , .
Замечание 1. Если допустимы многократные наблюдения в фиксированной точке , то можно оценить с помощью среднего арифметического соответствующих .
Однако часто этому препятствуют финансовые ограничения: слишком дорого проводить более одного измерения для каждого фиксированного уровня предиктора . Возможно также, что условия эксперимента нельзя воспроизвести из-за разрушения объекта (например, при изучении безопасности водителя при столкновении автомобилей) и т. п.
Локальное усреднение
Если есть уверенность, что — гладкая кривая, наблюдения вблизи точки должны содержать информацию о значении в точке . Таким образом, представляется возможным использовать нечто вроде локального усреднения близких к данных для формирования оценки .
— Р. Эйбанк
В основе процедуры оценивания кривой регрессии лежит идея локального усреднения. Оценка определяется как взвешенное среднее
где веса велики для , близких к точке , и малы для остальных .
Смысл по-пацански: хочешь узнать, сколько в среднем получают на твоей улице, — спрашивай соседей, а не весь город. Ближнего соседа слушай внимательно, дальнего — вполуха, а с другого конца города — вообще не слушай.
Замечание 2. В соответствии с примером 5 гл. 21 величина при каждом является оценкой взвешенных наименьших квадратов, так как она служит решением задачи минимизации функции
По кирпичикам: производная по равна ; приравняв её нулю, получим — это и есть (7). То есть в каждой точке мы подгоняем константу взвешенным МНК.
Оценка Надарая — Ватсона
Один из наиболее простых способов определения весов опирается на использование некоторого ядра (см. §1):
Здесь обозначает ширину «окна сглаживания». Для многомерной предикторной переменной можно взять
Задавать веса можно и по-другому. Для одномерной предикторной переменной Гассер и Мюллер в 1979 г. предложили
где — упорядоченные по возрастанию , а отрезки разбивают прямую на кусков, по одному на каждое наблюдение: , , а — середины между соседними узлами. Заметим, что (интегралы по кускам складываются в ), поэтому делить на сумму весов в (7) уже не нужно.
(У Лагутина пределы интегрирования записаны как и с суммой по до — так весов получается на один больше, чем наблюдений. Мы приводим стандартную форму Гассера — Мюллера с серединами; именно она реализована в gasserMuller из нашей библиотеки.)
Смысл по-пацански: Гассер и Мюллер каждому наблюдению выдают свой «участок» на оси и взвешивают его по тому, какая часть ядра на этот участок легла. Где точки густо — участки маленькие, и вес каждой точки меньше; где редко — участок большой, вес больше. Честная делёжка.
В случае весов из формулы (9) правая часть равенства (7) приобретает вид
Выражение (11) определяет так называемую оценку Надарая — Ватсона (Nadaraya, 1964; Watson, 1964). С учётом формулы (3) §1
где — ядерная оценка Розенблатта — Парзена маргинальной плотности переменной .
По кирпичикам: знаменатель в (11), делённый на , — это ровно оценка плотности из §1. Так что Надарая — Ватсон — это «оценка , делённая на оценку », т. е. подстановка ядерных оценок в формулу для из модели со случайным планом.
Состоятельность и риск
В следующей теореме приведены условия, обеспечивающие состоятельность оценки Надарая — Ватсона .
Теорема 2. Пусть для модели со случайным планом эксперимента и одномерной предикторной переменной
- ,
- при ,
- ,
- , , .
Тогда в любой точке непрерывности функций , и такой, что .
(Доказательство этой теоремы приведено в книге В. Хардле «Прикладная непараметрическая регрессия».)
По кирпичикам: условие убивает смещение (окно стягивается к точке ), а — дисперсию (в окно попадает всё больше точек: их примерно ). Отсюда и требование : где точек нет совсем, усреднять нечего.
Сформулированный результат показывает, что оценка из формулы (11) сходится по вероятности к — истинной кривой регрессии. Естественно поставить вопрос, какова скорость этой сходимости. Одной из возможных мер точности оценки является квадратичный риск .
Теорема 3 (Гассер и Мюллер, 1984). Рассмотрим модель с фиксированным планом эксперимента для одномерной предикторной переменной . (Для случайного плана скорость сходимости та же, но с другими константами.) Без ограничения общности можно считать, что «узлы» . Предположим, что
- используется ядро с и ;
- имеет носитель , причём ;
- веса задаются формулой (10);
- дважды непрерывно дифференцируема;
- ;
- , ;
- , , .
Тогда
Видим, что так же, как и в формуле (5) §1, квадратичный риск состоит из двух частей: квадрата смещения и дисперсии, где смещение (как функция от ) возрастает, а дисперсия — убывает. В. Хардле пишет: «Это качественное соображение раскрывает сущность задачи сглаживания: баланс между дисперсией и квадратом смещения».
Смысл по-пацански: та же песня, что и с плотностью. Смещение растёт как и сильнее там, где кривая круче изгибается ( большая): широкое окно «срезает» горбы. Дисперсия падает как . Оптимум снова , ошибка .
Пример 2. Обнаружение локального максимума кривой регрессии
На рис. 4 у Лагутина представлены моделированные данные. Использовалась модель с фиксированным планом эксперимента: , , . Точки порождены «зашумлением» с помощью взятой из таблицы T1 реализации кривой регрессии
(т. е. на линейную функцию накладывается нормальный «горб» с центром в и шириной примерно равной ).
Из-за большой интенсивности «шума» локальный максимум практически не различим. Однако он хорошо заметен на графике оценки из (11), для которой использовалось гладкое квартическое ядро и был определён методом пропуска (см. ниже) оптимальный размер «окна сглаживания» .
По кирпичикам: при , т. е. , . Высота горба — 1, а стандартное отклонение шума — тоже 1. Горб «утоплен» в шуме по самую макушку.
Смысл по-пацански: на глаз в облаке точек горба не видно — шум того же роста, что и горб. А сглаживание вытаскивает его наружу: соседи усредняются, шум гасится, горб остаётся.
Таблицы T1 у нас под рукой нет, поэтому в виджете — своя реализация шума (зерно 185 подобрано так, чтобы метод пропуска, как и у Лагутина, дал ). Жми «Новая выборка» — и увидишь, что на другой реализации горб может проступать хуже, а оптимальное окно — уехать.
Оценка производной
Методы ядерного сглаживания могут быть также применены и для оценивания производных кривой регрессии. Так, первую производную можно оценить, используя веса
получаемые дифференцированием правой части равенства (11) по .
По кирпичикам: (11) — дробь с , ; производная по равна , и . Собираем: . Ядро для этого нужно дифференцируемое — квартическое подходит, у Епанечникова излом на краях.
Пример 3. Зависимость скорости роста от возраста
На рис. 5 у Лагутина представлены ядерные оценки кривых средней скорости (в см/год) роста (т. е. ) в зависимости от возраста (в годах) для мальчиков и для девочек.
У девочек наблюдается локальный максимум скорости роста около 12 лет. У мальчиков аналогичный пик ещё более выражен, но происходит примерно на 2 года позже.
Применение метода непараметрической регрессии позволило обнаружить и у мальчиков, и у девочек дополнительный локальный максимум , так называемый средний скачок роста, в возрасте около 8 лет. Другие подходы, основанные на априорной фиксации параметрических моделей, приводят к значительным трудностям в обнаружении этого второго пика.
Смысл по-пацански: заранее загнал рост в красивую формулу с одним пиком — второй пик формула и не покажет, она его просто не умеет. Ядро ничего заранее не знает — поэтому и видит то, что есть.
Метод пропуска (кросс-проверка)
Так же, как и при оценивании плотности, решающую роль играет не вид функции , а правильный выбор ширины «окна сглаживания» . Часто в этом помогает метод пропуска, или кросс-проверка.
Минимизируется по функция
где представляет собой оценку для по выборке, в которой -е наблюдение пропущено. Здесь — сумма квадратов ошибок предсказания (невязок) на основе выборки без .
По кирпичикам: зачем выкидывать саму точку? Если её оставить, то при оценка в равна самому , невязки обнуляются, и «оптимальным» окажется нулевое окно — чистая подгонка под шум. Пропуск заставляет предсказывать точку по соседям, как будто её мы ещё не видели.
Смысл по-пацански: экзамен честный, только если билет не видел заранее. Каждую точку прячем, угадываем по остальным, считаем промахи. Какое окно меньше всех мажет — то и берём.
Для данных из примера 2 у Лагутина был подсчитан ряд значений :
| 0,05 | 0,10 | 0,15 | 0,20 | 0,25 | 0,30 | 0,35 | 0,40 | 0,45 | 0,50 | |
|---|---|---|---|---|---|---|---|---|---|---|
| 51,0 | 46,6 | 47,3 | 47,6 | 47,5 | 47,2 | 47,7 | 48,3 | 48,7 | 49,1 |
Заметим, что имеет два локальных минимума: при и . Уточним оптимальное значение , проводя вычисления по сетке с меньшим шагом:
| 0,05 | 0,06 | 0,07 | 0,08 | 0,09 | 0,10 | 0,11 | 0,12 | 0,13 | 0,14 | 0,15 | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 51,0 | 48,7 | 47,4 | 46,7 | 46,4 | 46,6 | 46,7 | 46,7 | 46,8 | 47,1 | 47,3 |
Таким образом, с точностью до 0,01 функция имеет глобальный минимум при .
По кирпичикам: два минимума — не случайность. Малое окно () — это ширина горба, при нём горб «виден». Большое () горб уже размазывает, зато хорошо ловит линейный тренд . Сумма у обоих близка, поэтому и нужна мелкая сетка. Заметим также, что — близко к , как и должно быть: предсказать сам шум не может никто.
Посчитай сам — вот кросс-проверка Надарая — Ватсона на модельных данных примера 2 (свой генератор шума, поэтому числа не совпадут с таблицей Лагутина один в один; зерно 67 даёт оптимум и — попробуй другие зёрна, и окно поплывёт):
Окно по ближайшим соседям
Альтернативным методом, применяемым в случае, когда располагаются очень неравномерно («где пусто, а где густо»), является модификация ядерной оценки, у которой зависит от . В качестве такого часто берут расстояние от точки до её -го (в смысле близости к ) соседа . Значение параметра () задаётся исследователем.
По кирпичикам: при постоянном окне в густой области в окно влезает много точек (дисперсия мала, можно было бы и сузить), а в пустой — мало или ни одной (оценка скачет или вообще не определена: в (11)). Окно «до -го соседа» в любой точке содержит ровно наблюдений — дисперсия везде примерно одинакова.
Смысл по-пацански: в толпе спрашиваешь пятерых ближайших — они в шаге от тебя. В степи пятеро ближайших — за километр. Не фиксируй расстояние, фиксируй число людей, которых опрашиваешь.
Устойчивое сглаживание и LOWESS
В заключение главы обсудим проблему уменьшения влияния выделяющихся наблюдений («выбросов») на ядерные оценки кривой регрессии. К сожалению, локальное усреднение, осуществляемое этими оценками, имеет неограниченную возможность реагировать на «выбросы».
Например, график оценки в правой половине рис. 4 у Лагутина особенно извилист из-за необходимости компенсировать квадраты остатков в точках с большими значениями ошибок (таких, как и ).
Смысл по-пацански: взвешенное среднее — это всё ещё среднее. Один горлопан в окне перекрикивает всех соседей, и кривая к нему тянется. Как и в гл. 21 с МНК: квадраты невязок наказывают выбросы так сильно, что оценка ради них прогибается.
Повышение устойчивости сглаживания может быть достигнуто за счёт уменьшения весов наблюдений с большими невязками. Кливленд (Cleveland W. S., 1979) предложил следующий простой алгоритм, реализующий эту идею. Процедура начинается с вычисления пробной оценки, итеративно пересчитываются веса и несколько раз производится повторное сглаживание.
Алгоритм LOWESS (модификация для -мерных предикторных переменных )
(В оригинале LOcally WEighted Scatter plot Smoothing — локально взвешенное сглаживание диаграммы рассеяния.)
- Задаётся (). Для каждого вычисляется расстояние до -го соседа в и по формуле (9) определяется соответствующий вес . Веса всех наблюдений запоминаются в массиве.
- В окрестности каждой точки строится локальная линейная аппроксимация поверхности регрессии на основе взвешенного метода наименьших квадратов (см. §5 гл. 21) путём минимизации по функции
- Используя оценки невязок , вычисляется выборочная медиана (оценка масштаба) и определяются коэффициенты устойчивости , где — квартическое ядро.
- Строится локальная линейная аппроксимация, как в пункте 2, но с весами .
- Пункты 3 и 4 повторяются до стабилизации величин .
По кирпичикам:
- Шаг 2 вместо константы подгоняет прямую. Локальная прямая лучше локальной константы у краёв данных: у края все соседи лежат с одной стороны, и среднее «съезжает» внутрь, а прямая продолжает наклон.
- Шаг 3 — медиана, а не среднее. Масштаб невязок оценивается устойчиво: выбросы не раздувают .
- Порог . Медиана для нормального шума , так что . Точка с невязкой больше получает — выкинута совсем; с невязкой около — вес примерно от нормального (в нашей реализации ещё делится на , чтобы «нормальная» точка имела вес 1).
- Шаг 4 — тот же взвешенный МНК, но выбросам веса срезаны.
Смысл по-пацански: сперва сгладил как получится. Потом посмотрел, кто от кривой дальше всех, — и понизил тому голос. Сгладил заново. Ещё раз проверил. Через пару кругов горлопаны молчат, а кривая идёт по нормальным пацанам.
Пример 4. LOWESS на зашумлённой прямой
У Лагутина (по Хардле) показано применение алгоритма LOWESS к моделированным данным. Точки генерировались в соответствии с моделью (), , . Кривой регрессии является прямая с малым коэффициентом наклона, причём дисперсия ошибок настолько велика, что систематический прирост при увеличении (так называемый тренд) почти не заметен из-за интенсивного «шума».
Для , и (т. е. локальная прямая со свободным членом) на рис. 6 у Лагутина представлен также результат сглаживания после двух итераций алгоритма. Построенная оценка уверенно игнорирует «выбросы», расположенные вблизи границ рисунка, и довольно точно воспроизводит теоретический линейный тренд.
По кирпичикам: за всю выборку вырастает в среднем лишь на — ровно одно стандартное отклонение шума. Тренд в одну сигму на всём диапазоне глазом почти не ловится.
В виджете — своя модельная выборка (с четырьмя подсаженными выбросами у краёв): сравни простую локальную прямую и LOWESS после 1–3 итераций.
Сам алгоритм в 40 строк — без numpy, для (локальная прямая):
Смысл по-пацански: итерация 0 — обычная локальная прямая, у краёв её утаскивают выбросы. После робастификации выбросы получают веса, близкие к нулю, и кривая ложится на тренд.