天天看点

【图像检索】基于matlab GUI KNN图像检索【含Matlab源码 267期】

K最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一。该方法的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。

1 定义

如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别,即由你的“邻居”来推断出你的类别.

2 距离公式

两个样本的距离可以通过如下公式计算,又叫欧式距离

3 KNN算法的步骤

(1)计算已知类别数据集中每个点与当前点的距离;

(2)选取与当前点距离最小的K个点;

(3)统计前K个点中每个类别的样本出现的频率;

(4)返回前K个点出现频率最高的类别作为当前点的预测分类。

4 KNN原理

【图像检索】基于matlab GUI KNN图像检索【含Matlab源码 267期】
【图像检索】基于matlab GUI KNN图像检索【含Matlab源码 267期】
【图像检索】基于matlab GUI KNN图像检索【含Matlab源码 267期】

5 KNN的优缺点

6 KNN性能问题

NN的性能问题也是KNN的缺点之一。使用KNN,可以很容易的构造模型,但在对待分类样本进行分类时,为了获得K近邻,必须采用暴力搜索的方式,扫描全部训练样本并计算其与待分类样本之间的距离,系统开销很大。

【图像检索】基于matlab GUI KNN图像检索【含Matlab源码 267期】

1 matlab版本

2014a

2 参考文献

[1]韩纪庆,张磊,郑铁然.语音信号处理(第3版)[M].清华大学出版社,2019.

[2]柳若边.深度学习:语音识别技术实践[M].清华大学出版社,2019.

[3]叶斌.基于HMM和PNN的语音情感识别研究.[J]青岛大学学报(工程技术版). 2011,26(04)

继续阅读