Найти уравнение прямой регрессии y на x и построить ее график

Корреляционная таблица

Пример 1 . По данной корреляционной таблице построить прямые регрессии с X на Y и с Y на X . Найти соответствующие коэффициенты регрессии и коэффициент корреляции между X и Y .

y/x152025303540
10022
12043103
140250710
160143
18011

Решение:
Уравнение линейной регрессии с y на x будем искать по формуле
Найти уравнение прямой регрессии y на x и построить ее график
а уравнение регрессии с x на y, использовав формулу:
Найти уравнение прямой регрессии y на x и построить ее график
где x x , y — выборочные средние величин x и y, σx, σy — выборочные среднеквадратические отклонения.
Находим выборочные средние:
x = (15(1 + 1) + 20(2 + 4 + 1) + 25(4 + 50) + 30(3 + 7 + 3) + 35(2 + 10 + 10) + 40(2 + 3))/103 = 27.961
y = (100(2 + 2) + 120(4 + 3 + 10 + 3) + 140(2 + 50 + 7 + 10) + 160(1 + 4 + 3) + 180(1 + 1))/103 = 136.893
Выборочные дисперсии:
σ 2 x = (15 2 (1 + 1) + 20 2 (2 + 4 + 1) + 25 2 (4 + 50) + 30 2 (3 + 7 + 3) + 35 2 (2 + 10 + 10) + 40 2 (2 + 3))/103 — 27.961 2 = 30.31
σ 2 y = (100 2 (2 + 2) + 120 2 (4 + 3 + 10 + 3) + 140 2 (2 + 50 + 7 + 10) + 160 2 (1 + 4 + 3) + 180 2 (1 + 1))/103 — 136.893 2 = 192.29
Откуда получаем среднеквадратические отклонения:
Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график
Определим коэффициент корреляции:
Найти уравнение прямой регрессии y на x и построить ее график
где ковариация равна:
Cov(x,y) = (35•100•2 + 40•100•2 + 25•120•4 + 30•120•3 + 35•120•10 + 40•120•3 + 20•140•2 + 25•140•50 + 30•140•7 + 35•140•10 + 15•160•1 + 20•160•4 + 30•160•3 + 15•180•1 + 20•180•1)/103 — 27.961 • 136.893 = -50.02
Запишем уравнение линий регрессии y(x):
Найти уравнение прямой регрессии y на x и построить ее график
и уравнение x(y):
Найти уравнение прямой регрессии y на x и построить ее график
Построим найденные уравнения регрессии на чертеже, из которого сделаем следующие вывод:
1) обе линии проходят через точку с координатами (27.961; 136.893)
2) все точки расположены близко к линиям регрессии.

Найти уравнение прямой регрессии y на x и построить ее график

Пример 2 . По данным корреляционной таблицы найти условные средние y и x . Оценить тесноту линейной связи между признаками x и y и составить уравнения линейной регрессии y по x и x по y . Сделать чертеж, нанеся его на него условные средние и найденные прямые регрессии. Оценить силу связи между признаками с помощью корреляционного отношения.
Корреляционная таблица:

X / Y246810
154200
206330
300123
500001

Уравнение линейной регрессии с y на x имеет вид:
Найти уравнение прямой регрессии y на x и построить ее график
Уравнение линейной регрессии с x на y имеет вид:
Найти уравнение прямой регрессии y на x и построить ее график
найдем необходимые числовые характеристики.
Выборочные средние:
x = (2(5) + 4(4 + 6) + 6(2 + 3 + 1) + 8(3 + 2) + 10(3 + 1) + )/30 = 5.53
y = (2(5) + 4(4 + 6) + 6(2 + 3 + 1) + 8(3 + 2) + 10(3 + 1) + )/30 = 1.93
Дисперсии:
σ 2 x = (2 2 (5) + 4 2 (4 + 6) + 6 2 (2 + 3 + 1) + 8 2 (3 + 2) + 10 2 (3 + 1))/30 — 5.53 2 = 6.58
σ 2 y = (1 2 (5 + 4 + 2) + 2 2 (6 + 3 + 3) + 3 2 (1 + 2 + 3) + 5 2 (1))/30 — 1.93 2 = 0.86
Откуда получаем среднеквадратические отклонения:
σx = 2.57 и σy = 0.93
и ковариация:
Cov(x,y) = (2•1•5 + 4•1•4 + 6•1•2 + 4•2•6 + 6•2•3 + 8•2•3 + 6•3•1 + 8•3•2 + 10•3•3 + 10•5•1)/30 — 5.53 • 1.93 = 1.84
Определим коэффициент корреляции:
Найти уравнение прямой регрессии y на x и построить ее график
Найти уравнение прямой регрессии y на x и построить ее график
Запишем уравнения линий регрессии y(x):
Найти уравнение прямой регрессии y на x и построить ее график
и вычисляя, получаем:
yx = 0.28 x + 0.39
Запишем уравнения линий регрессии x(y):
Найти уравнение прямой регрессии y на x и построить ее график
и вычисляя, получаем:
xy = 2.13 y + 1.42
Если построить точки, определяемые таблицей и линии регрессии, увидим, что обе линии проходят через точку с координатами (5.53; 1.93) и точки расположены близко к линиям регрессии.
Значимость коэффициента корреляции.
Найти уравнение прямой регрессии y на x и построить ее график
По таблице Стьюдента с уровнем значимости α=0.05 и степенями свободы k=30-m-1 = 28 находим tкрит:
tкрит (n-m-1;α/2) = (28;0.025) = 2.048
где m = 1 — количество объясняющих переменных.
Если tнабл > tкритич, то полученное значение коэффициента корреляции признается значимым (нулевая гипотеза, утверждающая равенство нулю коэффициента корреляции, отвергается).
Поскольку tнабл > tкрит, то отклоняем гипотезу о равенстве 0 коэффициента корреляции. Другими словами, коэффициент корреляции статистически — значим.

