Регрессия

15.04.2026 Обновлено: 15.04.2026
автор

Лекция 11: Линейная регрессия. Метод наименьших квадратов. Теорема Гаусса–Маркова

Введение

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


Постановка задачи

Рассмотрим модель в матричном виде:

y=Xc+εy = Xc + \varepsilon

Раскроем смысл каждого объекта.

Матрица переменных XX

XX — это матрица n×mn \times m с вещественными коэффициентами. Это матрица переменных, где:

  • nn — количество наблюдений, доступных нам;
  • mm — количество переменных.

При этом XX воспринимается как не случайная величина — это какой-то конкретный детерминированный набор.

Вектор коэффициентов cc

cRmc \in \mathbb{R}^mнеизвестный вектор коэффициентов (вектор из mm компонент).

Ошибка ε\varepsilon

ε\varepsilon — это ошибка, поскольку идеальная линейная зависимость встречается редко. Ошибка воспринимается как случайная величина.

ε\varepsilon — это вектор длины nn:

ε=(ε1,,εn)T\varepsilon = (\varepsilon_1, \ldots, \varepsilon_n)^T

где εi\varepsilon_i соответствует ii-му наблюдению.

Предположения на ошибку

На ошибку накладываются следующие предположения:

  1. Нулевое математическое ожидание:

    Eεi=0\mathbb{E}\varepsilon_i = 0

    То есть в среднем ошибка равна нулю — это означает, что модель «более-менее адекватная».

  2. Некоррелированность (но не независимость!):

    cov(εi,εj)=0,ij\text{cov}(\varepsilon_i, \varepsilon_j) = 0, \quad i \neq j

    На интуитивном уровне — мы независимо наблюдаем и ii-ю, и jj-ю строчку. Замечание: студент предложил предположение независимости и одинаковой распределённости, но Иван Александрович уточнил, что независимость пока не предполагается — только некоррелированность.

  3. Гомоскедастичность — одинаковые дисперсии у ошибок:

    Dεi=σ2\mathbb{D}\varepsilon_i = \sigma^2

    Слово гомоскедастичность означает, что дисперсии у ошибок одинаковые. При этом σ2\sigma^2 неизвестна.

Вектор наблюдений yy

yRny \in \mathbb{R}^nнаблюдение зависимой переменной.

Глобальная цель

Цель — «оценить» вектор коэффициентов cc и величину σ2\sigma^2 (которая называется остаточная дисперсия).

Слово «оценить» написано в кавычках, потому что:

  • Можно дать точечную оценку;
  • Можно построить доверительный интервал;
  • Можно проверять гипотезы.

То есть можно решать всякие разные статистические задачи касательно cc и σ2\sigma^2.

Пример: цена недвижимости

Допустим, рассматриваем цену недвижимости. Цена недвижимости (это yy) может зависеть от разных факторов:

  • расстояние от центра города;
  • расстояние до ближайшего метро;
  • и так далее.

Эти переменные образуют матрицу XX:

X=(x1,1x1,mxn,1xn,m)X = \begin{pmatrix} x_{1,1} & \cdots & x_{1,m} \\ \vdots & \ddots & \vdots \\ x_{n,1} & \cdots & x_{n,m} \end{pmatrix}
  • Первая строчка — значение переменных для первого наблюдения;
  • Вторая строчка — для второго наблюдения; и т. д.

Например, столбец yy — это flat\_price (y1,,yny_1, \ldots, y_n). Переменные:

  • distance\_to\_center: x1,1,,xn,1x_{1,1}, \ldots, x_{n,1};
  • distance\_to\_nearest\_subway: x1,2,,xn,2x_{1,2}, \ldots, x_{n,2};
  • и т. д.

Предполагаем, что цена линейно зависит от факторов:

y1=c1x1,1+c2x1,2++cmx1,m+ε1y_1 = c_1 x_{1,1} + c_2 x_{1,2} + \ldots + c_m x_{1,m} + \varepsilon_1

Грубо говоря, cjc_j — это значимость (коэффициент) при соответствующей переменной. Цель — оценить эти коэффициенты.

Замечание про свободный коэффициент c0c_0

