当前位置:文档之家› 近邻法

近邻法

N A1
(2)采用抽样的办法,使之能自适应选择k;
“科研反哺教学”,将自己的研究工作融入课堂;
6.3.2 核近邻法(续)
贝叶斯 决策器
学习 方法
4 3 2
分类 错误率 5.5% 4.6% 4.1%
KNN (k=3) BKNN 贝叶斯决策器
KNN
1 0 -1
三种方法的分类错误率比较
BKNN
-2 -3 -4 -4
本人解决方案:
NN (Fix, 1951)
KNN (Yu,2002) (Peng,2004) BNN (Homes,2002)
定义最优核距离 (本章) 核化 (本章)
BKNN (本章)
(1)推导出“最优核距离”:
1 rko x , xl rko x, xl N A1 1 NA B x, xi , xl B x, xi , xl N i 1 A i 1
J. Peng. Adaptive Quasiconformal Kernel Nearest Neighbor Classification. IEEE Trans PAMI[J]. 2004, 26(5): 656 - 661.
Rd
x1 , t1 1 x5 , t5 1 1
6.1.1 关于近邻法
1951年Fix和Hodges首次提出
第 w1 类
第 w2 类
最经典的模式识别方法之一 方法简单,便于理论分析
x
x1
x4
是其它模式识别方法的标尺
“距离”的度量方式有很多种
近邻法原理示意图
6.1.2 近邻法应用实例:人脸表情识别
欲解决的问题:
七 类 表 情
% 计算每个测试样本与每个学习样本间的欧式距离 for itest=1:1:ntest
x1
x
x
x2
x3
for ilean=1:1:nlean
distance(itest,ilean) = norm( SNN_xtest(itest,:) - SNN_xlean(ilean,:)); end end
% 对给定的测试样本,找出与其最近的样本,并确定其类别
C. C. Homes and N. M. Adams, A probabilistic nearest-neighor method for statistical pattern recognition. J Roy Statist Soc Series B[J]. 2002, 64: 295-306.
50 100 150
1

200
250 50
256×256 抽样
100
150
200
250
1
主成分分析: 是最简单的提取 方法,第8章讲述
5
11
10
15
20
25
1024
5 10 15 20 25 30
30
提取的特征个数
32×32 =1024
6.1.2
近邻法应用实例:人脸表情识别(续)
主函数的源代码片段:
D. L. Wilson. Asymptotic properties of nearest-neighbor rules using edited data. IEEE Trans SMC[J]. 1972, pp. 408-421.
ห้องสมุดไป่ตู้
(B)压缩近邻法
(见教材第153页)
P. E. Hart. The condensed nearest neighbor rule. IEEE Trans. Inform. Theory. 1968, 14(3), 515-516.
每个测试样本所属的类别(用近邻法判别出的结果)
% 周亚同 2008.2.10
nlean = size(SNN_xlean,1); %学习样本数 ntest = size(SNN_xtest,1); %测试样本数 ndim = size(SNN_xlean,2); %样本维数
6.1.2 近邻法应用实例(续)
[xtest_normal_project_unit]=unitary(xtest_normal_project);
%========== 用 NN 对测试样本分类 =================== ytest = NN_CLASSIFY(xlean_normal_project_unit, ylean, xtest_normal_project_unit);