Пример 3 . Распределение 50 предприятий пищевой промышленности по степени автоматизации производства Х (%) и росту производительности труда Y (%) представлено в таблице. Необходимо:
1. Вычислить групповые средние i и j x y, построить эмпирические линии регрессии.
2. Предполагая, что между переменными Х и Y существует линейная корреляционная зависимость:
а) найти уравнения прямых регрессии, построить их графики на одном чертеже с эмпирическими линиями регрессии и дать экономическую интерпретацию полученных уравнений;
б) вычислить коэффициент корреляции; на уровне значимости α= 0,05 оценить его значимость и сделать вывод о тесноте и направлении связи между переменными Х и Y;
в) используя соответствующее уравнение регрессии, оценить рост производительности труда при степени автоматизации производства 43%.
Скачать решение

Пример . По корреляционной таблице рассчитать ковариацию и коэффициент корреляции, построить прямые регрессии.

Пример 4 . Найти выборочное уравнение прямой Y регрессии Y на X по данной корреляционной таблице.
Решение находим с помощью калькулятора.
Скачать
Пример №4

Пример 5 . С целью анализа взаимного влияния прибыли предприятия и его издержек выборочно были проведены наблюдения за этими показателями в течение ряда месяцев: X — величина месячной прибыли в тыс. руб., Y — месячные издержки в процентах к объему продаж.
Результаты выборки сгруппированы и представлены в виде корреляционной таблицы, где указаны значения признаков X и Y и количество месяцев, за которые наблюдались соответствующие пары значений названных признаков.
Решение.
Пример №5
Пример №6
Пример №7

Пример 6 . Данные наблюдений над двумерной случайной величиной (X, Y) представлены в корреляционной таблице. Методом наименьших квадратов найти выборочное уравнение прямой регрессии Y на X. Построить график уравнения регрессии и показать точки (x;y)б рассчитанные по таблице данных.
Решение.
Скачать решение

Пример 7 . Дана корреляционная таблица для величин X и Y, X- срок службы колеса вагона в годах, а Y — усредненное значение износа по толщине обода колеса в миллиметрах. Определить коэффициент корреляции и уравнения регрессий.

X / Y02712172227323742
03600000000
125108448200000
230506021550000
311133321323100
4055131372000
500121263210
60101002101
70011000100

Решение.
Скачать решение

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

  1. Вычислить выборочный коэффициент корреляции и проанализировать степень тесноты и направления связи между переменными.
  2. Определить линии регрессии и построить их графики.

Скачать

Видео:Эконометрика. Линейная парная регрессияСкачать

Эконометрика. Линейная парная регрессия

Решаем уравнение простой линейной регрессии

В статье рассматривается несколько способов определения математического уравнения линии простой (парной) регрессии.

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

  • Аналитическое решение
  • Градиентный спуск
  • Стохастический градиентный спуск

Для каждого из способов решения уравнения прямой, в статье приведены различные функции, которые в основном делятся на те, которые написаны без использования библиотеки NumPy и те, которые для проведения расчетов применяют NumPy. Считается, что умелое использование NumPy позволит сократить затраты на вычисления.

Весь код, приведенный в статье, написан на языке python 2.7 с использованием Jupyter Notebook. Исходный код и файл с данными выборки выложен на гитхабе

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

Для иллюстрации материала используем очень простой пример.

Условия примера

У нас есть пять значений, которые характеризуют зависимость Y от X (Таблица №1):

Таблица №1 «Условия примера»

Найти уравнение прямой регрессии y на x и построить ее график

Будем считать, что значения Найти уравнение прямой регрессии y на x и построить ее график— это месяц года, а Найти уравнение прямой регрессии y на x и построить ее график— выручка в этом месяце. Другими словами, выручка зависит от месяца года, а Найти уравнение прямой регрессии y на x и построить ее график— единственный признак, от которого зависит выручка.

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

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

Найти уравнение прямой регрессии y на x и построить ее график

где Найти уравнение прямой регрессии y на x и построить ее график— это месяц, в котором была получена выручка, Найти уравнение прямой регрессии y на x и построить ее график— выручка, соответствующая месяцу, Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график— коэффициенты регрессии оцененной линии.

Отметим, что коэффициент Найти уравнение прямой регрессии y на x и построить ее графикчасто называют угловым коэффициентом или градиентом оцененной линии; представляет собой величину, на которую изменится Найти уравнение прямой регрессии y на x и построить ее графикпри изменении Найти уравнение прямой регрессии y на x и построить ее график.

Очевидно, что наша задача в примере — подобрать в уравнении такие коэффициенты Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график, при которых отклонения наших расчетных значений выручки по месяцам от истинных ответов, т.е. значений, представленных в выборке, будут минимальны.

Метод наименьших квадратов

В соответствии с методом наименьших квадратов, отклонение стоит рассчитывать, возводя его в квадрат. Подобный прием позволяет избежать взаимного погашения отклонений, в том случае, если они имеют противоположные знаки. Например, если в одном случае, отклонение составляет +5 (плюс пять), а в другом -5 (минус пять), то сумма отклонений взаимно погасится и составит 0 (ноль). Можно и не возводить отклонение в квадрат, а воспользоваться свойством модуля и тогда у нас все отклонения будут положительными и будут накапливаться. Мы не будем останавливаться на этом моменте подробно, а просто обозначим, что для удобства расчетов, принято возводить отклонение в квадрат.

Вот так выглядит формула, с помощью которой мы определим наименьшую сумму квадратов отклонений (ошибки):

Найти уравнение прямой регрессии y на x и построить ее график

