Линейна регресия с m променливи (множествена регресия)

Страницата е създадена на:14 март 2018 и редактирана на:15 юни 2019

Нека при `n` измервания да са регисрирани стойностите на `m + 1` случайни велимини `X_1`, `X_2`, `X_3`, ... `X_m` и `Y`. Да представим измерените стойности на величините във вид на матрици:

(164.1)
`X = ((x_(11), x_(12), ..., x_(1m)), (x_(21), x_(22), ..., x_(2m)), (..., ..., ..., ...), (x_(n1), x_(n2), ..., x_(nm)))` и   `Y = ((y_1), (y_2), (...), (y_n))`

Разглеждаме хомогенен линеен модел на зависимостта на величината `Y` от величините `X_1`, `X_2`, ... `X_m`:

`Y = a_1 X_1 + a_2 X_2 + ... + a_m X_m`

Изчислените по този модел стойности на `Y`, съответстващи на измерените стойности на `X` са:

`y'_i = a_1 x_(i1) + a_2 x_(i2) + ... + a_m x_(im)`

Коефициентите `a_1`, `a_2`, ..., `a_m` подлежат на определяне по начин, който осигурява максимална точност на модела. За да ги намерим използваме метода на най-малките квадрати, при който коефициентите се намират от условието сумата от квадратите на разликите между изчислените и измарени стойности на `Y`:

`sum_(i=1)^n (y'_i - y_i)^2 = sum_(i=1)^n (a_1 x_(i1) + a_2 x_(i2) + ... + a_m x_(im) - y_i)^2`

да е минимална. За да намерим коефициентит `a_i` съответстващи на минимума, диференцираме по всеки от коефициентите и приравняваме производната на сумата от квадрати на нула.

`partial /(partial a_j)( sum_(i=1)^n (a_1 x_(i1) + a_2 x_(i2) + ... + a_m x_(im) - y_i)^2) = `

`= sum_(i=1)^n 2 (a_1 x_(i1) + a_2 x_(i2) + ... + a_m x_(im) - y_i) x_(ij) = 0`

Така получаваме система от `m` линейни уравнения:

`a_1 sum_(i=1)^n x_(i1) x_(ij) + a_2 sum_(i=1)^n x_(i2) x_(ij) + ... + a_m sum_(i=1)^n x_(im) x_(ij) - sum_(i=1)^n y_i x_(ij) = 0`

която, при използване на матричните означения (164.1), може да се представи в матричен вид:

`X^T X A = X^T Y`

а решението на тази система в матричен вид е:

`A = (X^T X)^-1 X^T Y`

В последните формули с `X^T` е означена транспинираната матрица на матрицата `X`.

Ако резглеждаме нехомогенен линеен модел:

`Y = a_0 + a_1 X_1 + a_2 X_2 + ... + a_m X_m`

То той се решава аналогично чрез добавяне на още една независима променлива с константна стойност `X_0 = 1`. Тогава матрицата `X` от формула (164.1) има вида:

`X = ((1, x_(11), x_(12), ..., x_(1m)), (1, x_(21), x_(22), ..., x_(2m)), (..., ..., ..., ..., ...), (1, x_(n1), x_(n2), ..., x_(nm)))`

Сащото решение може да се използва и при други модели, например, за полином на една променлива:

`Y = a_0 + a_1 X + a_2 X^2 + ... + a_m X^m`

използваме матрица `X` от вида:

`X = ((1, x_1, x_1^2, ..., x_1^m), (1, x_2, x_2^2, ..., x_2^m), (..., ..., ..., ..., ...), (1, x_n, x_n^2, ..., x_n^m))`

 

Copyright CC BY-ND 4.0.
Посещения на страницата: общо 2941 днес 0
Направено с VanyoG CMS.

Force Reload