用一下程式簡單實現使用parzen窗對正態分佈的概率密度估計:
(其中核函式選用高斯核)
%run for parzenclose all;clear all;clc;
x=normrnd(0,1,1,10000);%從正態分佈中產生樣本
f=-5:0.01:5;%確定橫座標範
% n=100 h= 0.25 , 1, 4
p1=parzen(x,0.25,10,f);
p2 = parzen(x,1,10,f);
p3 = parzen(x,4,10,f);
subplot(331)
plot(f,p1)
subplot(332)
plot(f,p2)
subplot(333)
plot(f,p3)
hold on
% n=100 h= 0.25 , 1, 4
p1=parzen(x,0.25,100,f);
p2 = parzen(x,1,100,f);
p3 = parzen(x,4,100,f);
subplot(334)
plot(f,p1)
subplot(335)
plot(f,p2)
subplot(336)
plot(f,p3)
hold on
% n=1000 h= 0.25 , 1, 4
p1=parzen(x,0.25,1000,f);
p2 = parzen(x,1,1000,f);
p3 = parzen(x,4,1000,f);
subplot(337)
plot(f,p1)
subplot(338)
plot(f,p2)
subplot(339)
plot(f,p3)
function p = parzen(x,h,n,f)% 高斯函式parzen 窗 統計落在parzen窗內的估計概率
% h - 窗長度
% n -取樣點數
b=0;
h1 = h/sqrt(n);
for i=1:length(f)
for j=1:n
b= b+ exp(((f(i)-x(j))/h1).^2/(-2))/sqrt(2*pi)/h1;
endp(i) = b/n;
b=0;
endend
實現一下模式識別(一)Parzen窗估計
自己計畫實現一遍模式識別裡的內容。parzen窗估計是非引數估計。我在非引數技術 parzen窗估計方法文章和非引數估計 parzen視窗函式法文章裡面整理出了演算法基本過程 利用第一篇部落格給出的樣本資料對給定的資料進行分類。分類的方法就是根據公式分別求出對於三個類的數值。公式是 求出來數值之後,...
matlab窗函式的頻譜 如何理解頻譜洩露?
這只是我個人的理解,錯誤之處還請指正。如果原始訊號中有頻率成分處於兩個基本函式的頻率之間,會怎麼樣呢?fig.1 a 解釋了答案,原始訊號包含兩路不同頻率的正弦波,一路頻率與基本函式匹配,一路頻率不匹配。前者用乙個點就能表示峰值,而後者則會出現乙個峰值伴隨著兩個尾巴的頻譜,即發生了譜洩露 拖尾 可以...
MATLAB2009A實現Kmeans例項
本人剛學習資料探勘沒有多久,資料探勘中要用不少聚類演算法。kmeans作為其中常用的一種演算法,聚類效果還行。下面是我做了幾個簡單的matlab實現kmeans的小例項 100 2列矩陣聚類成3類 matlab 如下 data rand 100,2 opts statset display fina...