где Найти уравнение прямой регрессии y на x и построить ее график— это функция аппроксимации истинных ответов (то есть посчитанная нами выручка),

Найти уравнение прямой регрессии y на x и построить ее график— это истинные ответы (предоставленная в выборке выручка),

Найти уравнение прямой регрессии y на x и построить ее график— это индекс выборки (номер месяца, в котором происходит определение отклонения)

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

Дифференцирование

Дифференцированием называется операция по нахождению производной функции.

Для чего нужна производная? Производная функции характеризует скорость изменения функции и указывает нам ее направление. Если производная в заданной точке положительна, то функция возрастает, в обратном случае — функция убывает. И чем больше значение производной по модулю, тем выше скорость изменения значений функции, а также круче угол наклона графика функции.

Например, в условиях декартовой системы координат, значение производной в точке M(0,0) равное +25 означает, что в заданной точке, при смещении значения Найти уравнение прямой регрессии y на x и построить ее графиквправо на условную единицу, значение Найти уравнение прямой регрессии y на x и построить ее графиквозрастает на 25 условных единиц. На графике это выглядит, как достаточно крутой угол подъема значений Найти уравнение прямой регрессии y на x и построить ее графикс заданной точки.

Другой пример. Значение производной равное -0,1 означает, что при смещении Найти уравнение прямой регрессии y на x и построить ее графикна одну условную единицу, значение Найти уравнение прямой регрессии y на x и построить ее графикубывает всего лишь на 0,1 условную единицу. При этом, на графике функции, мы можем наблюдать едва заметный наклон вниз. Проводя аналогию с горой, то мы как будто очень медленно спускаемся по пологому склону с горы, в отличие от предыдущего примера, где нам приходилось брать очень крутые вершины:)

Таким образом, проведя дифференцирование функции Найти уравнение прямой регрессии y на x и построить ее графикпо коэффициентам Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график, определим уравнения частных производных 1-го порядка. После определения уравнений, мы получим систему из двух уравнений, решив которую мы сможем подобрать такие значения коэффициентов Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график, при которых значения соответствующих производных в заданных точках изменяются на очень и очень малую величину, а в случае с аналитическим решением не изменяются вовсе. Другими словами, функция ошибки при найденных коэффициентах достигнет минимума, так как значения частных производных в этих точках будут равны нулю.

Итак, по правилам дифференцирования уравнение частной производной 1-го порядка по коэффициенту Найти уравнение прямой регрессии y на x и построить ее графикпримет вид:

Найти уравнение прямой регрессии y на x и построить ее график

уравнение частной производной 1-го порядка по Найти уравнение прямой регрессии y на x и построить ее графикпримет вид:

Найти уравнение прямой регрессии y на x и построить ее график

В итоге мы получили систему уравнений, которая имеет достаточно простое аналитическое решение:

begin
begin
na + bsumlimits_^nx_i — sumlimits_^ny_i = 0
\
sumlimits_^nx_i(a +bsumlimits_^nx_i — sumlimits_^ny_i) = 0
end
end

Прежде чем решать уравнение, предварительно загрузим, проверим правильность загрузки и отформатируем данные.

Загрузка и форматирование данных

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

Визуализация

Теперь, после того, как мы, во-первых, загрузили данные, во-вторых, проверили правильность загрузки и наконец отформатировали данные, проведем первую визуализацию. Часто для этого используют метод pairplot библиотеки Seaborn. В нашем примере, ввиду ограниченности цифр нет смысла применять библиотеку Seaborn. Мы воспользуемся обычной библиотекой Matplotlib и посмотрим только на диаграмму рассеяния.

График №1 «Зависимость выручки от месяца года»

Найти уравнение прямой регрессии y на x и построить ее график

Аналитическое решение

Воспользуемся самыми обычными инструментами в python и решим систему уравнений:

begin
begin
na + bsumlimits_^nx_i — sumlimits_^ny_i = 0
\
sumlimits_^nx_i(a +bsumlimits_^nx_i — sumlimits_^ny_i) = 0
end
end

По правилу Крамера найдем общий определитель, а также определители по Найти уравнение прямой регрессии y на x и построить ее графики по Найти уравнение прямой регрессии y на x и построить ее график, после чего, разделив определитель по Найти уравнение прямой регрессии y на x и построить ее графикна общий определитель — найдем коэффициент Найти уравнение прямой регрессии y на x и построить ее график, аналогично найдем коэффициент Найти уравнение прямой регрессии y на x и построить ее график.

Вот, что у нас получилось:

Найти уравнение прямой регрессии y на x и построить ее график

Итак, значения коэффициентов найдены, сумма квадратов отклонений установлена. Нарисуем на гистограмме рассеяния прямую линию в соответствии с найденными коэффициентами.

График №2 «Правильные и расчетные ответы»

Найти уравнение прямой регрессии y на x и построить ее график

Можно посмотреть на график отклонений за каждый месяц. В нашем случае, какой-либо значимой практической ценности мы из него не вынесем, но удовлетворим любопытство в том, насколько хорошо, уравнение простой линейной регрессии характеризует зависимость выручки от месяца года.

График №3 «Отклонения, %»

Найти уравнение прямой регрессии y на x и построить ее график

Не идеально, но нашу задачу мы выполнили.

Напишем функцию, которая для определения коэффициентов Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее графикиспользует библиотеку NumPy, точнее — напишем две функции: одну с использованием псевдообратной матрицы (не рекомендуется на практике, так как процесс вычислительно сложный и нестабильный), другую с использованием матричного уравнения.

Сравним время, которое было затрачено на определение коэффициентов Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график, в соответствии с 3-мя представленными способами.

Найти уравнение прямой регрессии y на x и построить ее график

