【技术实现步骤摘要】
一种基于改进的Euclid距离KNN分类方法和系统
本专利技术涉及数据分类
,尤其是涉及一种基于改进的Euclid距离KNN分类方法和系统。
技术介绍
在当前大数据时代,各种数据规模大、范围广,需要对数据进行分类处理,以便于后续进一步开展分析处理工作。利用KNN算法对数据进行分类处理,KNN算法的基本思想为:对于任意给定的待分类样本的最近的K个近邻,然后根据这K个近邻的分类属性投票确定其类别。KNN算法的距离度量方法,主要采用计算待测样本与训练样本的Euclid距离(欧氏距离)。KNN算法假定所有样本对应于n维空间Rn中的点,一个样本的最近邻是根据标准的Euclid距离定义的。KNN算法在类别判定时,只与极少量的相邻样本有关,其主要依赖周围有限的邻近的样本,而不是靠判别类域的方法来确定所述类别的,因此,对于类域的重叠或交叉较多的待测样本集,KNN算法较其他分类方法更为合适。由于KNN算法是惰性学习方法,存在分类速度慢、样本库容量依赖性较强,并且KNN算法采用Euclid度量,这种计算距离的度量标准对噪声特征比较 ...
【技术保护点】
1.一种基于改进的Euclid距离KNN分类方法,其特征在于,包括以下步骤:/nStep1、从数据库中获取数据集,将数据集分为测试集和训练集;/nStep2、设置近邻参数K值;/nStep3、根据Linear Discriminant Analysis算法求出训练集投影向量w;/nStep4、根据训练集构造近邻图G(V,E),其中G表示近邻图,V表示节点,即为训练集中的各个训练样本,E表示连接各个训练样本之间的边;/nStep5、对于测试集中的每一个数据样本x
【技术特征摘要】
1.一种基于改进的Euclid距离KNN分类方法,其特征在于,包括以下步骤:
Step1、从数据库中获取数据集,将数据集分为测试集和训练集;
Step2、设置近邻参数K值;
Step3、根据LinearDiscriminantAnalysis算法求出训练集投影向量w;
Step4、根据训练集构造近邻图G(V,E),其中G表示近邻图,V表示节点,即为训练集中的各个训练样本,E表示连接各个训练样本之间的边;
Step5、对于测试集中的每一个数据样本xtext,根据近邻图找到数据样本xtext在训练集中的K个近邻;
Step6、返回对数据样本xtext的估计值其中,f(xi)表示分类的问题函数,xi表示第i个训练样本,v表示训练样本对应的类别,V表示数据类别的集合,即为数据样本xtext的最终类别,
2.根据权利要求1所述的基于改进的Euclid距离KNN分类方法,其特征在于:所述步骤Step2设置K取1,3,5,7,9,11,13,15。
3.根据权利要求1所述的基于改进的Euclid距离KNN分类方法,其特征在于:步骤Step3中投影向量w的计算方式如下,
以二分类为例,定量分析求解最佳的投影向量w:
给定特征为d维的N个训练样本首先寻找每类训练样本的均值,即中心点,此时i=1,2,具体的,有N1个训练样本属于类别w1,有N2个训练样本属于类别w2,N=N1+N2,μi表示第i类训练样本的均值;
训练样本x到w上的投影用y=wTx计算,训练样本x到w投影后的样本点均值表示为:由此可知,投影后的均值也就是样本中心点的投影;
能够使投影后的两类样本中心点尽量分离的直线是最好的直线,定量表示为:对投影后的类求散列值,具体:最终通过度量公式度量投影向量w;
根据上述公式,寻找使J(w)最大的w即可,求解过程如下:
将散列值公式展开:其中令即散列矩阵;
接着,令Sw=S1+S2,Sw称为类内离散程度矩阵,SB=(μ1-μ2)(μ1-μ2)T,SB称为类间离散程度矩阵;
J(w)最终表示为:对其进行求导,在求导之前,先对分母进行归一化处理;然后令||wTSWW||=1,加入拉格朗日乘子后,求导:由此可见w是矩阵的特征向量;
具体的,因为SBw=(μ1-μ2)(μ1-μ2)Tw,其中,后面两项的积是一个常数,记为λw,则由于对w扩大或缩小任何倍数都不影响其结果,因此为了简单起见约去两边的未知常数λ,λw,得到故只需要求出原始训练样本的均值和方程即求出最佳的w。
4.根据权利要求1所述的基于改进的Euclid距离KNN分类方法,其特征在于:所述Step4中,近邻图中边的大小具体由公式:确定,其中,xl表示训练样本x的第l个特征向量,xi,xj分别表示第i个训练样本和第j个训练样本,m为特征向量的个数,t表示任意常数,w表示步骤2求得的投影向量。
5.如权利要求4所述的基于改进的Euclid距离KNN分类方法,其特征在于:m的取值为5,分别包括图像的笔画、轮廓、交叉点、端点、灰度特征向量。
6.一种基于改进...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。