武汉理工大学 模式识别实验报告
姓名:
姓名:班级:学号:班级: 学号:
实验一 总体概率密度分布的非参数方法
一、实验目的
1.了解使用非参数方法估计样本概率密度函数的原理。
2.了解Parzen窗法的原理及其参数h1,N对估计结果的影响。 3.掌握Parzen窗法的算法并用Matlab实现。
4.使用Matlab分析Parzen窗法的参数h1,N对估计结果的影响。
二、实验数据
一维正态分布样本,使用函数randn生成。
三、实验结果
选取的h1=0.25,1,4,N=1,16,256,4096,65536,得到15个估计结果,如下图所示。
由下面三组仿真结果可知,估计结果依赖于N和h1。当N=1时,是一个以样本为中心的小丘。当N=16和h1=0.25时,仍可以看到单个样本所起的作用;但当h1=1及h1=4时就受到平滑,单个样本的作用模糊了。随着N的增加,估计量越来越好。这说明,要想得到较精确的估计,就需要大量的样本。
但是当N取的很大,h1相对较小时,在某些区间内hN趋于零,导致估计的结果噪声大。 分析实验数据发现在h1=4,N=256时,估计结果最接近真实分布。
附录:
1.Parzen窗法函数文件parzen.m function parzen=parzen(N,h1,x) %Parzen
hN = h1/sqrt(N); num_x = numel(x);
parzen = zeros(1, num_x); for u = 1:num_x for i=1:N
parzen(u) = parzen(u)+exp(((x(u)-x(i))/hN).^2/-2); end
parzen(u)=parzen(u)/sqrt(2*pi)/h1/sqrt(N); end
2.例程文件parzen_sample.m
x = randn(1,10000);%Normally distributed pseudorandom numbers
px = normpdf(x,0,1);%Normal probability density function - normpdf(X,mu,sigma)
h1 = [0.25, 1, 4];
N = [1, 16, 256, 1024, 4096];
num_h1 = numel(h1);%Number of array elements num_N = numel(N);
figure('Name', '总体概率密度分布的非参数方法'); %遍历h1
for i_h1 = 1:length(h1)
h1_offset = (i_h1-1)*(num_N+1)+1;%绘图位置的偏移量 subplot(num_h1, num_N+1, h1_offset); plot(x, px, '.');
ylabel(sprintf('%s%4.2f', 'h1=', h1(i_h1))); title('正态分布样本的概率密度函数')
%遍历N
for i_N = 1 : length(N)
pNx=parzen(N(i_N), h1(i_h1), x);
subplot(num_h1, num_N+1, h1_offset+i_N); plot(x, pNx, '.');
title(sprintf('%s%d', 'N=', N(i_N))); end end
姓名: 班级: 学号:
实验二 感知器准则算法实验
一、实验目的
1.了解利用线性判别函数进行分类的原理。
2.了解感知器准则算法的原理及其权向量的意义。 3.掌握感知器准则算法并用Matlab实现。
4.使用Matlab分析感知器准则算法生成线性判别函数的分类效果。
二、实验数据
二维坐标点数据集,w1类和w2类各10个样本。
第一组
w1 = [0.1, 6.8, -3.5, 2.0, 4.1, 3.1, -0.8, 0.9, 5.0, 3.9; 1.1, 7.1, -4.1, 2.7, 2.8, 5.0, -1.3, 1.2, 6.4, 4.0]; w2 = [7.1, -1.4, 4.5, 6.3, 4.2, 1.4, 2.4, 2.5, 8.4, 4.1; 4.2, -4.3, 0.0, 1.6, 1.9, -3.2, -4.0, -6.1, 3.7, -2.2]; 第二组
w1 = [0.1, 6.8, -3.5, 2.0, 4.1, 3.1, -0.8, 0.9, 5.0, 3.9; 1.1, 7.1, -4.1, 2.7, 2.8, 5.0, -1.3, 1.2, 6.4, 4.0]; w2 = [7.1, -1.4, 4.5, 6.3, 4.2, 1.4, 2.4, 2.5, 8.4, 4.1; 4.2, -4.3, 0.0, 1.6, 4, -3.2, -4.0, -6.1, 3.7, -2.2];
三、实验结果
第一组输出结果: 权向量W =