На небольшом количестве данных, вперед выходит «самописная» функция, которая находит коэффициенты методом Крамера.

Теперь можно перейти к другим способам нахождения коэффициентов Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график.

Градиентный спуск

Для начала определим, что такое градиент. По-простому, градиент — это отрезок, который указывает направление максимального роста функции. По аналогии с подъемом в гору, то куда смотрит градиент, там и есть самый крутой подъем к вершине горы. Развивая пример с горой, вспоминаем, что на самом деле нам нужен самый крутой спуск, чтобы как можно быстрее достичь низины, то есть минимума — места где функция не возрастает и не убывает. В этом месте производная будет равна нулю. Следовательно, нам нужен не градиент, а антиградиент. Для нахождения антиградиента нужно всего лишь умножить градиент на -1 (минус один).

Обратим внимание на то, что функция может иметь несколько минимумов, и опустившись в один из них по предложенному далее алгоритму, мы не сможем найти другой минимум, который возможно находится ниже найденного. Расслабимся, нам это не грозит! В нашем случае мы имеем дело с единственным минимумом, так как наша функция Найти уравнение прямой регрессии y на x и построить ее графикна графике представляет собой обычную параболу. А как мы все должны прекрасно знать из школьного курса математики — у параболы существует только один минимум.

После того, как мы выяснили для чего нам потребовался градиент, а также то, что градиент — это отрезок, то есть вектор с заданными координатами, которые как раз являются теми самыми коэффициентами Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее графикмы можем реализовать градиентный спуск.

Перед запуском, предлагаю прочитать буквально несколько предложений об алгоритме спуска:

  • Определяем псевдослучайным образом координаты коэффициентов Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график. В нашем примере, мы будем определять коэффициенты вблизи нуля. Это является распространённой практикой, однако для каждого случая может быть предусмотрена своя практика.
  • От координаты Найти уравнение прямой регрессии y на x и построить ее графиквычитаем значение частной производной 1-го порядка в точке Найти уравнение прямой регрессии y на x и построить ее график. Так, если производная будет положительная, то функция возрастает. Следовательно, отнимая значение производной, мы будем двигаться в обратную сторону роста, то есть в сторону спуска. Если производная отрицательна, значит функция в этой точке убывает и отнимая значение производной мы двигаемся в сторону спуска.
  • Проводим аналогичную операцию с координатой Найти уравнение прямой регрессии y на x и построить ее график: вычитаем значение частной производной в точке Найти уравнение прямой регрессии y на x и построить ее график.
  • Для того, чтобы не перескочить минимум и не улететь в далекий космос, необходимо установить размер шага в сторону спуска. В общем и целом, можно написать целую статью о том, как правильнее установить шаг и как его менять в процессе спуска, чтобы снизить затраты на вычисления. Но сейчас перед нами несколько иная задача, и мы научным методом «тыка» или как говорят в простонародье, эмпирическим путем, установим размер шага.
  • После того, как мы из заданных координат Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее графиквычли значения производных, получаем новые координаты Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график. Делаем следующий шаг (вычитание), уже из рассчитанных координат. И так цикл запускается вновь и вновь, до тех пор, пока не будет достигнута требуемая сходимость.

Все! Теперь мы готовы отправиться на поиски самого глубокого ущелья Марианской впадины. Приступаем.

Найти уравнение прямой регрессии y на x и построить ее график

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

Совершим еще одно погружение, только на этот раз, начинкой нашего глубоководного аппарата будут иные технологии, а именно библиотека NumPy.

Найти уравнение прямой регрессии y на x и построить ее график
Значения коэффициентов Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее графикнеизменны.

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

График №4 «Сумма квадратов отклонений при градиентном спуске»

Найти уравнение прямой регрессии y на x и построить ее график

На графике мы видим, что с каждым шагом ошибка уменьшается, а спустя какое-то количество итераций наблюдаем практически горизонтальную линию.

Напоследок оценим разницу во времени исполнения кода:

Найти уравнение прямой регрессии y на x и построить ее график

Возможно мы делаем что-то не то, но опять простая «самописная» функция, которая не использует библиотеку NumPy опережает по времени выполнения расчетов функцию, использующую библиотеку NumPy.

Но мы не стоим на месте, а двигаемся в сторону изучения еще одного увлекательного способа решения уравнения простой линейной регрессии. Встречайте!

Стохастический градиентный спуск

Для того, чтобы быстрее понять принцип работы стохастического градиентного спуска, лучше определить его отличия от обычного градиентного спуска. Мы, в случае с градиентным спуском, в уравнениях производных от Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее графикиспользовали суммы значений всех признаков и истинных ответов, имеющихся в выборке (то есть суммы всех Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график). В стохастическом градиентном спуске мы не будем использовать все значения, имеющиеся в выборке, а вместо этого, псевдослучайным образом выберем так называемый индекс выборки и используем его значения.

Например, если индекс определился за номером 3 (три), то мы берем значения Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график, далее подставляем значения в уравнения производных и определяем новые координаты. Затем, определив координаты, мы опять псевдослучайным образом определяем индекс выборки, подставляем значения, соответствующие индексу в уравнения частных производных, по новому определяем координаты Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее графики т.д. до позеленения сходимости. На первый взгляд, может показаться, как это вообще может работать, однако работает. Правда стоит отметить, что не с каждым шагом уменьшается ошибка, но тенденция безусловно имеется.

Каковы преимущества стохастического градиентного спуска перед обычным? В случае, если у нас размер выборки очень велик и измеряется десятками тысяч значений, то значительно проще обработать, допустим случайную тысячу из них, нежели всю выборку. Вот в этом случае и запускается стохастический градиентный спуск. В нашем случае мы конечно же большой разницы не заметим.

Найти уравнение прямой регрессии y на x и построить ее график

