Квадратичная регрессия подбирает параболу, которая промахивается мимо точек меньше всех
Некоторые данные сначала растут, а потом падают, или сначала падают, а потом растут: высота брошенного мяча, прибыль при разных ценах, расход топлива машины на разных скоростях. Прямая через такие данные имеет неправильную форму, как её ни ставь. Квадратичная регрессия подбирает вместо неё параболу y = ax² + bx + c и выбирает a, b и c так, чтобы сумма квадратов вертикальных промахов от точек была как можно меньше. Это та же идея наименьших квадратов, что и в линейной регрессии, только с ещё одним коэффициентом.
Минимизация суммы квадратов промахов приводит к трём уравнениям относительно a, b и c, которые называют нормальными уравнениями; они составлены из сумм x, x², x³, x⁴, y, xy и x²y. Графический калькулятор решает их с плавающей точкой. Эта страница решает их точными дробями, поэтому коэффициент -8/7 печатается как -8/7, а не как -1,142857, и R² тоже получается точной дробью.
Прогноз и остаток для каждой точки перечислены под ответом. При хорошем квадратичном приближении остатки выглядят как шум: разбросаны выше и ниже нуля без закономерности. Если они всё ещё изгибаются или равномерно растут по таблице, парабола тоже не та форма, и стоит попробовать другую модель.
Что стоит заметить в параболе
Знак a задаёт форму: при отрицательном a ветви направлены вниз и есть наивысшая точка, при положительном a ветви направлены вверх и есть наинизшая точка.
Три точки с разными x всегда ложатся на параболу точно. Точки (1, 4), (2, 9) и (3, 20) лежат на y = 3x² - 4x + 5, все остатки равны 0, и о данных это ничего не говорит.
R² для параболы равен 1 минус сумма квадратов остатков, делённая на общий разброс y. Он никогда не бывает меньше r² прямой на тех же данных, потому что прямая является параболой с a = 0.
Вершина построенной кривой находится в x = -b/(2a). Для данных 2, 6, 11, 13, 12, 8 при x = 1 до 6 это x = 33/8, где кривая достигает максимума около 12,45.
Построенной кривой можно доверять только между наименьшим и наибольшим x. За краями парабола разворачивается и уходит к плюс или минус бесконечности, что бы ни делали данные.
Как выполнить квадратичную регрессию вручную
1
Найдите суммы
Для каждой точки вычислите x, x², x³, x⁴, y, xy и x²y, затем сложите каждый столбец и посчитайте точки. Для x = 0, 1, 2, 3 и y = 1, 2, 5, 11: n = 4, Σx = 6, Σx² = 14, Σx³ = 36, Σx⁴ = 98, Σy = 19, Σxy = 45 и Σx²y = 121.
Исключайте по одной букве, сохраняя дроби точными. Эта система даёт a = 1,25, b = -0,45 и c = 1,05, так что y = 1,25x² - 0,45x + 1,05.
4
Проверьте по остаткам
Подставьте каждое x в кривую и вычтите прогноз из фактического y. Здесь остатки равны -0,05; 0,15; -0,15 и 0,05, их квадраты в сумме дают 0,05, а R² = 1214/1215, около 0,9992.
Параболы регрессии для небольших наборов данных
Каждая строка содержит один набор данных, введённый в калькулятор выше, с точными коэффициентами и R², которые он выдаёт.
Значения x
Значения y
Парабола регрессии
R²
0, 1, 2, 3
1, 2, 5, 11
y = 1.25x² - 0.45x + 1.05
1214/1215 ≈ 0.9992
-2, -1, 0, 1, 2, 3
9, 4, 1, 0, 1, 4
y = x² - 2x + 1
1
1, 2, 3, 4, 5, 6
2, 6, 11, 13, 12, 8
y = -(8/7)x² + (66/7)x - 7
887/917 ≈ 0.9673
0, 1, 2, 3, 4
2, 17, 22, 17, 2
y = -5x² + 20x + 2
1
1, 2, 3
4, 9, 20
y = 3x² - 4x + 5
1
0, 1, 2, 3, 4, 5
0, 1, 4, 9, 16, 25
y = x²
1
Разобранные примеры
Близкое приближение с десятичными коэффициентами
plain
x: 0, 1, 2, 3; y: 1, 2, 5, 11
Нормальные уравнения дают a = 1,25, b = -0,45 и c = 1,05, так что y = 1,25x² - 0,45x + 1,05. Прогнозы равны 1,05; 1,85; 5,15 и 10,95, остатки -0,05; 0,15; -0,15 и 0,05, а R² = 1214/1215, около 0,9992.
Данные, которые растут и падают
plain
x: 1, 2, 3, 4, 5, 6; y: 2, 6, 11, 13, 12, 8
Парабола регрессии y = -(8/7)x² + (66/7)x - 7 при R² = 887/917, около 0,9673. Так как a отрицательно, у кривой есть максимум в x = 33/8 = 4,125 и y = 697/56, около 12,45. Прямая через те же точки достигает лишь r² = 375/917, около 0,4089, потому что не может развернуться.
Брошенный мяч
plain
x: 0, 1, 2, 3, 4; y: 2, 17, 22, 17, 2
Высота в метрах с интервалом в одну секунду. Приближение точное: y = -5x² + 20x + 2, все остатки равны 0, R² = 1. Число -5 равно половине ускорения свободного падения, округлённого до 10 м/с², 20 означает начальную скорость, а 2 начальную высоту. Максимум в x = 2, y = 22.
Точки, которые уже были параболой
plain
x: -2, -1, 0, 1, 2, 3; y: 9, 4, 1, 0, 1, 4
Это значения (x - 1)², и калькулятор возвращает y = x² - 2x + 1, ту же параболу с раскрытыми скобками, при R² = 1 и нулевых остатках. Так быстро проверяют, что набор значений действительно получен из одного квадратного трёхчлена.
Частые ошибки
Брать только три точки и считать R² = 1 отличным приближением. Любые три точки с разными x лежат на некоторой параболе.
Округлять суммы или коэффициенты посреди решения. Нормальные уравнения чувствительны, и небольшое округление в Σx⁴ может заметно сдвинуть c. Держите дроби до конца.
Ставить суммы в уравнения не на те места. В левом верхнем углу стоит Σx⁴, в правом нижнем n; в каждой следующей строке степени уменьшаются на единицу.
Делать прогноз далеко за пределами данных. За краями парабола разворачивается и уходит в бесконечность, делает ли это реальная величина или нет.
Выбирать параболу потому, что R² вырос. R² параболы всегда не меньше r² прямой на тех же данных; вопрос в том, исчезает ли закономерность в остатках.
Вопросы о квадратичной регрессии
Что такое квадратичная регрессия?
Подбор параболы y = ax² + bx + c к данным методом наименьших квадратов: выбор a, b и c так, чтобы сумма квадратов вертикальных расстояний от точек до кривой была как можно меньше. Этот метод нужен, когда диаграмма рассеяния растёт и падает или падает и растёт, а не идёт вдоль прямой.
Как найти уравнение квадратичной регрессии?
Сложите x, x², x³, x⁴, y, xy и x²y по всем точкам и решите три нормальных уравнения aΣx⁴ + bΣx³ + cΣx² = Σx²y, aΣx³ + bΣx² + cΣx = Σxy и aΣx² + bΣx + cn = Σy. Для x = 0, 1, 2, 3 и y = 1, 2, 5, 11 решение: a = 1,25, b = -0,45, c = 1,05.
Сколько точек нужно для квадратичной регрессии?
Хотя бы три, причём хотя бы с тремя разными x. Ровно через три точки парабола проходит точно, и R² автоматически равен 1, поэтому, чтобы приближение что-то говорило о данных, нужно четыре точки или больше.
Что означает R² для квадратичного приближения?
R² = 1 минус (сумма квадратов остатков), делённая на (общий разброс y вокруг среднего). Это доля разброса y, которую объясняет парабола. Для y = 2, 6, 11, 13, 12, 8 при x = 1 до 6 R² = 887/917, около 0,9673.
Квадратичная регрессия и полиномиальная регрессия одно и то же?
Квадратичная регрессия является полиномиальной регрессией второй степени. Приближение третьей степени добавляет член x³ и четвёртое нормальное уравнение, и так далее. Более высокие степени всегда ближе подходят к точкам, но с какого-то момента описывают шум, а не тренд, поэтому для небольшого набора данных обычно достаточно второй степени.
Как найти вершину построенной параболы?
Так же, как у любой параболы: x = -b/(2a), затем подставьте этот x в уравнение, чтобы найти y. Для y = -(8/7)x² + (66/7)x - 7 это даёт x = 33/8 и y = 697/56, около 12,45: здесь построенный тренд достигает максимума.
Почему коэффициенты получаются дробями?
Потому что решение нормальных уравнений на данных, которые можно ввести, всегда даёт рациональные числа, и дробь является точным ответом. -8/7 и есть старший коэффициент; -1,142857 лишь его округление. Кнопка «Копировать» даёт кривую в десятичной записи для электронной таблицы.