Часто в линейных моделях фигурирует свободный коэффициент c0c_0. Однако его введение не умаляет общности записи. Если ввести c0c_0, то это частный случай рассмотренной ситуации:

c01c_0 \cdot 1

— то есть мы добавляем фиктивную переменную, равную единице для всех наблюдений. Поэтому общий вид y=Xc+εy = Xc + \varepsilon покрывает и случай со свободным членом.


Вспомогательная матрица AA

Введём матрицу:

A=XTXA = X^T X

На что она похожа? Это похоже на «ковариацию» между переменными (в кавычках!).

Действительно, строчка матрицы XTX^T — это столбец переменной. Если поделить на nn, то получится почти выборочная ковариация. Формально это не совсем ковариация, но нечто, очень сильно напоминающее её. На интуитивном уровне про матрицу AA можно думать как про вариацию между переменными.

Свойства матрицы AA

  • AA — матрица m×mm \times m по построению.
  • Предполагаем: rank(A)=m\text{rank}(A) = m.

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

rank(A)=m\text{rank}(A) = m ⟺ переменные линейно независимы ⟺ отсутствует мультиколлинеарность.

Также предполагаем, что количество наблюдений существенно больше количества переменных: nmn \gg m.


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

Рассмотрим квадратическую ошибку:

S2(c)=i(jxijcjyi)2S^2(c) = \sum_i \left( \sum_j x_{ij} c_j - y_i \right)^2

Или в матричном виде:

S2(c)=(Xcy)T(Xcy)S^2(c) = (Xc - y)^T (Xc - y)

Оценка наименьших квадратов c^\hat{c} — это оценка, которая минимизирует квадратическую ошибку:

c^=argmincS2(c)\hat{c} = \arg\min_c S^2(c)

Утверждение: формула для c^\hat{c}

В рамках наших предположений можно написать точную формулу:

c^=A1XTy\boxed{\hat{c} = A^{-1} X^T y}

Доказательство

Обычно доказательство ведётся через дифференцирование S2(c)S^2(c) по cc и приравнивание градиента к нулю. Однако докажем «в лоб» — по ходу доказательства получим важное соотношение, которое будет использовано в дальнейшем.

Рассмотрим S2(c^+h)S^2(\hat{c} + h), где hh — некоторое приращение. Распишем:

S2(c^+h)=(X(c^+h)y)T(X(c^+h)y)S^2(\hat{c} + h) = (X(\hat{c} + h) - y)^T (X(\hat{c} + h) - y)

Сгруппируем так:

=((Xc^y)+Xh)T((Xc^y)+Xh)= \big( (X\hat{c} - y) + Xh \big)^T \big( (X\hat{c} - y) + Xh \big)

Раскрываем скобки:

=(Xc^y)T(Xc^y)S2(c^)+hTXT(Xc^y)+(Xc^y)TXh+hTXTXh= \underbrace{(X\hat{c} - y)^T(X\hat{c} - y)}_{S^2(\hat{c})} + h^T X^T (X\hat{c} - y) + (X\hat{c} - y)^T X h + h^T X^T X h

Анализ перекрёстных членов

Распишем hTXT(Xc^y)h^T X^T (X\hat{c} - y), подставляя c^=A1XTy\hat{c} = A^{-1} X^T y:

hTXTXA1XTyhTXTyh^T X^T X \cdot A^{-1} X^T y - h^T X^T y

Поскольку A=XTXA = X^T X и AA обратима (по предположению о ранге):

XTXA1=AA1=IX^T X \cdot A^{-1} = A \cdot A^{-1} = I

Поэтому:

hTXTyhTXTy=0h^T X^T y - h^T X^T y = 0

Аналогично второй перекрёстный член:

(Xc^y)TXh=(XA1XTyy)TXh=yTXA1XTXhyTXh=yTXhyTXh=0(X\hat{c} - y)^T Xh = (X A^{-1} X^T y - y)^T Xh = y^T X A^{-1} X^T X h - y^T X h = y^T X h - y^T X h = 0

Итоговое соотношение

Таким образом:

S2(c^+h)=S2(c^)+hTXTXh=S2(c^)+hTAhS^2(\hat{c} + h) = S^2(\hat{c}) + h^T X^T X h = S^2(\hat{c}) + h^T A h

