Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Distribución del kernel

Visión general

A kernel distribution is a nonparametric representation of the probability density function (pdf) of a random variable. You can use a kernel distribution when a parametric distribution cannot properly describe the data, or when you want to avoid making assumptions about the distribution of the data. A kernel distribution is defined by a smoothing function and a bandwidth value, which control the smoothness of the resulting density curve.

Kernel density Estimmator

El estimador de densidad del kernel es el pdf estimado de una variable aleatoria. Para cualquier valor real de, la fórmula del estimador de densidad del kernel viene dada porx

f^h(x)=1nhi=1nK(xxih),

Dónde X1, X2, ..., Xn son muestras aleatorias de una distribución desconocida, es el tamaño de la muestra,n K(·) es la función de suavizado del kernel y es el ancho de banda.h

Función de suavizado del kernel

La función de suavizado del kernel define la forma de la curva utilizada para generar el pdf. Al igual que en un histograma, la distribución del kernel compila una función para representar la distribución de probabilidad utilizando los datos de ejemplo. Pero a diferencia de un histograma, que coloca los valores en bins discretos, una distribución de kernel suma las funciones de suavizado de componentes para cada valor de datos para producir una curva de probabilidad continua y fluida. Las siguientes parcelas muestran una comparación visual de un histograma y una distribución del kernel generada a partir de los mismos datos de ejemplo.

Un histograma representa la distribución de probabilidad estableciendo bins y colocando cada valor de datos en la ubicación adecuada.

SixMPG = [13;15;23;29;32;34]; figure histogram(SixMPG) 

Debido a este enfoque de recuento de bin, el histograma produce una función de densidad de probabilidad discreta. Esto podría ser inadecuado para ciertas aplicaciones, como la generación de números aleatorios a partir de una distribución ajustada.

Alternativamente, la distribución del kernel construye el pdf creando una curva de densidad de probabilidad individual para cada valor de datos, luego sumando las curvas suaves. Este enfoque crea una función de densidad de probabilidad continua y fluida para el conjunto de datos.

figure pdSix = fitdist(SixMPG,'Kernel','BandWidth',4); x = 0:.1:45; ySix = pdf(pdSix,x); plot(x,ySix,'k-','LineWidth',2)  % Plot each individual pdf and scale its appearance on the plot hold on for i=1:6     pd = makedist('Normal','mu',SixMPG(i),'sigma',4);     y = pdf(pd,x);     y = y/6;     plot(x,y,'b:') end hold off 

Las curvas discontinuas más pequeñas son las distribuciones de probabilidad para cada valor en los datos de muestra, escaladas para ajustarse al trazado. La curva sólida más grande es la distribución general del kernel de los datos.SixMPG La función de suavizado del kernel hace referencia a la forma de esas curvas de componentes más pequeñas, que tienen una distribución normal en este ejemplo.

Puede elegir una de las varias opciones para la función de suavizado del kernel. Esta gráfica muestra las formas de las funciones de suavizado disponibles.

Establecer especificaciones de parcela

hname = {'normal' 'epanechnikov' 'box' 'triangle'}; colors = {'r' 'b' 'g' 'm'}; lines = {'-','-.','--',':'};  % Generate a sample of each kernel smoothing function and plot data = [0]; figure for j=1:4     pd = fitdist(data,'kernel','Kernel',hname{j});     x = -3:.1:3;     y = pdf(pd,x);     plot(x,y,'Color',colors{j},'LineStyle',lines{j})     hold on end legend(hname) hold off 

Para comprender el efecto de las diferentes funciones de suavizado de kernel en la forma de la estimación PDF resultante, compare las parcelas de los datos de kilometraje () utilizando cada función del kernel disponible.MPGcarbig.mat

load carbig % Set plot specifications hname = {'normal' 'epanechnikov' 'box' 'triangle'}; colors = {'r' 'b' 'g' 'm'}; lines = {'-','-.','--',':'};  % Generate kernel distribution objects and plot figure for j=1:4     pd = fitdist(MPG,'kernel','Kernel',hname{j});     x = -10:1:60;     y = pdf(pd,x);     plot(x,y,'Color',colors{j},'LineStyle',lines{j})     hold on end legend(hname) hold off 

Cada curva de densidad utiliza los mismos datos de entrada, pero aplica una función de suavizado de kernel diferente para generar el pdf. Las estimaciones de densidad son aproximadamente comparables, pero la forma de cada curva varía ligeramente. Por ejemplo, el kernel de la caja produce una curva de densidad que es menos suave que las otras.

Banda

La elección del valor de ancho de banda controla la suavidad de la curva de densidad de probabilidad resultante. Esta gráfica muestra la estimación de densidad para los mismos datos, utilizando una función de suavizado de kernel normal con tres anchos de banda diferentes.MPG

Cree objetos de distribución del kernel

pd1 = fitdist(MPG,'kernel'); pd2 = fitdist(MPG,'kernel','BandWidth',1); pd3 = fitdist(MPG,'kernel','BandWidth',5);  % Compute each pdf x = -10:1:60; y1 = pdf(pd1,x); y2 = pdf(pd2,x); y3 = pdf(pd3,x);  % Plot each pdf plot(x,y1,'Color','r','LineStyle','-') hold on plot(x,y2,'Color','k','LineStyle',':') plot(x,y3,'Color','b','LineStyle','--') legend({'BandWidth = Default','BandWidth = 1','BandWidth = 5'}) hold off 

El ancho de banda predeterminado, que es teóricamente óptimo para estimar las densidades para la distribución normal, produce una curva razonablemente suave.[1] Especificar un ancho de banda más pequeño produce una curva muy aproximada, pero revela que puede haber dos picos principales en los datos. La especificación de un ancho de banda mayor produce una curva casi idéntica a la función del kernel y es tan suave que oscurece las características potencialmente importantes de los datos.

Referencias

[1] Bowman, A. W., and A. Azzalini. Applied Smoothing Techniques for Data Analysis. New York: Oxford University Press Inc., 1997.

Consulte también

|

Ejemplos relacionados

Más acerca de