Menu

Прямая наилучшего приближения

Через любое облако точек проходит ровно одна прямая, которая промахивается мимо них меньше всех, если мерить методом наименьших квадратов. Подвигайте точки, и она сдвинется, чтобы оставаться лучшей.

Автор: Nethanel Bar, Сооснователь и генеральный директор

Обновлено

Нанесите на график любые реальные данные, и точки откажутся лежать на одной прямой. Через облако всё равно можно провести прямую, передающую тренд, но разные люди с линейками проведут немного разные. Прямая наилучшего приближения решает спор: есть одна прямая, лучшая по точной мере, и формула, которая её находит.

Перетащите любую точку ниже, и прямая сдвинется, чтобы оставаться наилучшей. Оттащите точку далеко от остальных и заметьте, как сильно она тянет прямую к себе.

y = x + 1угловой коэффициент1свободный член1

Перетащите любую точку, и прямая сдвинется, чтобы оставаться наилучшей. Сильнее всего её тянут точки, далёкие от остальных.

Что значит «наилучшая»

Прямая промахивается мимо каждой точки на вертикальное расстояние: фактическое y точки минус y, которое прямая предсказывает при этом x. Это расстояние называется остатком точки. Хорошая прямая должна делать остатки маленькими, но просто сложить их нельзя: промахи выше прямой положительны, промахи ниже отрицательны, и они взаимно уничтожаются.

Поэтому каждый остаток сначала возводят в квадрат: так учитывается каждый промах, а большой промах весит намного больше маленького. Прямая наилучшего приближения делает сумму квадратов остатков настолько маленькой, насколько это возможно. Поэтому её называют прямой наименьших квадратов, и для любого набора точек, у которого не все x одинаковы, она ровно одна.

Две формулы

Запишем прямую как y = mx + b, а средние данных обозначим x̄ и ȳ. Минимизация суммы квадратов сразу даёт угловой коэффициент и свободный член:

m = Σ(x - x̄)(y - ȳ) / Σ(x - x̄)²

b = ȳ - m x̄

В числителе формулы углового коэффициента стоит та же сумма произведений, что и в числителе коэффициента корреляции, поэтому у углового коэффициента и r всегда одинаковый знак. Знаменатель зависит только от x: он измеряет, насколько разбросаны значения x.

Разобранный пример

Пять точек: x = 2, 4, 6, 8, 10 и y = 3, 7, 8, 12, 15. Среднее x равно 6, среднее y равно 9.

xyx - 6y - 9произведение(x - 6)²
23-4-62416
47-2-244
680-100
8122364
1015462416
сумма5840

Угловой коэффициент m = 58/40 = 29/20, то есть 1,45. Чтобы найти свободный член, подставьте точку средних в уравнение прямой и найдите b:

Значит, b = 3/10, и прямая наилучшего приближения y = 1.45x + 0.3. Калькулятор линейной регрессии делает то же самое по формулам с накопленными суммами и показывает каждую сумму.

Она всегда проходит через точку средних

Преобразуйте формулу свободного члена, и получите ȳ = m x̄ + b. Это значит, что точка (x̄, ȳ) лежит ровно на прямой, какими бы ни были данные. В примере 1,45 × 6 + 0,3 = 9.

Это полезная проверка для любой вычисленной прямой и полезное начало, когда проводите её на глаз: сначала отметьте точку средних, затем поворачивайте линейку вокруг неё, пока точки не уравновесятся с обеих сторон.

Но одного прохождения через точку средних мало. Для x = 1, 2, 3, 4, 5 и y = 2, 4, 5, 4, 5 точка средних равна (3, 4), а прямая наименьших квадратов y = 0.6x + 2.2, сумма квадратов остатков 2,4. Прямые y = 0.5x + 2.5 и y = x + 1 тоже проходят через (3, 4), и их суммы квадратов равны 2,5 и 4. Из всех прямых через эту точку только угловой коэффициент 0,6 опускает сумму до 2,4.

Прогноз по прямой

Когда прямая есть, прогноз сводится к подстановке. При y = 1.45x + 0.3 значение x = 7 даёт 1,45 × 7 + 0,3 = 10,45.

