YaChudo

Ядрова регресія

Переглядів: 0. Оновлено 14.11.2026.

У статистиці ядрова регресія (англ. kernel regression) — це непараметрична методика оцінки умовного матсподівання випадкової величини. Завдання полягає в тому, щоб знайти нелінійну залежність між парою випадкових величин X і Y.

У будь-якій непараметричній регресії умовне сподівання змінної Y {\displaystyle Y} відносно змінної X {\displaystyle X} можна записати:

E ⁡ ( Y ∣ X ) = m ( X ) {\displaystyle \operatorname {E} (Y\mid X)=m(X)}

де m {\displaystyle m}  — невідомою функцією.

Ядрова регресія Надараї — Вотсона

Надарая та Вотсон, обидва в 1964 році, запропонували оцінити m {\displaystyle m} як локально зважене середнє, використовуючи ядро як вагову функцію[1][2][3]. Оцінка Надараї — Вотсона:

m ^ h ( x ) = ∑ i = 1 n K h ( x − x i ) y i ∑ i = 1 n K h ( x − x i ) {\displaystyle {\widehat {m}}_{h}(x)={\frac {\sum _{i=1}^{n}K_{h}(x-x_{i})y_{i}}{\sum _{i=1}^{n}K_{h}(x-x_{i})}}}

де K h ( t ) = 1 h K ( t h ) {\displaystyle K_{h}(t)={\frac {1}{h}}K\left({\frac {t}{h}}\right)}  — ядро з пропускною спроможністю h {\displaystyle h} таке, що K ( ⋅ ) {\displaystyle K(\cdot )} має порядок принаймні 1, тобто ∫ − ∞ ∞ u K ( u ) d u = 0 {\displaystyle \int _{-\infty }^{\infty }uK(u)\,du=0} .

Виведення

Запишемо визначення умовного математичного сподівання,

E ⁡ ( Y ∣ X = x ) = ∫ y f ( y ∣ x ) d y = ∫ y f ( x , y ) f ( x ) d y {\displaystyle \operatorname {E} (Y\mid X=x)=\int yf(y\mid x)\,dy=\int y{\frac {f(x,y)}{f(x)}}\,dy}

ми оцінимо спільні розподіли f ( x , y ) {\displaystyle f(x,y)} і f ( x ) {\displaystyle f(x)} за допомогою ядрової оцінки густини з ядром K:

f ^ ( x , y ) = 1 n ∑ i = 1 n K h ( x − x i ) K h ( y − y i ) , {\displaystyle {\hat {f}}(x,y)={\frac {1}{n}}\sum _{i=1}^{n}K_{h}(x-x_{i})K_{h}(y-y_{i}),}
f ^ ( x ) = 1 n ∑ i = 1 n K h ( x − x i ) , {\displaystyle {\hat {f}}(x)={\frac {1}{n}}\sum _{i=1}^{n}K_{h}(x-x_{i}),}

Отримуємо:

E ^ ⁡ ( Y ∣ X = x ) = ∫ y f ^ ( x , y ) f ^ ( x ) d y , = ∫ y ∑ i = 1 n K h ( x − x i ) K h ( y − y i ) ∑ j = 1 n K h ( x − x j ) d y , = ∑ i = 1 n K h ( x − x i ) ∫ y K h ( y − y i ) d y ∑ j = 1 n K h ( x − x j ) , = ∑ i = 1 n K h ( x − x i ) y i ∑ j = 1 n K h ( x − x j ) , {\displaystyle {\begin{aligned}\operatorname {\hat {E}} (Y\mid X=x)&=\int y{\frac {{\hat {f}}(x,y)}{{\hat {f}}(x)}}\,dy,\\[6pt]&=\int y{\frac {\sum _{i=1}^{n}K_{h}(x-x_{i})K_{h}(y-y_{i})}{\sum _{j=1}^{n}K_{h}(x-x_{j})}}\,dy,\\[6pt]&={\frac {\sum _{i=1}^{n}K_{h}(x-x_{i})\int y\,K_{h}(y-y_{i})\,dy}{\sum _{j=1}^{n}K_{h}(x-x_{j})}},\\[6pt]&={\frac {\sum _{i=1}^{n}K_{h}(x-x_{i})y_{i}}{\sum _{j=1}^{n}K_{h}(x-x_{j})}},\end{aligned}}}

що і є оцінкою Надараї — Вотсона.

Ядрова оцінка Прістлі — Чао

m ^ P C ( x ) = h − 1 ∑ i = 2 n ( x i − x i − 1 ) K ( x − x i h ) y i {\displaystyle {\widehat {m}}_{PC}(x)=h^{-1}\sum _{i=2}^{n}(x_{i}-x_{i-1})K\left({\frac {x-x_{i}}{h}}\right)y_{i}}

