Тема 5. Регрессия
В теме 4 мы разобрали задачу классификации — предсказание меток из конечного множества. Сейчас рассмотрим зеркальный по форме, но содержательно отличающийся класс задач: предсказание непрерывной величины. Регрессия — самый изученный раздел статистического обучения; именно с неё, исторически и педагогически, начинается обучение с учителем. На её материале удобно ввести понятия, которые в более сложных моделях остаются скрытыми за инженерным аппаратом: геометрию метода наименьших квадратов, смысл регуляризации, диагностику остатков.
Курс ориентирован на инженеров интернета вещей, и регрессия здесь — рабочий инструмент. Калибровка сенсоров, восстановление пропусков в телеметрии, оценка ресурса батареи, прогноз нагрузки на канал связи — все эти задачи в простейшей постановке сводятся к регрессии. Поэтому мы пройдём её не как абстрактную статистическую процедуру, а как способ получения практически полезных предсказаний, понимая ограничения и сценарии отказа.
Задача регрессии
Постановка задачи
В рамках регрессии задача обучения с учителем формулируется так. Имеется выборка , где — вектор признаков, а — наблюдаемая непрерывная величина. Требуется построить функцию , минимизирующую ожидаемые потери на новых данных из того же распределения. Типичный выбор функции потерь — квадратичная , чему мы посвятим основное внимание; альтернативы (абсолютная, Хьюбера) рассмотрим в разделе про метрики.
Принципиальное отличие от классификации лежит не в алгоритмическом аппарате, а в характере выходного пространства. Метка класса дискретна: между «спам» и «не спам» нет промежуточных значений, и ошибка либо есть, либо нет. Непрерывная переменная упорядочена и метризована: предсказание 102 при истинной 100 — на порядок лучше, чем 200, и именно эта градация ошибки структурирует всю задачу. Отсюда естественность квадратичной потери: она наказывает большие отклонения сильнее малых, что согласуется с практическим восприятием качества прогноза.
Часто из этой же постановки выводят и второе отличие: в классификации мы оцениваем дискретное событие, а в регрессии — числовую величину, у которой есть единицы измерения. Это влечёт прозаическое, но важное практическое следствие: метрика качества имеет тот же физический смысл, что и предсказываемая величина. Ошибка модели по температуре измеряется в градусах, по цене — в рублях, по току потребления — в миллиамперах. Возможность интерпретировать значение метрики напрямую — большое преимущество регрессии перед классификацией, где «accuracy 0.93» сама по себе ни о чём не говорит без контекста.
Прикладных задач регрессии, релевантных для интернета вещей и встраиваемых систем, немало. Калибровка датчика (англ. sensor calibration): по сырым показаниям АЦП и температуре окружающей среды восстановить истинное физическое значение измеряемой величины — давления, концентрации газа, силы тока. Восстановление пропусков в потоке телеметрии: если соседние пакеты пришли, а текущий потерян, по контексту оценивается пропущенное значение. Прогноз срока службы литий-ионной батареи: по истории циклов заряда-разряда, температуре эксплуатации и текущему сопротивлению предсказать остаточную ёмкость. Прогноз энергопотребления узла на следующий час по графику активности и расписанию задач. Оценка ослабления сигнала в канале радиосвязи как функция расстояния, рельефа и плотности застройки — классическая задача планирования покрытия.
Не всякая численная зависимость — задача регрессии в обсуждаемом смысле. Если связь между и выводится из физического закона аналитически (например, из формулы Стокса для оседающей частицы), модель строить не нужно — нужно подставить значения. Регрессия становится осмысленной, когда зависимость либо неизвестна, либо настолько сложна, что эмпирическая аппроксимация по данным дешевле и точнее, чем явная физическая модель.
Методы регрессии
Линейная регрессия
Простейшая, и при этом самая полезная как точка отсчёта, модель регрессии — линейная. Положим Параметрами модели служат свободный член и вектор коэффициентов . Модель утверждает, что ожидаемое значение при фиксированных значениях признаков складывается из вкладов каждого признака, взятых с собственными весами. Эта структура — линейная комбинация — настолько проста, что коэффициенты допускают прямую интерпретацию: показывает, на сколько в среднем изменится при единичном изменении при неизменных остальных признаках.
Подбор коэффициентов осуществляется методом наименьших квадратов (англ. ordinary least squares, OLS): минимизируется сумма квадратов отклонений предсказаний от наблюдений
Если ввести расширенную матрицу признаков , в первом столбце которой стоят единицы (для свободного члена), и вектор откликов , задача принимает компактный вид . Дифференцируя по и приравнивая нулю, получаем нормальные уравнения , а при невырожденности — замкнутую формулу
Существование явного решения отличает OLS от подавляющего большинства методов машинного обучения, где параметры подбираются итеративно. Это не означает, что в реальных библиотеках формула применяется напрямую: численно устойчивые реализации (в scikit-learn, statsmodels) опираются на QR- или SVD-разложение матрицы , что позволяет избежать обращения возможно плохо обусловленной матрицы.
Геометрическая интерпретация даёт ещё один взгляд на ту же задачу. Столбцы матрицы порождают подпространство в — линейные комбинации признаков. Метод наименьших квадратов проецирует вектор откликов на это подпространство; предсказание — ближайшая к точка подпространства в евклидовой метрике, а вектор остатков ортогонален всем столбцам . В пространстве признаков (другая, более привычная картина) гиперплоскость проходит сквозь облако точек так, чтобы суммарный квадрат вертикальных отклонений был минимален. Иллюстрация для одномерного случая показана ниже.
За простотой линейной модели стоит набор теоретических допущений, выполнение которых превращает OLS в оптимальную оценку (теорема Гаусса—Маркова), а нарушение — в источник систематических ошибок. Перечислим их и обозначим практические последствия.
Линейность связи — само ядро модели: предполагается, что условное среднее есть линейная функция признаков. Если истинная зависимость существенно нелинейна, линейная модель даст высокое смещение независимо от размера выборки. Распространённый приём — введение нелинейных преобразований признаков (квадраты, логарифмы, перекрёстные произведения) — формально оставляет модель линейной по параметрам, но линейной по новым признакам.
Независимость наблюдений. Метод предполагает, что объекты выборки не связаны между собой. Для временных рядов и пространственных данных это допущение нарушается: соседние во времени или в пространстве наблюдения скоррелированы, что приводит к недооценке стандартных ошибок коэффициентов. В таких задачах применяют либо специализированные модели (авторегрессионные, геостатистические), либо корректируют ковариационную матрицу оценок.
Гомоскедастичность (англ. homoscedasticity) — постоянство дисперсии остатков. Если дисперсия ошибки растёт с величиной предсказываемой переменной (типичная ситуация для цен, доходов, концентраций), оценки коэффициентов остаются несмещёнными, но перестают быть эффективными, а доверительные интервалы становятся некорректными. Симптомы и диагностику гетероскедастичности мы разберём в разделе про анализ остатков.
Нормальность ошибок. Для несмещённости и состоятельности оценок нормальность не нужна — она требуется только для построения точных доверительных интервалов и проверки гипотез о значимости коэффициентов в малых выборках. При в сотни и тысячи центральная предельная теорема обеспечивает асимптотическую нормальность оценок и без этого допущения.
Отсутствие мультиколлинеарности. Если столбцы матрицы почти линейно зависимы, становится плохо обусловленной: её определитель близок к нулю, обращение численно неустойчиво, а коэффициенты — высоковариативны и сильно меняются при малых изменениях данных. К этому случаю мы переходим в следующем разделе.
Полное обоснование оптимальности OLS и подробный разбор допущений — в @hastie2009esl, гл. 3 и @james2013isl, гл. 3. На нашем уровне достаточно запомнить, что линейная регрессия — рабочая модель в широком классе задач, но её результаты осмыслены только при критической оценке выполнения допущений.
Регуляризованные модели
Обозначенная выше мультиколлинеарность (англ. multicollinearity) — типичная болезнь линейных моделей с большим числом признаков, особенно в инженерных задачах, где признаки часто получаются из одного и того же физического процесса и сильно скоррелированы (например, температура датчика, температура корпуса и температура окружающей среды). Симптомы: коэффициенты принимают неоправданно большие значения противоположных знаков, при добавлении или исключении одной точки модель меняется радикально, новая обучающая выборка даёт совершенно иные коэффициенты при той же качественной картине. Корень проблемы — в матрице : её собственные числа близки к нулю, и решение нормальных уравнений усиливает шум данных.
Сопутствующая беда — переобучение: при достаточно большом , особенно при или , OLS подгоняет шум обучающей выборки, и качество на новых данных катастрофически падает. Как было показано в теме 3, эта ситуация — крайнее правое плечо U-образной кривой ошибки от сложности.
Общий рецепт борьбы с обоими явлениями — регуляризация: к функции потерь добавляется штраф за величину коэффициентов. Конкретный вид штрафа порождает разные модели.
Ridge-регрессия (англ. ridge regression) 1 использует квадратичный штраф: Параметр управляет силой регуляризации: при получаем OLS, при все коэффициенты стягиваются к нулю. Для центрированных признаков существует замкнутая формула — её часто называют «лекарством Хёрла»: добавление к снимает плохую обусловленность ценой смещения оценки. Метод предложен Хёрлом и Кеннардом в 1970 году именно как ответ на мультиколлинеарность; за полвека он превратился в инструмент общего назначения.
Lasso-регрессия (англ. least absolute shrinkage and selection operator) 2 использует штраф по -норме: Замкнутого решения здесь нет — задача негладкая в нуле, — но существуют эффективные алгоритмы (координатный спуск, LARS), реализованные во всех современных библиотеках. Принципиальное отличие от ridge — разреженность (англ. sparsity) решения: при достаточно большом часть коэффициентов обращается в точный ноль, а соответствующие признаки автоматически исключаются из модели. Lasso, таким образом, совмещает регуляризацию с отбором признаков (англ. feature selection), что особенно ценно в высокоразмерных задачах: модель не только лучше обобщает, но и оказывается короче в записи и интерпретации.
Геометрически разница между ridge и lasso объясняется формой области ограничения. Эквивалентная формулировка задачи — минимизация RSS при ограничении , где для ridge и для lasso. Множество, заданное -нормой, — шар (круг в двумерии); множество -нормы — кубоктаэдр (ромб). Линии уровня RSS — эллипсы, центрированные в OLS-решении; точка касания эллипса с ограничением и даёт регуляризованное решение. Угловые точки -ромба лежат на координатных осях, и касание чаще всего происходит именно в них — соответствующие зануляются. Сферическая -граница углов не имеет, и зануление невозможно: коэффициенты лишь стягиваются к нулю, не достигая его.
Elastic Net 3 комбинирует оба штрафа: Метод сохраняет разреженность lasso и устойчивость ridge к коррелированным признакам. Lasso в группе сильно коррелированных переменных склонен выбирать одну случайную и зануление остальных; elastic net в той же ситуации распределяет коэффициенты между ними. Для большинства инженерных задач, где коррелированные признаки возникают естественно, elastic net надёжнее «чистого» lasso.
Выбор коэффициента регуляризации (в scikit-learn — параметр alpha) — отдельная задача. Слишком малое значение оставляет проблемы OLS нерешёнными, слишком большое — занижает все коэффициенты, превращая модель в близкую к нулевой. Стандартный приём — кросс-валидация (англ. cross-validation): на сетке значений модель многократно обучается на части данных и проверяется на оставшейся, после чего выбирается то , при котором средняя ошибка на валидационных частях минимальна. Систематическое обсуждение кросс-валидации мы вынесем в тему 7, посвящённую методам оценки качества; на данный момент достаточно понимать, что — гиперпараметр, и подбирается он на отдельной выборке, а не на обучающей.
Полезно посмотреть на то, как меняются коэффициенты модели при варьировании — так называемый путь регуляризации (англ. regularization path). У ridge все коэффициенты плавно стягиваются к нулю, не достигая его до . У lasso коэффициенты «выключаются» в дискретные моменты, образуя ломаную линию: при увеличении всё больше признаков отбрасываются.
Регуляризация изменяет смысл коэффициентов: они больше не являются несмещёнными оценками влияния признаков. Это плата за устойчивость и качество предсказаний. Если задача — именно интерпретация коэффициентов как причинных эффектов (что характерно для статистики и эконометрики, но в машинном обучении встречается реже), регуляризация требует осторожной интерпретации. Если задача — предсказание на новых данных, регуляризованные модели почти всегда выигрывают у «чистого» OLS, особенно при большом .
Оценка качества регрессионных моделей
Метрики
Оценка предсказательной способности модели регрессии опирается на несколько стандартных метрик, каждая из которых высвечивает свою сторону ошибки. Важно использовать их в комплексе и понимать, в каких задачах какая ведущая.
Среднеквадратичная ошибка (англ. mean squared error, MSE) определяется как среднее квадратов отклонений: Это та же величина, которая минимизируется при обучении OLS, и в этом смысле — естественная метрика для линейной регрессии. У MSE есть содержательное теоретическое свойство: её оптимизирует условное математическое ожидание . То есть модель, обучаемая минимизацией MSE, стремится предсказывать именно среднее значение отклика. Недостаток MSE — её единицы измерения: квадрат единиц предсказываемой величины. Для прогноза температуры в градусах MSE измеряется в градусах в квадрате, что неинтуитивно.
Эту проблему снимает корень из MSE (англ. root mean squared error, RMSE): RMSE возвращается в единицы предсказываемой величины и интерпретируется как типичная величина ошибки. Если для прогноза заряда батареи RMSE равен 3%, мы понимаем порядок отклонения. RMSE — фактический стандарт отчётности в инженерных регрессионных задачах.
Средняя абсолютная ошибка (англ. mean absolute error, MAE) использует модули вместо квадратов: Ключевое отличие от MSE и RMSE — степенная зависимость от величины ошибки. MSE «тянет» сильно за большие отклонения: ошибка в 10 единиц вносит вклад 100, ошибка в 100 — вклад 10 000. MAE наказывает все ошибки линейно. Из этого вытекает разная чувствительность к выбросам: одна аномальная точка с большой ошибкой может удвоить MSE, но MAE сдвинет несущественно. В практических терминах — если задача такова, что крупные ошибки катастрофичны (промышленный сенсор, авионика), MSE/RMSE предпочтительнее, потому что метрика «вознаграждает» модель за устранение хвостовых отклонений. Если задача такова, что в данных есть выбросы, не отражающие типичное поведение, и нас интересует медианное качество — выигрывает MAE.
Глубже эта же разница проявляется в том, какую центральную тенденцию минимизирует каждая метрика: MSE — среднее, MAE — медиану. Это не идиоматическое замечание, а строгий факт: , тогда как . Модель, обученная минимизацией MAE, систематически смещена к медианному предсказанию; модель, обученная минимизацией MSE, — к среднему.
Коэффициент детерминации (англ. coefficient of determination) измеряет долю дисперсии целевой переменной, которую объясняет модель: В числителе — RSS модели, в знаменателе — RSS тривиального предсказателя (среднее ). означает идеальное предсказание; — модель работает не лучше предсказания константой . На тестовой выборке может быть и отрицательным: тогда модель хуже тривиального baseline. Этот факт регулярно удивляет — в учебниках часто описывают как «всегда от 0 до 1», что справедливо лишь для обучающей выборки в OLS. На тестовых данных или для нелинейных моделей нижней границы нет.
Преимущество — безразмерность и интерпретируемость в долях. «Модель объясняет 87% дисперсии» — формулировка, доступная неспециалисту. Недостаток — зависимость от дисперсии целевой переменной: при малой дисперсии даже хорошая в абсолютных единицах модель даст низкий , при высокой дисперсии — плохая модель может выглядеть прилично.
В каких случаях какую метрику предпочесть. Для отчётности и сравнения моделей на одних и тех же данных — RMSE, как сочетающая обоснованность с интерпретируемостью в единицах задачи. Для устойчивости к выбросам — MAE. Для содержательной интерпретации в долях — . Полезно сообщать сразу несколько: расхождение между RMSE и MAE сигнализирует о наличии выбросов или скошенности распределения ошибок и подталкивает к их анализу.
Особняком стоят метрики для случаев со специальной структурой задачи. Mean absolute percentage error (MAPE) — относительная ошибка в процентах от истинного значения; применима, когда всегда положительны и далеки от нуля. Logcosh-loss — гладкая аппроксимация MAE, удобная для оптимизации. Loss Хьюбера (англ. Huber loss) ведёт себя как MSE на малых ошибках и как MAE на больших, объединяя свойства обеих; используется как робастная альтернатива MSE при обучении.
Анализ остатков
Метрики дают одно число и тем самым прячут структуру ошибок. Модель с RMSE 5 °C может ошибаться равномерно по всему диапазону или сильно врать только в жаркие дни — метрика этого не покажет. Поэтому полноценная оценка регрессионной модели включает анализ остатков (англ. residual analysis).
Остаток в точке — это разница между наблюдением и предсказанием: . Если линейная модель адекватно описывает данные, остатки должны вести себя как реализации случайного шума с нулевым средним, постоянной дисперсией и независимостью между собой. Любое систематическое отклонение от этой картины — диагностический сигнал.
Самый информативный график — диаграмма остатков от предсказаний (англ. residuals vs fitted). По горизонтали откладываются предсказанные значения , по вертикали — остатки . Идеальная картина — облако точек без структуры вокруг горизонтальной нулевой линии. Содержательные нарушения сводятся к двум типичным паттернам.
Первый — видимая нелинейность: остатки образуют дугу, синусоиду или иную явно неслучайную форму. Это означает, что линейная модель пропустила нелинейный компонент зависимости; нужны нелинейные преобразования признаков либо переход к иной модели.
Второй — гетероскедастичность (англ. heteroscedasticity): разброс остатков растёт (или, реже, убывает) с величиной . Графически — характерный «рупор» или «галстук-бабочка». Это нарушение допущения о постоянстве дисперсии, и его последствия мы обсуждали выше: оценки коэффициентов остаются несмещёнными, но доверительные интервалы становятся некорректными, а прогноз для высоких значений — менее надёжным, чем для низких. Стандартные приёмы коррекции — преобразование целевой переменной (например, при экспоненциальном росте дисперсии), либо переход к взвешенному методу наименьших квадратов, либо использование робастных оценок ковариационной матрицы.
Второй стандартный график — Q-Q plot (англ. quantile-quantile plot) остатков. По одной оси откладываются эмпирические квантили остатков, по другой — теоретические квантили нормального распределения с теми же средним и дисперсией. Если остатки нормально распределены, точки ложатся на прямую . Систематические отклонения — особенно на хвостах — указывают на тяжёлые хвосты распределения (выбросы), скошенность или мультимодальность. Для крупных выборок строгая нормальность не нужна, но Q-Q plot всё равно полезен как способ обнаружения аномальных точек.
Помимо двух базовых графиков, в практической литературе 4 описывают расширенный набор: график остатков от каждого отдельного признака (для выявления нелинейности по конкретной переменной), графики масштабированных остатков (англ. scale-location) для уточнения характера гетероскедастичности, диаграмма влияния (англ. leverage) для обнаружения объектов, аномально сильно влияющих на оценку коэффициентов. В лабораторной работе мы ограничимся базовыми графиками; этого достаточно для распознавания основных проблем модели.
Диагностика остатков — обязательная часть отчёта о регрессионном моделировании. Метрика без диагностики говорит «насколько хорошо в среднем»; диагностика — «где и в чём модель ошибается систематически». Только их сочетание позволяет принять обоснованное решение о пригодности модели к эксплуатации.
Литература
- Hoerl A. E., Kennard R. W. Ridge Regression: Biased Estimation for Nonorthogonal Problems. — Technometrics, 1970, С. 55–67, DOI: 10.1080/00401706.1970.10488634.
- Tibshirani R. Regression Shrinkage and Selection via the Lasso. — Journal of the Royal Statistical Society. Series B (Methodological), 1996, С. 267–288, DOI: 10.1111/j.2517-6161.1996.tb02080.x.
- Zou H., Hastie T. Regularization and Variable Selection via the Elastic Net. — Journal of the Royal Statistical Society. Series B (Statistical Methodology), 2005, С. 301–320, DOI: 10.1111/j.1467-9868.2005.00503.x.
- James G., Witten D., Hastie T., Tibshirani R. An Introduction to Statistical Learning: with Applications in R. — Springer, 2013, DOI: 10.1007/978-1-4614-7138-7.