x5 , t5 1
F
x 2 , t 2
r
x, t ?
x4 , t4 1
x ,t ?
rk
x ,t 1
3 3
x3 , t3 1
(a)
(b)
原始空间
核空间
6.3.2 核近邻法(续)
核近邻法(KNN)存在的问题:
(1)核距离是核空间中的最优距离度量吗? (2)在实际应用中如何选择k?
选择合适的k值很重要;
k-最近邻方法原理示意图
k=5
6.2.2 k-近邻法k值的选择问题
例:双螺旋分类
K=2
K=15
双螺旋样本分类问题
如何选择k值,有许多学者进行过研究
(不属于课堂教学范围)
6.3 近邻法的改进与完善
6.3.1 近邻法常见的改进与完善措施
(1)核近邻法
(2)概率近邻法 (3)近邻法的快速算法 (4)近邻法的其它改进措施
(C)采用快速搜索技术 (见文献)
A. Djouadi and E. Bouktache. A fast algorithm for the nearestneighbor classifier. IEEE Trans PAMI[J]. 1997, 19(3): 277-282.
主要思路:缩小搜索近邻的范围,或者加快搜索速度。
[dis, yno]=min(distance,[],2); % yno:与测试样本距离最近的学习样本的序号
ytest = ylean(yno);
6.1.2 近邻法应用实例(续)
表情识别结果:
第 1 类表情(AN)的分类正确率: 第 2 类表情(DI)的分类正确率: 第 3 类表情(FE)的分类正确率: 第 4 类表情(HA)的分类正确率: 第 5 类表情(NE)的分类正确率: 第 6 类表情(SA)的分类正确率: 第 7 类表情(SU)的分类正确率: 90.000000% 90.000000% 76.666667% 90.000000% 93.333333% 76.666667% 83.333333%
6.2 k-近邻法的基本原理
6.2.1 关于 k-近邻法
是近邻法的一种推广;
原理:先找出 x 的k个近邻,这k 个近邻中,哪一类的样本数量占优势 ,就将 x 归为哪一类。
x1, t1 1
x2 , t2 1
x
x4 , t4 1
x5 , t5 1
x3 , t3 1
自然
高兴
生气
失望
悲伤
害怕
惊讶
任给一张人脸,请 问是什么表情?
“学以致用”,通过上述应用实例可以加深对近邻法的理解。
6.1.2 近邻法应用实例:人脸表情识别(续)
样本库构建:
(1)关于JAFFE人脸表情库
JAFFE: Japanese Female Facial Expression 表情库含10名日本年轻女 性,每人7种表情,每种表情 采集3副图, 共210副图 每副图为256×256象素, 256级灰度
M-H算法 Metropolis算法 独立抽样器、 Gibbs抽样器 M 辅助变量 混合蒙特卡洛法 C 抽样器 切片抽样器 M C 逆跳马尔科夫链蒙特卡洛 自适应马尔科夫链蒙特卡洛 完美抽样 粒子滤波器
第 w1 类
第 w2 类
x
6.3.4 提高近邻法的分类速度
(A)剪辑近邻法 (见教材第145页)
% ============= 参数设置 ============== nlean = 7*10*1; %学习样本个数
ntest = 7*10*3;
numpc=11;
%测试样本个数
%提取的特征数目
% === 读取学习样本与测试样本(按七种表情依次读取) ===
6.1.2 近邻法应用实例:人脸表情识别(续)
% ============= 字符串设置 ============== Path='..\JAFFE\'; %表情库所在文件夹
JanpanPerson='KA.KL.KM.KR.MK.NA.NM.TM.UY.YM.'; % 10个日本人名 Expression='ANDIFEHANESASU'; % 7种表情
结论:
-3 -2 -1 0 1 2 3 4
(1)BKNN所得分类面更 光滑;
(2)BKNN分类错误率 更低;
三种方法的分类效果对比
6.3.3 概率近邻法
基本思路:使近邻法具有概率背景; 常规的近邻法只能判别测试样本 x 属于某一类;而概率近 Pc1 | x 和 P c 2 | x 邻法能计算测试样本 x 属于某一类的概率:
%===========用 PCA 做特征提取 =================
%提取学习样本特征
[v,latent,explained,xlean_normal_project] = lpca(xlean_normal,xlean_normal,numpc); %提取测试样本特征 [v,latent,explained,xtest_normal_project] = lpca(xlean_normal,xtest_normal,numpc); %将提取的特征向量转化成单位向量 [xlean_normal_project_unit]=unitary(xlean_normal_project); %将提取的特征向量转化成单位向量
相关主题