де h {\displaystyle h} це пропускна спроможність (або ж параметр згладжування).

Ядрова оцінка Гассера — Мюллера

m ^ G M ( x ) = h − 1 ∑ i = 1 n [ ∫ s i − 1 s i K ( x − u h ) d u ] y i {\displaystyle {\widehat {m}}_{GM}(x)=h^{-1}\sum _{i=1}^{n}\left[\int _{s_{i-1}}^{s_{i}}K\left({\frac {x-u}{h}}\right)\,du\right]y_{i}}

де s i = x i − 1 + x i 2 . {\displaystyle s_{i}={\frac {x_{i-1}+x_{i}}{2}}.} [4]

Приклад

Оцінена регресійна функція

Цей приклад базується на канадських перехресних даних про заробітну плату, які складаються з випадкової вибірки, взятої із записів Канадського перепису громадського вжитку 1971 року для осіб чоловічої статі із загальною освітою (13 клас). Всього 205 спостережень[джерело?].

На рисунку праворуч показано оцінену функцію регресії з використанням ядра Гауса другого порядку разом із межами асимптотичної мінливості.

Приклад з кодом

Наведені нижче команди мови програмування R використовують функцію npreg() для реалізації оптимального згладжування та створення рисунка, наведеного вище. Ці команди можна вводити в командному рядку просто скопіювавши.

install.packages("np")
library(np) # non parametric library
data(cps71)
attach(cps71)

m <- npreg(logwage~age)

plot(m, plot.errors.method="asymptotic",
     plot.errors.style="band",
     ylim=c(11, 15.2))

points(age, logwage, cex=.25)
detach(cps71)

Пов'язані

За словами Девіда Салсбурга, алгоритми, що використовуються в ядровій регресії, були незалежно розроблені та використані в нечітких системах: «З майже однаковим комп'ютерним алгоритмом нечіткі системи та ядрові регресії на основі густини, здається, були розроблені абсолютно незалежно одна від одної.»[5]

Імплементація в статистичних пакетах

  • Пакет математичних програм GNU Octave
  • Julia: KernelEstimator.jl
  • MATLAB: на цих сторінках доступний безкоштовний набір інструментів MATLAB із реалізацією ядрової регресії, ядрової оцінки густини, ядрової оцінки функції небезпеки та багатьох інших (цей набір інструментів є частиною книги [6]).
  • Python: клас KernelReg для змішаних типів даних у підпакеті statsmodels.nonparametric (включає інші класи, пов'язані з густиною ядра), пакет kernel_regression як розширення scikit-learn (неефективний з точки зору пам'яті, корисний лише для невеликих наборів даних)
  • R: функція npreg пакета np може виконувати ядрову регресію.[7]
  • Stata: npregress, kernreg2

Див. також

Список літератури

  1. ↑ Nadaraya, E. A. (1964). On Estimating Regression. Theory of Probability and Its Applications. 9 (1): 141—2. doi:10.1137/1109020.
  2. ↑ Watson, G. S. (1964). Smooth regression analysis. Sankhyā: The Indian Journal of Statistics, Series A. 26 (4): 359—372. JSTOR 25049340.
  3. ↑ Bierens, Herman J. (1994). The Nadaraya–Watson kernel regression function estimator. Topics in Advanced Econometrics. New York: Cambridge University Press. с. 212–247. ISBN 0-521-41900-X.
  4. ↑ Gasser, Theo; Müller, Hans-Georg (1979). Kernel estimation of regression functions. Smoothing techniques for curve estimation (Proc. Workshop, Heidelberg, 1979). Lecture Notes in Math. Т. 757. Springer, Berlin. с. 23—68. ISBN 3-540-09706-6. MR 0564251.
  5. ↑ Salsburg, D. (2002). The Lady Tasting Tea: How Statistics Revolutionized Science in the Twentieth Century. W.H. Freeman. с. 290—91. ISBN 0-8050-7134-2.
  6. ↑ Horová, I.; Koláček, J.; Zelinka, J. (2012). Kernel Smoothing in MATLAB: Theory and Practice of Kernel Smoothing. Singapore: World Scientific Publishing. ISBN 978-981-4405-48-5.
  7. ↑ Kloke, John; McKean, Joseph W. (2014). Nonparametric Statistical Methods Using R. CRC Press. с. 98—106. ISBN 978-1-4398-7343-4.

Література

Посилання

Джерело: стаття у Вікіпедії та історія редагувань (автори).