Заметим, что hTAh=hTXTXh=(Xh)T(Xh)0h^T A h = h^T X^T X h = (Xh)^T (Xh) \geq 0 — скалярное произведение вектора на себя.

Поскольку rank(A)=m\text{rank}(A) = m, матрица AA не вырождена, значит, она строго положительно определена. Это означает: если h0h \neq 0, то hTAh>0h^T A h > 0, то есть:

S2(c^+h)>S2(c^)S^2(\hat{c} + h) > S^2(\hat{c})

Тем самым доказано, что c^=A1XTy\hat{c} = A^{-1} X^T y действительно является минимумом. ∎

Важное соотношение, полученное по ходу доказательства

Если положить c1=c^+hc_1 = \hat{c} + h, c2=c^c_2 = \hat{c}, то h=c1c2h = c_1 - c_2, и мы получили:

S2(c1)S2(c2)=(c1c2)TA(c1c2)\boxed{S^2(c_1) - S^2(c_2) = (c_1 - c_2)^T A (c_1 - c_2)}

Это соотношение будет использоваться в дальнейших выкладках.

Практическое замечание

С вычислительной точки зрения формула c^=A1XTy\hat{c} = A^{-1} X^T y не самая удобная: нужно обращать матрицы, перемножать их. На практике обычно используются численные методы:

  • оптимизация исходной функции ошибок;
  • численное решение уравнения градиент = 0.

Теорема Гаусса–Маркова

Это фундаментальная теорема в рамках линейных моделей. Традиционно она формулируется для самой оценки наименьших квадратов, но здесь рассмотрим более общее утверждение.

Постановка

Рассмотрим линейную функцию от вектора коэффициентов:

τ=Tc\tau = T c

где TT — матрица k×mk \times m, kmk \leq m, rank(T)=k\text{rank}(T) = k.

Если взять T=IT = I (единичная матрица), получим теорему Гаусса–Маркова для обычной оценки наименьших квадратов.

Введём оценку:

τ^=Tc^\hat{\tau} = T \hat{c}

Зачем нужно TT?

В дальнейшем будут проверяться гипотезы о векторе cc при линейных ограничениях. Соотношение Tc=τTc = \tau как раз задаёт линейное ограничение. В качестве нулевой гипотезы стат-теста будет выступать предположение, что cc удовлетворяет каким-то линейным ограничениям.

Формулировка

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

(а) τ^\hat{\tau}несмещённая оценка для τ\tau:

Eτ^=τ\mathbb{E}\hat{\tau} = \tau

(б) Матрица ковариаций cov(τ^)=σ2TA1TT\text{cov}(\hat{\tau}) = \sigma^2 T A^{-1} T^T, и τ^\hat{\tau}оптимальная оценка для τ\tau в классе линейных по yy несмещённых оценок.

Доказательство (а): несмещённость

Eτ^=E[Tc^]=E[TA1XTy]\mathbb{E}\hat{\tau} = \mathbb{E}[T \hat{c}] = \mathbb{E}[T A^{-1} X^T y]

TT, A1A^{-1}, XTX^T — константы, выносим за знак мат. ожидания:

=TA1XTEy=TA1XTE[Xc+ε]=TA1XTXc= T A^{-1} X^T \mathbb{E} y = T A^{-1} X^T \mathbb{E}[Xc + \varepsilon] = T A^{-1} X^T X c

(поскольку Eε=0\mathbb{E}\varepsilon = 0, а XcXc — константа). Учитывая XTX=AX^T X = A:

=TA1Ac=Tc=τ= T A^{-1} A c = T c = \tau \quad \blacksquare

Доказательство (б): матрица ковариаций

cov(τ^)=cov(Tc^)=Tcov(c^)TT\text{cov}(\hat{\tau}) = \text{cov}(T \hat{c}) = T \cdot \text{cov}(\hat{c}) \cdot T^T

Замечание (вопрос студента): в одномерном случае D(aX)=a2DX\mathbb{D}(aX) = a^2 \mathbb{D}X, но в многомерном случае матрица ковариаций aXaX — это Acov(X)ATA \cdot \text{cov}(X) \cdot A^T. Это именно матрица ковариаций, а не дисперсия в квадрате, потому что τ^\hat{\tau} — это случайный вектор (многомерная величина).