Смотрим внимательно на коэффициенты и ловим себя на вопросе «Как же так?». У нас получились другие значения коэффициентов Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график. Может быть стохастический градиентный спуск нашел более оптимальные параметры уравнения? Увы, нет. Достаточно посмотреть на сумму квадратов отклонений и увидеть, что при новых значениях коэффициентов, ошибка больше. Не спешим отчаиваться. Построим график изменения ошибки.

График №5 «Сумма квадратов отклонений при стохастическом градиентном спуске»

Найти уравнение прямой регрессии y на x и построить ее график

Посмотрев на график, все становится на свои места и сейчас мы все исправим.

Итак, что же произошло? Произошло следующее. Когда мы выбираем случайным образом месяц, то именно для выбранного месяца наш алгоритм стремится уменьшить ошибку в расчете выручки. Затем выбираем другой месяц и повторяем расчет, но ошибку уменьшаем уже для второго выбранного месяца. А теперь вспомним, что у нас первые два месяца существенно отклоняются от линии уравнения простой линейной регрессии. Это значит, что когда выбирается любой из этих двух месяцев, то уменьшая ошибку каждого из них, наш алгоритм серьезно увеличивает ошибку по всей выборке. Так что же делать? Ответ простой: надо уменьшить шаг спуска. Ведь уменьшив шаг спуска, ошибка так же перестанет «скакать» то вверх, то вниз. Вернее, ошибка «скакать» не перестанет, но будет это делать не так прытко:) Проверим.

Найти уравнение прямой регрессии y на x и построить ее график

График №6 «Сумма квадратов отклонений при стохастическом градиентном спуске (80 тыс. шагов)»

Найти уравнение прямой регрессии y на x и построить ее график

Значения коэффициентов улучшились, но все равно не идеальны. Гипотетически это можно поправить таким образом. Выбираем, например, на последних 1000 итерациях значения коэффициентов, с которыми была допущена минимальная ошибка. Правда нам для этого придется записывать еще и сами значения коэффициентов. Мы не будем этого делать, а лучше обратим внимание на график. Он выглядит гладким, и ошибка как будто уменьшается равномерно. На самом деле это не так. Посмотрим на первые 1000 итераций и сравним их с последними.

График №7 «Сумма квадратов отклонений SGD (первые 1000 шагов)»

Найти уравнение прямой регрессии y на x и построить ее график

График №8 «Сумма квадратов отклонений SGD (последние 1000 шагов)»

Найти уравнение прямой регрессии y на x и построить ее график

В самом начале спуска мы наблюдаем достаточно равномерное и крутое уменьшение ошибки. На последних итерациях мы видим, что ошибка ходит вокруг да около значения в 1,475 и в некоторые моменты даже равняется этому оптимальному значению, но потом все равно уходит ввысь… Повторюсь, можно записывать значения коэффициентов Найти уравнение прямой регрессии y на x и построить ее графики Найти уравнение прямой регрессии y на x и построить ее график, а потом выбрать те, при которых ошибка минимальна. Однако у нас возникла проблема посерьезнее: нам пришлось сделать 80 тыс. шагов (см. код), чтобы получить значения, близкие к оптимальным. А это, уже противоречит идее об экономии времени вычислений при стохастическом градиентном спуске относительно градиентного. Что можно поправить и улучшить? Не трудно заметить, что на первых итерациях мы уверенно идем вниз и, следовательно, нам стоит оставить большой шаг на первых итерациях и по мере продвижения вперед шаг уменьшать. Мы не будем этого делать в этой статье — она и так уже затянулась. Желающие могут и сами подумать, как это сделать, это не сложно 🙂

Теперь выполним стохастический градиентный спуск, используя библиотеку NumPy (и не будем спотыкаться о камни, которые мы выявили раннее)

Найти уравнение прямой регрессии y на x и построить ее график

Значения получились почти такими же, как и при спуске без использования NumPy. Впрочем, это логично.

Узнаем сколько же времени занимали у нас стохастические градиентные спуски.

Найти уравнение прямой регрессии y на x и построить ее график

Чем дальше в лес, тем темнее тучи: опять «самописная» формула показывает лучший результат. Все это наводит на мысли о том, что должны существовать еще более тонкие способы использования библиотеки NumPy, которые действительно ускоряют операции вычислений. В этой статье мы о них уже не узнаем. Будет о чем подумать на досуге:)

Резюмируем

Перед тем как резюмировать, хотелось бы ответить на вопрос, который скорее всего, возник у нашего дорогого читателя. Для чего, собственно, такие «мучения» со спусками, зачем нам ходить по горе вверх и вниз (преимущественно вниз), чтобы найти заветную низину, если в наших руках такой мощный и простой прибор, в виде аналитического решения, который мгновенно телепортирует нас в нужное место?

Ответ на этот вопрос лежит на поверхности. Сейчас мы разбирали очень простой пример, в котором истинный ответ Найти уравнение прямой регрессии y на x и построить ее графикзависит от одного признака Найти уравнение прямой регрессии y на x и построить ее график. В жизни такое встретишь не часто, поэтому представим, что у нас признаков 2, 30, 50 или более. Добавим к этому тысячи, а то и десятки тысяч значений для каждого признака. В этом случае аналитическое решение может не выдержать испытания и дать сбой. В свою очередь градиентный спуск и его вариации будут медленно, но верно приближать нас к цели — минимуму функции. А на счет скорости не волнуйтесь — мы наверняка еще разберем способы, которые позволят нам задавать и регулировать длину шага (то есть скорость).

А теперь собственно краткое резюме.

Во-первых, надеюсь, что изложенный в статье материал, поможет начинающим «дата сайнтистам» в понимании того, как решать уравнения простой (и не только) линейной регрессии.