Такой прогноз является интерполяцией: 7 лежит внутри данных, между точками при 6 и 8, так что с обеих сторон есть свидетельства, что тренд там сохраняется. Прогноз за пределами диапазона данных является экстраполяцией, и ничто в данных её не подкрепляет.

Конкретный случай. Шесть учеников готовились от 1 до 6 часов и набрали 52, 58, 61, 67, 70 и 76 баллов. Прямая наилучшего приближения y = 162/35x + 47.8, угловой коэффициент около 4,63 балла за час, при r ≈ 0,9959. Внутри данных она предсказывает хорошо: 4,5 часа дают около 68,63. Экстраполируйте на 12 часов, и она предскажет около 103,34 в тесте из 100 баллов. С прямой всё в порядке; просто описываемый ею тренд где-то за пределами данных заканчивается, и прямая не может знать где.

Когда прямая не та форма

Прямая наилучшего приближения существует всегда, даже когда прямая является неправильной моделью. У квадратов 0, 1, 4, 9, 16, 25 при x от 0 до 5 прямая наилучшего приближения y = 5x - 10/3 при r ≈ 0,9599, что звучит отлично, и всё же точки лежат на кривой. Её выдают остатки: положительные на обоих концах и отрицательные в середине. Страница про остатки показывает, как читать такую картину, а калькулятор квадратичной регрессии вместо прямой находит кривую.

Попробуйте сами

Фактическая точка при x = 4 равна (4, 7), так что прямая промахивается мимо неё на 0,9. Этот промах и есть остаток точки, а сумма квадратов всех пяти промахов, 1,9, меньше, чем может дать любая другая прямая для этих точек.

Частые вопросы

Что такое прямая наилучшего приближения?
Прямая, проведённая через диаграмму рассеяния, чтобы кратко описать тренд точек. В точном смысле прямая наилучшего приближения есть прямая регрессии по методу наименьших квадратов: из всех возможных прямых та, у которой вертикальные промахи мимо точек, возведённые в квадрат и сложенные, дают наименьшую сумму.
Как найти прямую наилучшего приближения?
Найдите среднее x и среднее y. Угловой коэффициент равен сумме произведений (x минус среднее x) на (y минус среднее y), делённой на сумму квадратов (x минус среднее x). Свободный член равен среднему y минус угловой коэффициент, умноженный на среднее x. Для x = 2, 4, 6, 8, 10 и y = 3, 7, 8, 12, 15 получается угловой коэффициент 58/40 = 1,45 и свободный член 9 минус 1,45 × 6 = 0,3, то есть y = 1,45x + 0,3.
Должна ли прямая наилучшего приближения проходить через начало координат?
Нет. Она проходит через точку средних, а не через начало координат. Прямая, принудительно проведённая через (0, 0), является другой моделью; её используют, только когда есть причина, по которой y обязан быть 0 при x = 0, и обычно она хуже подходит к точкам.
Должна ли прямая наилучшего приближения проходить через какие-то из точек?
Нет, и обычно она не проходит ни через одну. Единственная точка, через которую она проходит всегда, это (среднее x, среднее y), и часто это вовсе не одна из точек данных. Прямая, проведённая так, чтобы задеть как можно больше точек, не является прямой наименьших квадратов.
Чем интерполяция отличается от экстраполяции?
Интерполяция означает прогноз y для x внутри диапазона данных, где прямую поддерживают точки с обеих сторон. Экстраполяция означает прогноз за пределами этого диапазона, где ничто в данных не говорит, что тренд продолжается. При хорошем приближении интерполяции обычно можно доверять; экстраполяция может сильно ошибаться даже при r, близком к 1.
Прямая наилучшего приближения и линейная регрессия одно и то же?
Да, в обычном смысле. Линейная регрессия является методом, а прямая наименьших квадратов, которую он даёт, и есть прямая наилучшего приближения. В школе линию тренда, проведённую на графике на глаз, тоже так называют, но она лишь оценка прямой регрессии, а не сама прямая.

Связанные идеи

Иллюстрация языков программирования Coddy

Изучайте математику с Coddy

НАЧАТЬ