【技术实现步骤摘要】
一种面向大规模数据的快速K近邻分类器方法
[0001]本专利技术涉及数据处理及机器学习的
,具体为一种面向大规模数据的快速K近邻分类器方法。
技术介绍
[0002]K最近邻算法(k
‑
Nearest Neighbor,KNN)最初由Cover和Hart于1968年提出,这是一种基于模板匹配思想的算法。K近邻分类算法理论成熟、简单易实现的特性,使其成为经典的机器学习算法之一。随着信息化的不断发展,K最近邻算法在机器学习分类[2]效果优异,其分类性能良好和原理简单的优势,使其一直被沿用至今。互联网从20世纪50年代开始发展至今,其信息量越来越大,产生的数据量也越来越庞大。K最近邻分类算法在面临大规模数据处理时,其时间效率过低,一直是该算法的劣势。可见在如今高速发展的信息化时代,K最近邻算法已经难以满足大数据时代的时间效率需求。其次K最近邻算法作为机器学习的底层算法之一,其算法的时间效率一直影响上层的。随着数据量的增多,其时间效率也会成几何是的增长。
[0003]以K最近邻算法图像识别例,从K最近邻原理上分析,样本图像需要与集合里的每一个图像进行数学计算,才能得到相应的分类结果。但随着图像数量的增多,其相应的计算量也会越来越大,时间效率就会越来越低,显然在识别速度是难以满足当今的识别需求的。从当今信息化、大数据的时代背景下,解决K最近邻算法在面对大规模数据处理时,对于时间效率上的劣势,显得尤为迫切。
[0004]在传统的K最近邻算法上K取值也是人为确定的,这样显然是效率低下。无法确定 ...
【技术保护点】
【技术特征摘要】
1.一种面向大规模数据的快速K近邻分类器方法,其特征在于:提出粒球思想引入DBSCAN方法,提出优化差概念引入自适应选择关键K值的自适应KNN算法,所述粒球思想和所述优化差概念,具体内容包括基于密度峰值的DBSCAN粒球生成算法和基于优化差的密度粒球GBSKNN算法,所述基于密度峰值的DBSCAN粒球生成算法步骤为:(1)输入:数据集D,纯度阈值p,邻域半径eps值,邻域半径内的最少点数minpts值;(2)输出:粒球列表B;
①
使用2
‑
means聚类算法对数据集D进行划分,生成两个粒球D1和D2,粒球数n=2;
②
对每个粒球Di;1)粒球Di的聚类中心就是该粒球中所有样本点的质心;2)粒球Di的半径等于粒球中所有样本点到其质心距离的平均值;3)粒球Di的纯度等于粒球中大多数样本所占的百分比;4)如果粒球的纯度小于p;a.通过2
‑
均值聚类算法将其分为两个粒球,粒球数n++;
③
如果每个粒球的纯度都高于p;1)转到第
⑤
步;
④
否则:返至第
②
步;
⑤
对每个Di;1)使用参数值为eps与minpts的DBSCAN算法计算粒球的可聚类数k;2)如果可聚类数k大于等于2;a.使用k
‑
means聚类算法将粒球再次划分为k个粒球,粒球数n=n+k
‑
1;
⑥
如果每个粒球的可聚类数k都小于2;1)转到第
⑧
步;
⑦
否则:返至第
⑤
步;
⑧
终止;所述基于优化差的密度粒球GBSKNN算法具体步骤为:(1)输入:数据集D,数据集D外的一个查询点O,通过所述基于密度峰值的DBSCAN粒球生成算法计算出的粒球列表B;(2)输出:O的标签;
①
计算点O到粒球列表B中每个粒球的距离并进行排序,得到升序距离列表DIS;
②
如果最小距离DIS[0]小于0;1)则点O的标签等于与其距离最小的粒球的标签,转到第
⑨
步;
③
否则:初始化待计算距离列表Dis为[0,DIS[0]];
④
计算Dis的标准差Std1;
⑤
初始化标准差列表STD=[Std1];
⑥
令i=1;
⑦
将DIS[i]加入Dis中;
⑧
计算当前Dis标准差Stdi;1)如果Stdi<=Stdi
‑
1;
a.将Stdi添加至STD,i++;b.返至第
⑦
步;2)否则:计算当前STD中元素个数n;a.计算DIS列表中前n个粒球所对应的标签列表Labels;b.则点O的标签等于Labels中数量最多的标签;
⑨
终止。2.根据权利要求1所述的一种面向大规模数据的快速K近邻分类器方法,其特征在于:所述粒球思想针对大规模数据粒球化定义如下:定义1给定一个数据集A
n
‑1={a1,a2,...,a
n
‑1},一点o和一颗粒球A
n
‑1={a1,a2,...,a
n
‑1},A
n
‑1={a1,a2,...,a
n
‑1}作为粒球的中心,A
n
‑1={a1,a2,...,a
n
‑1}为粒球的半径。粒球中心A
n
‑1={a1,a2,...,a
n
‑1}是所有样本点的质心,A
n
...
【专利技术属性】
技术研发人员:杨洁,付俊,刘衍民,金星,张鑫,
申请(专利权)人:遵义师范学院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。