МНК и нормальные уравнения: линейная алгебра подгонки прямой
Три точки, прямой не хватает: метод наименьших квадратов через проекцию, вывод нормальных уравнений AᵀAx = Aᵀb и расчёт подгонки по точкам до дробей.
Задача, в которой нет ни одного лишнего числа: по точкам , , провести прямую . Попробуйте — и быстро упрётесь в невозможное: прямая по двум точкам определяется однозначно, третья почти всегда мимо. Пусть измерения содержат погрешность — тогда честная постановка другая: найти прямую, для которой сумма квадратов вертикальных отклонений минимальна. Это и есть метод наименьших квадратов (МНК), и решается он не перебором, а двумя матричными строками — нормальными уравнениями. Заодно увидите, что весь метод — это знакомая ортогональная проекция в новой одежде.
Переопределённая система: решения нет, задача есть#
Запишем требование «точка лежит на прямой» для каждой точки: , , . Три уравнения, две неизвестных — система переопределённая. В матричном виде:
Точного решения у такой системы, как правило, нет: столбец не лежит в плоскости, натянутой на столбцы . Зато можно искать наилучшее приближение — вектор , ближайший к , то есть минимизирующий длину невязки :
Почему квадраты, а не модули или просто сумма? Три причины: квадрат сглаживает функцию (можно дифференцировать), штрафует крупные отклонения сильнее мелких и — что приятнее всего — задача распадается в чистую линейную алгебру, без численных итераций. Ответ будет точным, за один проход.
Нормальные уравнения: два вывода#
Геометрический вывод. Вектор при переборе всех пробегает пространство столбцов — плоскость. Минимизируемая величина — квадрат расстояния от до этой плоскости, а достигается минимум в проекции на неё. Проекция узнаётся по невязке: она обязана быть перпендикулярна всей плоскости, то есть обоим столбцам . Два условия перпендикулярности и собираются в одно матричное равенство:
Аналитический вывод даёт то же самое честным дифференцированием: берём частные производные по и по , приравниваем к нулю — и после группировки слагаемых получаем в точности . Совпадение двух выводов — красивое подтверждение: минимум суммы квадратов — это проекция, просто увиденная со стороны вычислений. Свойства ортогональности невязки разобраны в уроке про евклидовы пространства.
Техническое замечание, которое экономит баллы: система может не иметь решений, но нормальная система имеет решение всегда. А если столбцы линейно независимы, то обратима и решение единственно — вот почему для МНК важно, чтобы признаки не дублировали друг друга. Проверяется это через ранг или определитель матрицы .
Пример по точкам: считаем до конца#
Возвращаемся к точкам , , . Матрицы уже выписаны выше. Считаем обе части нормальных уравнений — тут потребуется только умножение матриц:
Нормальная система: , . Определитель — решение единственно. Пройдите расчёт по шагам, каждая дробь здесь короткая:
Шаг второй — самое место для практики на аналогичной системе: механизм исключения тот же, что и в методе Гаусса, просто матрица двух на два. Нажимайте «Шаг» и следите за ведущим элементом:
Мост в статистику#
Решение нормальных уравнений можно выписать формулами, знакомыми по школьной «статистике». Для подгонки с свободным членом: наклон и сдвиг , где черта — среднее. Подставьте наши точки: , , числитель , знаменатель , итого и — те же значения, третьим независимым способом. Никакой магии: это та же линейная система, свёрнутая в формулы.
Отсюда же — язык корреляции и регрессии: наклон МНК-прямой выражается через коэффициент корреляции и выборочные дисперсии, а уравнение регрессии — та самая . Разница в интерпретации: линал говорит «проекция», статистика — «оценка связи»; математика одна.
Типовые ошибки#
- Минимизировать сумму отклонений без квадратов: положительные и отрицательные невязки взаимно гасятся, и «лучшей» окажется любая прямая с нулевой суммой. Квадраты обязательны.
- Перепутать порядок: нормальные уравнения — это , а не . Размеры подскажут: квадратная при двух неизвестных, — , не то.
- Забыть столбец единиц в : без него модель получится без свободного члена, , и ответ будет систематически сдвинут. Столбец единиц — часть конструкции.
- После решения не проверить невязки. Одна строка — сумма невязок ноль, сумма их квадратов минимальна — ловит арифметические промахи мгновенно.
Для точек , , матрица в нормальных уравнениях равна:
Сумма невязок в МНК-подгонке прямой со свободным членом:
Числовой сквозной пример: подгоним прямую по трём точкам , , . Матрица плана состоит из строк , вектор — из . Нормальные уравнения дают: , , откуда , . Проверка качества: прогнозы , , против фактических , , — каждая точка объяснена с ошибкой меньше . Именно эта механика, записанная один раз, переезжает в эконометрику и статистику практически без изменений.
Геометрический смысл вектора из МНК:
Частые вопросы
Что делать, если вырождена?
Значит, столбцы линейно зависимы — например, оба столбца признаков пропорциональны, или единичный столбец дублирует с нулевым разбросом. Решений становится бесконечно много, все с одинаковой суммой квадратов невязки. Лечится выбрасыванием лишнего признака либо регуляризацией — добавкой к .
МНК годится для нелинейных моделей?
Да, если модель линейна по параметрам. Полином ставится в ту же схему: столбцы — единицы, , , и нормальные уравнения работают как есть. А вот по параметрам нелинейна; её сначала линеаризуют логарифмом, потом применяют МНК — но с оговоркой, что минимизируются квадраты в новой шкале.
Почему нельзя просто минимизировать максимум отклонения?
Можно — это другая задача (минимакс, чебышёвское приближение), но она не дифференцируется и решается линейным программированием. Квадраты дают гладкую задачу с точным линейным ответом и удобной статистической интерпретацией — при независимых гауссовых помехах МНК-оценка совпадает с оценкой максимального правдоподобия.
Как связаны МНК и среднеквадратичное отклонение?
Прямо: делённая на сумма квадратов невязок (минус два параметра) — это выборочная оценка дисперсии шума вокруг прямой. Корень из неё — типичная ошибка прогноза. Так сумма квадратов из урока возвращается в статистику как фундамент для доверительных интервалов коэффициентов.
Куда дальше: симметричный сосед по курсу — графический метод линейного программирования, где тоже минимизируется функция на плоскости, но с ограничениями-неравенствами вместо квадратов. Систематическое применение МНК к данным — в уроке корреляция и регрессия; решать нормальные системы механически тренирует решатель Гаусса.
Готовитесь к контрольной?
Чеклист тем по «Линал»: что вы уже умеете, что повторить и в каком порядке.
Открыть чеклист предмета →
Проверьте себя в бою
Босс-экзамен по «Линал»: квизы всех уроков плюс бесконечный поток сгенерированных задач. Каждая попытка — новый расклад.
Начать босс-экзамен →