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

В этой статье мы рассмотрим математические основы линейной регрессии, включая ее основные уравнения и предположения.

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

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

Уравнение простой линейной регрессии выглядит следующим образом:

y = b0 + b1 * x + e

где y — зависимая переменная, x — независимая переменная, b0 — точка пересечения, b1 — наклон, а e — ошибка. Термин ошибки представляет собой разницу между фактическим значением y и прогнозируемым значением на основе линии регрессии.

Уравнение множественной линейной регрессии выглядит следующим образом:

y = b0 + b1 * x1 + b2 * x2 + … + bn * xn + e

где y — зависимая переменная, x1, x2, ..., xn — независимые переменные, b0 — точка пересечения, b1, b2, ..., bn — наклоны, а e — ошибка.

Предположения линейной регрессии

Есть несколько предположений, которые должны быть соблюдены, чтобы линейная регрессия была действительной. Эти предположения включают:

  1. Линейность: связь между зависимой переменной и независимой переменной (переменными) является линейной. Это означает, что при изменении значения независимой переменной (переменных) значение зависимой переменной изменяется прямолинейно.
  2. Независимость: наблюдения в наборе данных не зависят друг от друга. Это означает, что значение одного наблюдения не влияет на значение другого наблюдения.
  3. Гомоскедастичность: дисперсия члена ошибки постоянна для всех значений независимой переменной (переменных). Это означает, что ошибки равномерно распределены по линии регрессии.
  4. Нормальность: член ошибки нормально распределен. Это означает, что ошибки следуют нормальному распределению со средним значением 0 и постоянной дисперсией.

Поиск наилучшего соответствия

Цель линейной регрессии — найти линию, которая лучше всего соответствует данным. Это делается путем минимизации суммы квадратов ошибок между прогнозируемыми значениями и фактическими значениями. Это известно как остаточная сумма квадратов (RSS).

RSS рассчитывается следующим образом:

RSS = Σ(y — ŷ)²

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

В этой статье мы рассмотрим математические основы линейной регрессии, включая ее основные уравнения и предположения.

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

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

Уравнение простой линейной регрессии выглядит следующим образом:

y = b0 + b1 * x + e

где y — зависимая переменная, x — независимая переменная, b0 — точка пересечения, b1 — наклон, а e — ошибка. Термин ошибки представляет собой разницу между фактическим значением y и прогнозируемым значением на основе линии регрессии.

Уравнение множественной линейной регрессии выглядит следующим образом:

y = b0 + b1 * x1 + b2 * x2 + … + bn * xn + e

где y — зависимая переменная, x1, x2, ..., xn — независимые переменные, b0 — точка пересечения, b1, b2, ..., bn — наклоны, а e — ошибка.

Предположения линейной регрессии

Есть несколько предположений, которые должны быть соблюдены, чтобы линейная регрессия была действительной. Эти предположения включают:

  1. Линейность: связь между зависимой переменной и независимой переменной (переменными) является линейной. Это означает, что при изменении значения независимой переменной (переменных) значение зависимой переменной изменяется прямолинейно.
  2. Независимость: наблюдения в наборе данных не зависят друг от друга. Это означает, что значение одного наблюдения не влияет на значение другого наблюдения.
  3. Гомоскедастичность: дисперсия члена ошибки постоянна для всех значений независимой переменной (переменных). Это означает, что ошибки равномерно распределены по линии регрессии.
  4. Нормальность: член ошибки нормально распределен. Это означает, что ошибки следуют нормальному распределению со средним значением 0 и постоянной дисперсией.

Поиск наилучшего соответствия

Цель линейной регрессии — найти линию, которая лучше всего соответствует данным. Это делается путем минимизации суммы квадратов ошибок между прогнозируемыми значениями и фактическими значениями. Это известно как остаточная сумма квадратов (RSS).

RSS рассчитывается следующим образом:

RSS = Σ(y — ŷ)²

где y — фактическое значение, ŷ — прогнозируемое значение, а Σ — сумма всех точек данных.

Чтобы найти наилучшее соответствие, нам нужно найти значения b0 и b1 (или b0, b1, ..., bn для множественной линейной регрессии), которые минимизируют RSS. Это делается с помощью метода, называемого обычным методом наименьших квадратов (OLS).

Обычные наименьшие квадраты

OLS — это метод оценки значений b0 и b1 (или b0, b1, ..., bn для множественной линейной регрессии), которые минимизируют RSS. Это делается путем взятия частной производной RSS по b0 и b1 (или b0, `b1…,bn`) и установки их равными 0. Затем решаются полученные уравнения, чтобы найти значения коэффициентов, которые минимизируют RSS. .

Для простой линейной регрессии уравнения выглядят следующим образом:

b1 = Σ((x — x̄)(y — ȳ)) / Σ(x — x̄)²

b0 = ȳ — b1 * x̄

где — среднее значение x, ȳ — среднее значение y, а Σ — сумма всех точек данных.

Для множественной линейной регрессии уравнения выглядят следующим образом:

B = (X^T X)^-1 X^T Y

где B — вектор коэффициентов (b0, b1, ..., bn), X — матрица независимых переменных, а Y — вектор зависимой переменной.

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

Заключение

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

Пример кода для справки

import csv

# Load data from CSV file
with open('data.csv') as f:
    reader = csv.reader(f)
    next(reader)  # skip header row
    data = [(float(row[0]), float(row[1])) for row in reader]

# Compute the means of x and y
mean_x = sum(d[0] for d in data) / len(data)
mean_y = sum(d[1] for d in data) / len(data)

# Compute the numerator and denominator of the slope
numerator = sum((d[0] - mean_x) * (d[1] - mean_y) for d in data)
denominator = sum((d[0] - mean_x)**2 for d in data)

# Compute the slope and intercept of the regression line
slope = numerator / denominator
intercept = mean_y - slope * mean_x

# Print the slope and intercept
print('Slope:', slope)
print('Intercept:', intercept)

# Make predictions for new inputs
x_new = [3, 4, 5]
y_new = [slope * x + intercept for x in x_new]
print('Predictions:', y_new)