Во-вторых, мы рассмотрели несколько способов решения уравнения. Теперь, в зависимости от ситуации, мы можем выбрать тот, который лучше всего подходит для решения поставленной задачи.

В-третьих, мы увидели силу дополнительных настроек, а именно длины шага градиентного спуска. Этим параметром нельзя пренебрегать. Как было подмечено выше, с целью сокращения затрат на проведение вычислений, длину шага стоит изменять по ходу спуска.

В-четвертых, в нашем случае, «самописные» функции показали лучший временной результат вычислений. Вероятно, это связано с не самым профессиональным применением возможностей библиотеки NumPy. Но как бы то ни было, вывод напрашивается следующий. С одной стороны, иногда стоит подвергать сомнению устоявшиеся мнения, а с другой — не всегда стоит все усложнять — наоборот иногда эффективнее оказывается более простой способ решения задачи. А так как цель у нас была разобрать три подхода в решении уравнения простой линейной регрессии, то использование «самописных» функций нам вполне хватило.

Найти уравнение прямой регрессии y на x и построить ее график Предыдущая работа автора — «Исследуем утверждение центральной предельной теоремы с помощью экспоненциального распределения»
Найти уравнение прямой регрессии y на x и построить ее график Следующая работа автора — «Приводим уравнение линейной регрессии в матричный вид»

Видео:Парная регрессия: линейная зависимостьСкачать

Парная регрессия: линейная зависимость

Найти уравнение прямой регрессии y на x и построить ее график

Запрошуємо усіх хто любить цікаві задачі та головоломки відвідати групу! Зараз діє акція — підтримай студента! Знижки на роботи + безкоштовні консультації.

Контакты

Администратор, решение задач
Роман

Tel. +380685083397
[email protected]
skype, facebook:
roman.yukhym

Решение задач
Андрей

facebook:
dniprovets25

Видео:Уравнение прямой по графику. ПримерыСкачать

Уравнение прямой по графику. Примеры

Задача №1 Построение уравнения регрессии

Имеются следующие данные разных стран об индексе розничных цен на продукты питания (х) и об индексе промышленного производства (у).

Найти уравнение прямой регрессии y на x и построить ее график
Индекс розничных цен на продукты питания (х)Индекс промышленного производства (у)
110070
210579
310885
411384
511885
611885
711096
811599
9119100
1011898
1112099
12124102
13129105
14132112

Требуется:

1. Для характеристики зависимости у от х рассчитать параметры следующих функций:

В) равносторонней гиперболы.

2. Для каждой модели рассчитать показатели: тесноты связи и среднюю ошибку аппроксимации.

3. Оценить статистическую значимость параметров регрессии и корреляции.

4. Выполнить прогноз значения индекса промышленного производства у при прогнозном значении индекса розничных цен на продукты питания х=138.

Решение:

1. Для расчёта параметров линейной регрессии

Найти уравнение прямой регрессии y на x и построить ее график

Решаем систему нормальных уравнений относительно a и b:

Найти уравнение прямой регрессии y на x и построить ее график

Построим таблицу расчётных данных, как показано в таблице 1.

Таблица 1 Расчетные данные для оценки линейной регрессии

№ п/пхухуx 2y 2Найти уравнение прямой регрессии y на x и построить ее графикНайти уравнение прямой регрессии y на x и построить ее график
110070700010000490074,263400,060906
210579829511025624179,925270,011712
310885918011664722583,322380,019737
411384949212769705688,984250,059336
5118851003013924722594,646110,113484
6118851003013924722594,646110,113484
7110961056012100921685,587130,108467
8115991138513225980191,249000,078293
911910011900141611000095,778490,042215
10118981156413924960494,646110,034223
11120991188014400980196,910860,021102
12124102126481537610404101,44040,005487
13129105135451664111025107,10220,020021
14132112147841742412544110,49930,013399
Итого:162912991522931905571222671299,0010,701866
Среднее значение:116,357192,7857110878,0713611,218733,357хх
Найти уравнение прямой регрессии y на x и построить ее график8,498811,1431ххххх
Найти уравнение прямой регрессии y на x и построить ее график72,23124,17ххххх

Среднее значение определим по формуле:

Найти уравнение прямой регрессии y на x и построить ее график

Cреднее квадратическое отклонение рассчитаем по формуле:

Найти уравнение прямой регрессии y на x и построить ее график

и занесём полученный результат в таблицу 1.

Возведя в квадрат полученное значение получим дисперсию:

Найти уравнение прямой регрессии y на x и построить ее график

Параметры уравнения можно определить также и по формулам:

Найти уравнение прямой регрессии y на x и построить ее график

Найти уравнение прямой регрессии y на x и построить ее график

Таким образом, уравнение регрессии:

Найти уравнение прямой регрессии y на x и построить ее график

Следовательно, с увеличением индекса розничных цен на продукты питания на 1, индекс промышленного производства увеличивается в среднем на 1,13.

Рассчитаем линейный коэффициент парной корреляции:

Найти уравнение прямой регрессии y на x и построить ее график

Связь прямая, достаточно тесная.

Определим коэффициент детерминации:

Найти уравнение прямой регрессии y на x и построить ее график

Вариация результата на 74,59% объясняется вариацией фактора х.

Подставляя в уравнение регрессии фактические значения х, определим теоретические (расчётные) значения Найти уравнение прямой регрессии y на x и построить ее график.

Найти уравнение прямой регрессии y на x и построить ее график,

следовательно, параметры уравнения определены правильно.

Рассчитаем среднюю ошибку аппроксимации – среднее отклонение расчётных значений от фактических:

Найти уравнение прямой регрессии y на x и построить ее график

В среднем расчётные значения отклоняются от фактических на 5,01%.