Считаем cov(c^)\text{cov}(\hat{c}):

cov(c^)=cov(A1XTy)=A1XTcov(y)XA1\text{cov}(\hat{c}) = \text{cov}(A^{-1} X^T y) = A^{-1} X^T \cdot \text{cov}(y) \cdot X A^{-1}

Симметрия A1A^{-1}: A=XTXA = X^T X симметрична (AT=(XTX)T=XTX=AA^T = (X^T X)^T = X^T X = A), значит, A1A^{-1} тоже симметрична. Поэтому (A1)T=A1(A^{-1})^T = A^{-1}.

Считаем cov(y)\text{cov}(y):

cov(y)=cov(Xc+ε)\text{cov}(y) = \text{cov}(Xc + \varepsilon)

XcXc — константа, сдвиг на матрицу ковариаций не влияет (аналогично одномерному случаю, где D(X+a)=DX\mathbb{D}(X+a) = \mathbb{D}X):

cov(y)=cov(ε)\text{cov}(y) = \text{cov}(\varepsilon)

Поскольку компоненты ε\varepsilon некоррелированы и имеют одинаковую дисперсию σ2\sigma^2:

cov(ε)=σ2I\text{cov}(\varepsilon) = \sigma^2 I

Подставляем:

cov(c^)=A1XTσ2IXA1=σ2A1XTXAA1=σ2A1\text{cov}(\hat{c}) = A^{-1} X^T \cdot \sigma^2 I \cdot X A^{-1} = \sigma^2 A^{-1} \underbrace{X^T X}_{A} A^{-1} = \sigma^2 A^{-1}

Итого:

cov(τ^)=σ2TA1TT\boxed{\text{cov}(\hat{\tau}) = \sigma^2 T A^{-1} T^T}

Введём обозначение:

D=TA1XTD = T A^{-1} X^T

(к этому обозначению вернёмся позже).

Доказательство (б): оптимальность

Напоминание: критерий оптимальности

Для несмещённых оценок: оценка оптимальна, если у неё минимальная дисперсия. В многомерном случае оптимизируется:

MSE(θ^)=E[(θ^θ)T(θ^θ)]\text{MSE}(\hat{\theta}) = \mathbb{E}\big[(\hat{\theta} - \theta)^T (\hat{\theta} - \theta)\big]

Можно показать, что:

MSE(θ^)=tr(cov(θ^))+biasTbias\text{MSE}(\hat{\theta}) = \text{tr}(\text{cov}(\hat{\theta})) + \text{bias}^T \text{bias}

где tr\text{tr}след матрицы (сумма диагональных элементов), а bias=Eθ^θ\text{bias} = \mathbb{E}\hat{\theta} - \theta.

Это обобщение одномерной формулы MSE=D+bias2\text{MSE} = \mathbb{D} + \text{bias}^2.

В нашем случае оценка несмещённая, поэтому bias=0\text{bias} = 0 — нужно минимизировать tr(cov(τ^))\text{tr}(\text{cov}(\hat{\tau})).

Шаг A: произвольная линейная несмещённая оценка

Пусть L^=Ly\hat{L} = L y — произвольная линейная по yy несмещённая оценка для τ\tau:

E[Ly]=τ\mathbb{E}[L y] = \tau

С другой стороны:

E[Ly]=LE[Xc+ε]=LXc\mathbb{E}[L y] = L \cdot \mathbb{E}[Xc + \varepsilon] = L X c

Поскольку τ=Tc\tau = T c, получаем Tc=LXcT c = L X c для любого cc. Отсюда:

T=LX\boxed{T = L X}

Шаг B: переобозначение

Прибавим и вычтем TA1XTT A^{-1} X^T:

L=(LTA1XT)L^+TA1XTL = \underbrace{(L - T A^{-1} X^T)}_{\hat{L}} + T A^{-1} X^T

Введём L^=LTA1XT\hat{L} = L - T A^{-1} X^T. Тогда:

L=L^+TA1XTL = \hat{L} + T A^{-1} X^T

Дополнительное соотношение

Из T=LXT = L X домножим обе части на XX справа… нет, у нас уже T=LXT = LX. Подставим L=L^+TA1XTL = \hat{L} + T A^{-1} X^T:

T=L^X+TA1XTXA=L^X+TT = \hat{L} X + T A^{-1} \underbrace{X^T X}_{A} = \hat{L} X + T

Отсюда:

L^X=0\boxed{\hat{L} X = 0}

Транспонируя: XTL^T=0X^T \hat{L}^T = 0.

Шаг C: матрица ковариаций для LyL y

cov(Ly)=Lcov(y)LT=σ2LLT\text{cov}(L y) = L \cdot \text{cov}(y) \cdot L^T = \sigma^2 L L^T

Распишем σ2LLT\sigma^2 L L^T, подставляя L=TA1XT+L^L = T A^{-1} X^T + \hat{L}:

σ2LLT=σ2(TA1XT+L^)(TA1XT+L^)T\sigma^2 L L^T = \sigma^2 (T A^{-1} X^T + \hat{L})(T A^{-1} X^T + \hat{L})^T

Раскрываем:

=σ2[TA1XTXAA1TT+TA1XTL^T+L^XA1TT+L^L^T]= \sigma^2 \big[ T A^{-1} \underbrace{X^T X}_{A} A^{-1} T^T + T A^{-1} X^T \hat{L}^T + \hat{L} X A^{-1} T^T + \hat{L} \hat{L}^T \big]

Используем L^X=0\hat{L} X = 0 и XTL^T=0X^T \hat{L}^T = 0 — средние два слагаемых обнуляются:

cov(Ly)=σ2TA1TT+σ2L^L^T\text{cov}(L y) = \sigma^2 T A^{-1} T^T + \sigma^2 \hat{L} \hat{L}^T

Финальный шаг: оптимизация следа

Получили:

cov(Ly)=σ2TA1TTcov(τ^), не зависит от выбора L+σ2L^L^Tзависит от L^\text{cov}(L y) = \underbrace{\sigma^2 T A^{-1} T^T}_{\text{cov}(\hat{\tau}),\ \text{не зависит от выбора } L} + \underbrace{\sigma^2 \hat{L} \hat{L}^T}_{\text{зависит от } \hat{L}}

Считаем след:

tr(L^L^T)=i(L^L^T)ii=ijL^ij2\text{tr}(\hat{L} \hat{L}^T) = \sum_i (\hat{L} \hat{L}^T)_{ii} = \sum_i \sum_j \hat{L}_{ij}^2

(диагональный элемент (L^L^T)ii(\hat{L} \hat{L}^T)_{ii} — это ii-я строка, скалярно умноженная на саму себя, то есть сумма квадратов её элементов).

Минимум суммы квадратов достигается при L^ij=0\hat{L}_{ij} = 0 для всех i,ji, j, то есть L^=0\hat{L} = 0. А это в точности означает, что L=TA1XTL = T A^{-1} X^T — то есть, что Ly=τ^L y = \hat{\tau}.

Таким образом, оценка наименьших квадратов оптимальна в классе линейных несмещённых оценок. ∎


Точечная оценка для σ2\sigma^2

Найдём несмещённую оценку для остаточной дисперсии σ2\sigma^2.

Шаг 1: вычислим ES2(c)\mathbb{E} S^2(c)

ES2(c)=E[(Xcy)T(Xcy)]\mathbb{E} S^2(c) = \mathbb{E}\big[(Xc - y)^T (Xc - y)\big]

Поскольку Xcy=εXc - y = -\varepsilon:

=E[εTε]=Ei=1nεi2=i=1nEεi2= \mathbb{E}[\varepsilon^T \varepsilon] = \mathbb{E}\sum_{i=1}^n \varepsilon_i^2 = \sum_{i=1}^n \mathbb{E}\varepsilon_i^2

Используем:

Eεi2=Dεi+(Eεi)2=σ2+0=σ2\mathbb{E}\varepsilon_i^2 = \mathbb{D}\varepsilon_i + (\mathbb{E}\varepsilon_i)^2 = \sigma^2 + 0 = \sigma^2

Итого:

ES2(c)=nσ2\boxed{\mathbb{E} S^2(c) = n \sigma^2}

Шаг 2: вычислим E[S2(c)S2(c^)]\mathbb{E}[S^2(c) - S^2(\hat{c})]

Используем выведенное ранее соотношение:

S2(c)S2(c^)=(c^c)TA(c^c)S^2(c) - S^2(\hat{c}) = (\hat{c} - c)^T A (\hat{c} - c)

(подставили c1=cc_1 = c, c2=c^c_2 = \hat{c}, h=cc^h = c - \hat{c}, но из-за симметрии знак не важен).

Расписываем по компонентам:

E[S2(c)S2(c^)]=Ei,j(c^ici)Aij(c^jcj)\mathbb{E}[S^2(c) - S^2(\hat{c})] = \mathbb{E} \sum_{i,j} (\hat{c}_i - c_i) A_{ij} (\hat{c}_j - c_j)

По линейности мат. ожидания (и поскольку ci=Ec^ic_i = \mathbb{E}\hat{c}_i — несмещённость):

=i,jAijE[(c^iEc^i)(c^jEc^j)]=i,jAijcov(c^i,c^j)= \sum_{i,j} A_{ij} \cdot \mathbb{E}\big[(\hat{c}_i - \mathbb{E}\hat{c}_i)(\hat{c}_j - \mathbb{E}\hat{c}_j)\big] = \sum_{i,j} A_{ij} \cdot \text{cov}(\hat{c}_i, \hat{c}_j)

Замечание о матрице ковариаций c^\hat{c}

В теореме Гаусса–Маркова матрица ковариаций τ^\hat{\tau} равна σ2TA1TT\sigma^2 T A^{-1} T^T. Подставляя T=IT = I, получаем:

cov(c^)=σ2A1\text{cov}(\hat{c}) = \sigma^2 A^{-1}

Поэтому cov(c^i,c^j)=σ2(A1)ij\text{cov}(\hat{c}_i, \hat{c}_j) = \sigma^2 (A^{-1})_{ij}.

Продолжение вычислений

E[S2(c)S2(c^)]=σ2i,jAij(A1)ij\mathbb{E}[S^2(c) - S^2(\hat{c})] = \sigma^2 \sum_{i,j} A_{ij} (A^{-1})_{ij}

Используя симметрию AA: Aij=AjiA_{ij} = A_{ji}, и заметим:

i,jAji(A1)ij=i(AA1)ii=iIii=m\sum_{i,j} A_{ji} (A^{-1})_{ij} = \sum_i (A \cdot A^{-1})_{ii} = \sum_i I_{ii} = m

(строка матрицы AA умножается на столбец A1A^{-1} — это диагональный элемент произведения AA1=IA A^{-1} = I).

Итого:

E[S2(c)S2(c^)]=σ2m\mathbb{E}[S^2(c) - S^2(\hat{c})] = \sigma^2 \cdot m

Шаг 3: окончательная формула

Из шагов 1 и 2:

ES2(c^)=ES2(c)σ2m=nσ2mσ2=(nm)σ2\mathbb{E} S^2(\hat{c}) = \mathbb{E} S^2(c) - \sigma^2 m = n\sigma^2 - m\sigma^2 = (n - m) \sigma^2

Откуда:

E[S2(c^)nm]=σ2\boxed{\mathbb{E}\left[\frac{S^2(\hat{c})}{n - m}\right] = \sigma^2}

Таким образом, несмещённая оценка остаточной дисперсии:

σ^2=S2(c^)nm\hat{\sigma}^2 = \frac{S^2(\hat{c})}{n - m}

Аналогия с выборочной дисперсией

Можно провести параллель с обычной выборочной дисперсией. Когда мы считали выборочную дисперсию, делённую на nn, она оказывалась смещённой; чтобы сделать её несмещённой, мы делили на n1n - 1.

Здесь аналогично: если бы мы делили квадратическую ошибку на nn, оценка была бы смещённой. А деление на nmn - m (разность между количеством наблюдений и количеством переменных) даёт несмещённую оценку σ2\sigma^2.


Анонс следующей лекции

Сегодня были рассмотрены точечные оценки для c^\hat{c} и σ2\sigma^2. В следующий раз будут рассмотрены:

  • Интервальное оценивание (доверительные интервалы);
  • Проверка различных статистических гипотез.