Ядерная регрессия
Ядерная регрессия (англ. kernel regression) — непараметрический статистический метод, позволяющий оценить условное математическое ожидание случайной величины. Его смысл заключается в поиске нелинейного отношения между парой случайных величин X и Y.
В любой непараметрической регрессии условное матожидание величины Y {displaystyle Y} относительно величины X {displaystyle X} можно записать так:
E ( Y | X ) = m ( X ) {displaystyle operatorname {E} (Y|X)=m(X)}
где m {displaystyle m} — некая неизвестная функция.
Ядерная регрессия Надарая — Уотсона
Надарая и Уотсон одновременно (в 1964 году) предложили оценивать m {displaystyle m} как локально взвешенное среднее, где веса определялись бы ядром.Оценка Надарая — Уотсона:
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 {displaystyle K} — ядро с шириной окна h {displaystyle h} . Знаменатель представляет собой весовой член с единичной суммой.
Получение
E ( Y | X = x ) = ∫ y f ( y | x ) d y = ∫ y f ( x , y ) f ( x ) d y {displaystyle operatorname {E} (Y|X=x)=int yf(y|x)dy=int y{frac {f(x,y)}{f(x)}}dy}
Находя ядерную оценку плотности для совместного распределения f(x,y) и распределения 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}left(x-x_{i}
ight)K_{h}left(y-y_{i}
ight)} ,
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}left(x-x_{i}
ight)} ,
получаем
E ^ ( Y | X = x ) = ∫ y ∑ i = 1 n K h ( x − x i ) K h ( y − y i ) ∑ i = 1 n K h ( x − x i ) d y , {displaystyle operatorname {hat {E}} (Y|X=x)=int {frac {ysum _{i=1}^{n}K_{h}left(x-x_{i} ight)K_{h}left(y-y_{i} ight)}{sum _{i=1}^{n}K_{h}left(x-x_{i} ight)}}dy,}
E ^ ( Y | X = x ) = ∑ i = 1 n K h ( x − x i ) ∫ y K h ( y − y i ) d y ∑ i = 1 n K h ( x − x i ) , {displaystyle operatorname {hat {E}} (Y|X=x)={frac {sum _{i=1}^{n}K_{h}left(x-x_{i} ight)int y,K_{h}left(y-y_{i} ight)dy}{sum _{i=1}^{n}K_{h}left(x-x_{i} ight)}},}
E ^ ( Y | X = x ) = ∑ i = 1 n K h ( x − x i ) y i ∑ i = 1 n K h ( x − x i ) , {displaystyle operatorname {hat {E}} (Y|X=x)={frac {sum _{i=1}^{n}K_{h}left(x-x_{i} ight)y_{i}}{sum _{i=1}^{n}K_{h}left(x-x_{i} ight)}},}
это и есть оценка Надарая — Уотсона.
Ядерная оценка Пристли — Чжао
m ^ P C ( x ) = h − 1 ∑ i = 1 n ( x i − x i − 1 ) K ( x − x i h ) y i {displaystyle {widehat {m}}_{PC}(x)=h^{-1}sum _{i=1}^{n}(x_{i}-x_{i-1})Kleft({frac {x-x_{i}}{h}} ight)y_{i}}
Ядерная оценка Гассера — Мюллера
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}}Kleft({frac {x-u}{h}} ight)du ight]y_{i}}
где s i = x i − 1 + x i 2 {displaystyle s_{i}={frac {x_{i-1}+x_{i}}{2}}}
В статистических пакетах
- MATLAB: свободно распространяемый инструментарий для ядерных регрессий, оценок плотности и проч. доступны по ссылке (является приложением к книге).
- Stata: kernreg2
- R: функция npreg в пакете np способна построить ядерную регрессию.
- Python: пакет kernel_regression (расширение sklearn).
- GNU Octave: математический программный пакет.