Оценку качества уравнения регрессии проведём с помощью F-теста.

F-тест состоит в проверке гипотезы Н0 о статистической незначимости уравнения регрессии и показателя тесноты связи. Для этого выполняется сравнение фактического Fфакт и критического (табличного) Fтабл значений F-критерия Фишера.

Fфакт определяется по формуле:

Найти уравнение прямой регрессии y на x и построить ее график

где n – число единиц совокупности;

m – число параметров при переменных х.

Найти уравнение прямой регрессии y на x и построить ее график

Найти уравнение прямой регрессии y на x и построить ее график

Таким образом, Н0 – гипотеза о случайной природе оцениваемых характеристик отклоняется и признаётся их статистическая значимость и надёжность.

Полученные оценки уравнения регрессии позволяют использовать его для прогноза.

Если прогнозное значение индекса розничных цен на продукты питания х = 138, тогда прогнозное значение индекса промышленного производства составит:

Найти уравнение прямой регрессии y на x и построить ее график

2. Степенная регрессия имеет вид:

Найти уравнение прямой регрессии y на x и построить ее график

Для определения параметров производят логарифмиро­вание степенной функции:

Найти уравнение прямой регрессии y на x и построить ее график

Для определения параметров логарифмической функции строят систему нормальных уравнений по способу наи­меньших квадратов:

Найти уравнение прямой регрессии y на x и построить ее график

Построим таблицу расчётных данных, как показано в таблице 2.

Таблица 2 Расчетные данные для оценки степенной регрессии

№п/пхуlg xlg ylg x*lg y(lg x) 2(lg y) 2
1100702,0000001,8450983,6901964,0000003,404387
2105792,0211891,8976273,8354644,0852063,600989
3108852,0334241,9294193,9233264,1348123,722657
4113842,0530781,9242793,9506964,2151313,702851
5118852,0718821,9294193,9975284,2926953,722657
6118852,0718821,9294193,9975284,2926953,722657
7110962,0413931,9822714,0465944,1672843,929399
8115992,0606981,9956354,1124014,2464763,982560
91191002,0755472,0000004,1510944,3078954,000000
10118982,0718821,9912264,1255854,2926953,964981
11120992,0791811,9956354,1492874,3229953,982560
121241022,0934222,0086004,2048474,3824144,034475
131291052,1105902,0211894,2659014,4545894,085206
141321122,1205742,0492184,3455184,4968344,199295
Итого1629129928,9047427,4990456,7959759,6917254,05467
Среднее значение116,357192,785712,0646241,9642174,0568554,2636943,861048
Найти уравнение прямой регрессии y на x и построить ее график8,498811,14310,0319450,053853ххх
Найти уравнение прямой регрессии y на x и построить ее график72,23124,170,0010210,0029ххх

Продолжение таблицы 2 Расчетные данные для оценки степенной регрессии

№п/пхуНайти уравнение прямой регрессии y на x и построить ее графикНайти уравнение прямой регрессии y на x и построить ее графикНайти уравнение прямой регрессии y на x и построить ее графикНайти уравнение прямой регрессии y на x и построить ее график
11007074,1644817,342920,059493519,1886
21057979,620570,3851120,007855190,0458
31088582,951804,1951330,02409660,61728
41138488,5976821,138660,05473477,1887
51188594,3584087,579610,11009960,61728
61188594,3584087,579610,11009960,61728
71109685,19619116,72230,1125410,33166
81159990,8883465,799010,08193638,6174
911910095,5240820,033840,04475952,04598
101189894,3584013,261270,03715927,18882
111209996,694235,3165630,02329138,6174
12124102101,41910,3374670,00569584,90314
13129105107,42325,8720990,023078149,1889
14132112111,07720,851630,00824369,1889
Итого162912991296,632446,41520,7030741738,357
Среднее значение116,357192,78571хххх
Найти уравнение прямой регрессии y на x и построить ее график8,498811,1431хххх
Найти уравнение прямой регрессии y на x и построить ее график72,23124,17хххх

Решая систему нормальных уравнений, определяем параметры логарифмической функции.

Найти уравнение прямой регрессии y на x и построить ее график

Найти уравнение прямой регрессии y на x и построить ее график

Получим линейное уравнение:

Найти уравнение прямой регрессии y на x и построить ее график

Выполнив его потенцирование, получим:

Найти уравнение прямой регрессии y на x и построить ее график

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

Найти уравнение прямой регрессии y на x и построить ее график

Связь достаточно тесная.

Найти уравнение прямой регрессии y на x и построить ее график

В среднем расчётные значения отклоняются от фактических на 5,02%.

Найти уравнение прямой регрессии y на x и построить ее график

Найти уравнение прямой регрессии y на x и построить ее график

Таким образом, Н0 – гипотеза о случайной природе оцениваемых характеристик отклоняется и признаётся их статистическая значимость и надёжность.

Полученные оценки уравнения регрессии позволяют использовать его для прогноза. Если прогнозное значение индекса розничных цен на продукты питания х = 138, тогда прогнозное значение индекса промышленного производства составит:

Найти уравнение прямой регрессии y на x и построить ее график

3. Уравнение равносторонней гиперболы

Найти уравнение прямой регрессии y на x и построить ее график

Для определения параметров этого уравнения используется система нормальных уравнений:

Найти уравнение прямой регрессии y на x и построить ее график

Произведем замену переменных

Найти уравнение прямой регрессии y на x и построить ее график

и получим следующую систему нормальных уравнений:

Найти уравнение прямой регрессии y на x и построить ее график

Решая систему нормальных уравнений, определяем параметры гиперболы.

Составим таблицу расчётных данных, как показано в таблице 3.

Таблица 3 Расчетные данные для оценки гиперболической зависимости

