Распределение ядра

Обзор

Распределение ядра является непараметрическим представлением функции плотности вероятности (PDF) случайной переменной. Можно использовать распределение ядра, когда параметрическое распределение не может правильно описать данные, или когда это необходимо постараться не делать предположения о распределении данных. Распределение ядра задано функцией сглаживания и значением пропускной способности, которые управляют гладкостью получившейся кривой плотности.

Средство оценки плотности ядра

Средством оценки плотности ядра является предполагаемый PDF случайной переменной. Для любых действительных значений x формулой средства оценки плотности ядра дают

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

откуда x1, x2, …, xn является случайными выборками неизвестного распределения, n является объемом выборки, K(·) функция сглаживания ядра, и h является пропускной способностью.

Функция сглаживания ядра

Функция сглаживания ядра задает форму кривой, используемой, чтобы сгенерировать PDF. Подобно гистограмме распределение ядра создает функцию, чтобы представлять распределение вероятностей с помощью выборочных данных. Но различающийся гистограмма, которая помещает значения в дискретные интервалы, распределение ядра, суммирует функции сглаживания компонента для каждого значения данных, чтобы произвести сглаженную, непрерывную кривую вероятности. Следующие графики показывают визуальное сравнение гистограммы и распределения ядра, сгенерированного от тех же выборочных данных.

Гистограмма представляет распределение вероятностей путем установления интервалов и размещения каждого значения данных в соответствующий интервал.

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

Из-за этого подхода количества интервала гистограмма производит функцию плотности дискретной вероятности. Эта сила быть неподходящим для определенных приложений, таким как генерация случайных чисел от подходящего распределения.

Также распределение ядра создает PDF путем создания отдельной кривой плотности вероятности для каждого значения данных, затем подведения итогов плавных кривых. Этот подход создает одну сглаженную, непрерывную функцию плотности вероятности для набора данных.

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

Меньшие пунктирные кривые являются распределениями вероятностей для каждого значения в выборочных данных, масштабировал для соответствия графику. Большая твердая кривая является полным распределением ядра данных SixMPG. Функция сглаживания ядра относится к форме тех меньших кривых компонента, которые имеют нормальное распределение в этом примере.

Можно выбрать одну из нескольких опций для функции сглаживания ядра. Этот график показывает формы доступных функций сглаживания.

Установите спецификации графика

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

Чтобы понять эффект различных функций сглаживания ядра на форме получившейся оценки PDF, сравните графики данных о пробеге (MPG) от carbig.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

Каждая кривая плотности использует те же входные данные, но применяет различную функцию сглаживания ядра, чтобы сгенерировать PDF. Оценки плотности примерно сопоставимы, но форма каждой кривой отличается немного. Например, ядро поля производит кривую плотности, которая менее сглаженна, чем другие.

Пропускная способность

Выбор значения пропускной способности управляет гладкостью получившейся кривой плотности вероятности. Этот график показывает оценку плотности для тех же данных MPG, с помощью нормальной функции сглаживания ядра с тремя различной пропускной способностью.

Создайте объекты распределения ядра

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

Пропускная способность по умолчанию, которая теоретически оптимальна для оценки плотности для нормального распределения [1], производит довольно плавную кривую. Определение меньшей пропускной способности производит очень грубую кривую, но показывает, что может быть два главных peaks в данных. Определение большей пропускной способности производит кривую, почти идентичную функции ядра, и так сглаженно, что это затеняет потенциально важные функции данных.

Ссылки

[1] Лучник, A. W. и А. Аццалини. Прикладные методы сглаживания для анализа данных. Нью-Йорк: Oxford University Press Inc., 1997.

Смотрите также

|

Связанные примеры

Больше о