一种面向大规模数据的快速K近邻分类器方法技术

技术编号:38102672 阅读:11 留言:0更新日期:2023-07-06 09:22
本发明专利技术公开了一种面向大规模数据的快速K近邻分类器方法,属于数据处理及机器学习技术领域,提出粒球思想引入DBSCAN方法,提出优化差概念引入自适应选择关键K值的自适应KNN算法,所述粒球思想和所述优化差概念,具体包括基于密度峰值的DBSCAN粒球生成算法和基于优化差的密度粒球GBSKNN算法,利用DBSCAN算法来解决了传统KNN算法在面临大规模数据处理时,时间复杂度较低的问题,引入了粒球计算的思想,在传统算法的基础上又提出了优化差的传统粒球GBSKNN算法,即形成粒球的过程使用基于密度峰值的粒球计算,在保证精度的前提下其运行时间远小于传统KNN,不但能保持预测效果的优异性,并且极大减少了运算时间。并且极大减少了运算时间。并且极大减少了运算时间。

【技术实现步骤摘要】
一种面向大规模数据的快速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取值也是人为确定的,这样显然是效率低下。无法确定K值取多少时,该样本的预测效果最好,当面临大规模数据处理时,存在无法准确的确定K取值或者手动确定K值导致效率低下的问题。
[0005]本专利技术针对上述K最近邻算法存在的两个问题,以及现有技术的不足之处,引入了粒计算的思想,把大规模数据粒球化解决大规模;引入优化差的概念,解决K最近邻算法在K取值时,需要人为取确定K取值,综合两种方法,提出了面向大规模数据的快速K最近邻算法。

技术实现思路

[0006]本专利技术的目的在于克服上述
技术介绍
困难,提出粒球思想引入DBSCAN方法,提出优化差概念引入自适应选择关键K值的自适应KNN算法,提供一种面向大规模数据的快速K近邻分类器方法。
[0007]为达到上述目的,采用的技术方案为:一种面向大规模数据的快速K近邻分类器方法:提出粒球思想引入DBSCAN方法,提出优化差概念引入自适应选择关键K值的自适应KNN算法,所述粒球思想和所述优化差概念,具体包括基于密度峰值的DBSCAN粒球生成算法和基于优化差的密度粒球GBSKNN算法,
[0008]所述基于密度峰值的DBSCAN粒球生成算法步骤为:
[0009](1)输入:数据集D,纯度阈值p,邻域半径eps值,邻域半径内的最少点数minpts值;
[0010](2)输出:粒球列表B;
[0011]①
使用2

means聚类算法对数据集D进行划分,生成两个粒球D1和D2,粒球数n=2;
[0012]②
对每个粒球Di;
[0013]1)粒球Di的聚类中心就是该粒球中所有样本点的质心;
[0014]2)粒球Di的半径等于粒球中所有样本点到其质心距离的平均值;
[0015]3)粒球Di的纯度等于粒球中大多数样本所占的百分比;
[0016]4)如果粒球的纯度小于p;
[0017]a.通过2

均值聚类算法将其分为两个粒球,粒球数n++;
[0018]③
如果每个粒球的纯度都高于p;
[0019]1)转到第

步;
[0020]④
否则:返至第

步;
[0021]⑤
对每个Di;
[0022]1)使用参数值为eps与minpts的DBSCAN算法计算粒球的可聚类数k;
[0023]2)如果可聚类数k大于等于2;
[0024]a.使用k

means聚类算法将粒球再次划分为k个粒球,粒球数n=n+k

1;
[0025]⑥
如果每个粒球的可聚类数k都小于2;
[0026]1)转到第

步;
[0027]⑦
否则:返至第

步;
[0028]⑧
终止;
[0029]所述基于优化差的密度粒球GBSKNN算法具体步骤为:
[0030](1)输入:数据集D,数据集D外的一个查询点O,通过所述基于密度峰值的DBSCAN粒球生成算法计算出的粒球列表B;
[0031](2)输出:O的标签;
[0032]①
计算点O到粒球列表B中每个粒球的距离并进行排序,得到升序距离列表DIS;
[0033]②
如果最小距离DIS[0]小于0;
[0034]1)则点O的标签等于与其距离最小的粒球的标签,转到第

步;
[0035]③
否则:初始化待计算距离列表Dis为[0,DIS[0]];
[0036]④
计算Dis的标准差Std1;
[0037]⑤
初始化标准差列表STD=[Std1];
[0038]⑥
令i=1;
[0039]⑦
将DIS[i]加入Dis中;
[0040]⑧
计算当前Dis标准差Stdi;
[0041]1)如果Stdi<=Stdi

1;
[0042]a.将Stdi添加至STD,i++;
[0043]b.返至第

步;
[0044]2)否则:计算当前STD中元素个数n;
[0045]a.计算DIS列表中前n个粒球所对应的标签列表Labels;
[0046]b.则点O的标签等于Labels中数量最多的标签;
[0047]⑨
终止;
[0048]进一步,所述粒球思想针对大规模数据粒球化定义如下:
[0049]定义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
‑1={a1,a2,...,a
n
‑1}为粒球中所有样本点到A
n
‑1={a1,a2,...,a
n
‑1}本文档来自技高网
...

【技术保护点】

【技术特征摘要】
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
...

【专利技术属性】
技术研发人员:杨洁付俊刘衍民金星张鑫
申请(专利权)人:遵义师范学院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1