№п/пхуzyzНайти уравнение прямой регрессии y на x и построить ее графикНайти уравнение прямой регрессии y на x и построить ее график
1100700,0100000000,7000000,00010004900
2105790,0095238100,7523810,00009076241
3108850,0092592590,7870370,00008577225
4113840,0088495580,7433630,00007837056
5118850,0084745760,7203390,00007187225
6118850,0084745760,7203390,00007187225
7110960,0090909090,8727270,00008269216
8115990,0086956520,8608700,00007569801
91191000,0084033610,8403360,000070610000
10118980,0084745760,8305080,00007189604
11120990,0083333330,8250000,00006949801
121241020,0080645160,8225810,000065010404
131291050,0077519380,8139530,000060111025
141321120,0075757580,8484850,000057412544
Итого:162912990,12097182311,137920,0010510122267
Среднее значение:116,357192,785710,0086408440,7955660,00007518733,357
Найти уравнение прямой регрессии y на x и построить ее график8,498811,14310,000640820ххх
Найти уравнение прямой регрессии y на x и построить ее график72,23124,170,000000411ххх

Продолжение таблицы 3 Расчетные данные для оценки гиперболической зависимости

№п/пхуНайти уравнение прямой регрессии y на x и построить ее графикНайти уравнение прямой регрессии y на x и построить ее графикНайти уравнение прямой регрессии y на x и построить ее графикНайти уравнение прямой регрессии y на x и построить ее график
11007072,32620,0332315,411206519,1886
21057979,494050,0062540,244083190,0458
31088583,476190,0179272,32201260,61728
41138489,643210,06718131,8458577,1887
51188595,287610,121031105,834960,61728
61188595,287610,121031105,834960,61728
71109686,010270,1040699,7946510,33166
81159991,959870,07111249,5634438,6174
911910096,359570,03640413,2527252,04598
101189895,287610,0276777,35705927,18882
111209997,413670,0160242,51645338,6174
12124102101,460,0052940,29156584,90314
13129105106,16510,0110961,357478149,1889
14132112108,81710,02841910,1311369,1889
Итого:162912991298,9880,666742435,75751738,357
Среднее значение:116,357192,78571хххх
Найти уравнение прямой регрессии y на x и построить ее график8,498811,1431хххх
Найти уравнение прямой регрессии y на x и построить ее график72,23124,17хххх

Значения параметров регрессии a и b составили:

Найти уравнение прямой регрессии y на x и построить ее график

Найти уравнение прямой регрессии y на x и построить ее график

Найти уравнение прямой регрессии y на x и построить ее график

Найти уравнение прямой регрессии y на x и построить ее график

Связь достаточно тесная.

Найти уравнение прямой регрессии y на x и построить ее график

В среднем расчётные значения отклоняются от фактических на 4,76%.

Найти уравнение прямой регрессии y на x и построить ее график

Найти уравнение прямой регрессии y на x и построить ее график

Таким образом, Н0 – гипотеза о случайной природе оцениваемых характеристик отклоняется и признаётся их статистическая значимость и надёжность.

Полученные оценки уравнения регрессии позволяют использовать его для прогноза. Если прогнозное значение индекса розничных цен на продукты питания х = 138, тогда прогнозное значение индекса промышленного производства составит:

Найти уравнение прямой регрессии y на x и построить ее график

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

🎬 Видео

Множественная регрессияСкачать

Множественная регрессия

Математика без Ху!ни. Уравнения прямой. Часть 2. Каноническое, общее и в отрезках.Скачать

Математика без Ху!ни. Уравнения прямой. Часть 2. Каноническое, общее и в отрезках.

Составляем уравнение прямой по точкамСкачать

Составляем уравнение прямой по точкам

Математика #1 | Корреляция и регрессияСкачать

Математика #1 | Корреляция и регрессия

Линейная регрессияСкачать

Линейная регрессия

9 класс, 7 урок, Уравнение прямойСкачать

9 класс, 7 урок, Уравнение прямой

Уравнение линейной регрессии. Интерпретация стандартной табличкиСкачать

Уравнение линейной регрессии. Интерпретация стандартной таблички

Что такое линейная регрессия? Душкин объяснитСкачать

Что такое линейная регрессия? Душкин объяснит

Метод наименьших квадратов. Линейная аппроксимацияСкачать

Метод наименьших квадратов. Линейная аппроксимация

Множественная регрессия в ExcelСкачать

Множественная регрессия в Excel

Эконометрика Линейная регрессия и корреляцияСкачать

Эконометрика  Линейная регрессия и корреляция

Как вычислить линейный коэффициент корреляции в MS Excel и построить уравнение регрессии?Скачать

Как вычислить линейный коэффициент корреляции в MS Excel  и построить уравнение регрессии?

10 класс, 20 урок, Функции y=tgx, y=ctgx, их свойства и графикиСкачать

10 класс, 20 урок, Функции y=tgx, y=ctgx, их свойства и графики

Линейная функция: краткие ответы на важные вопросы | Математика | TutorOnlineСкачать

Линейная функция: краткие ответы на важные вопросы | Математика | TutorOnline

Математика без Ху!ни. Уравнения прямой. Часть 1. Уравнение с угловым коэффициентом.Скачать

Математика без Ху!ни. Уравнения прямой. Часть 1. Уравнение с угловым коэффициентом.

УРАВНЕНИЕ ПРЯМОЙ на плоскости 8 и 9 классСкачать

УРАВНЕНИЕ ПРЯМОЙ на плоскости 8 и 9 класс

Как вычислить линейный коэффициент корреляции по таблице? Корреляционное поле и прямая регрессииСкачать

Как вычислить линейный коэффициент корреляции по таблице? Корреляционное поле и прямая регрессии
Поделиться или сохранить к себе: