Regresión del kernel - Kernel regression
En estadística , la regresión Kernel es una técnica no paramétrica para estimar la expectativa condicional de una variable aleatoria . El objetivo es encontrar una relación no lineal entre un par de variables aleatorias X y Y .
En cualquier regresión no paramétrica , la expectativa condicional de una variable relativa a una variable se puede escribir:
donde es una función desconocida.
Regresión del kernel de Nadaraya-Watson
Nadaraya y Watson , ambos en 1964, propusieron estimar como un promedio ponderado localmente, utilizando un kernel como función de ponderación. El estimador de Nadaraya-Watson es:
donde es un kernel con ancho de banda .
Derivación
Usando la estimación de densidad kernel para la distribución conjunta f (x, y) y f (x) con un núcleo K ,
, ,
obtenemos
que es el estimador de Nadaraya-Watson.
Estimador de kernel de Priestley-Chao
donde es el ancho de banda (o parámetro de suavizado).
Estimador de kernel de Gasser-Müller
dónde
Ejemplo
Este ejemplo se basa en datos de salarios de corte transversal canadiense que consisten en una muestra aleatoria tomada de las cintas de uso público del censo canadiense de 1971 para individuos masculinos que tienen una educación común (grado 13). Hay 205 observaciones en total.
La figura de la derecha muestra la función de regresión estimada usando un kernel gaussiano de segundo orden junto con límites de variabilidad asintótica
Script por ejemplo
Los siguientes comandos del lenguaje de programación R utilizan la npreg()
función para ofrecer un suavizado óptimo y crear la figura dada anteriormente. Estos comandos se pueden ingresar en el símbolo del sistema mediante cortar y pegar.
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)
Relacionados
Según David Salsburg , los algoritmos utilizados en la regresión del kernel se desarrollaron de forma independiente y se utilizaron en sistemas difusos : "Con casi exactamente el mismo algoritmo informático, los sistemas difusos y las regresiones basadas en la densidad del kernel parecen haberse desarrollado de forma completamente independiente entre sí. "
Implementación estadística
- Paquete de programa matemático GNU Octave
- Julia : KernelEstimator.jl
- MATLAB : Una caja de herramientas MATLAB gratuita con implementación de regresión del kernel, estimación de la densidad del kernel, estimación del kernel de la función de peligro y muchas otras está disponible en estas páginas (esta caja de herramientas es parte del libro).
-
Python : la
KernelReg
clase para tipos de datos mixtos en el subpaquetestatsmodels.nonparametric
(incluye otras clases relacionadas con la densidad del kernel), el paquete kernel_regression como una extensión de sklearn (memoria ineficiente, útil solo para conjuntos de datos pequeños) -
R : la función
npreg
del paquete np puede realizar una regresión del kernel. - Stata : npregress , kernreg2
Ver también
Referencias
Otras lecturas
- Henderson, Daniel J .; Parmeter, Christopher F. (2015). Econometría no paramétrica aplicada . Prensa de la Universidad de Cambridge. ISBN 978-1-107-01025-3.
- Li, Qi; Racine, Jeffrey S. (2007). Econometría no paramétrica: teoría y práctica . Prensa de la Universidad de Princeton. ISBN 0-691-12161-3.
- Pagan, A .; Ullah, A. (1999). Econometría no paramétrica . Prensa de la Universidad de Cambridge. ISBN 0-521-35564-8.
- Simonoff, Jeffrey S. (1996). Métodos de suavizado en estadística . Saltador. ISBN 0-387-94716-7.
enlaces externos
- Regresión de kernel adaptativa a escala (con software Matlab).
- Tutorial de regresión Kernel mediante hoja de cálculo (con Microsoft Excel ).
- Una demostración de regresión del kernel en línea Requiere .NET 3.0 o posterior.
- Regresión del kernel con selección automática de ancho de banda (con Python)