APP下载

基于机器学习的不确定数据增量式挖掘算法

2021-12-10文明瑶廖伟国

计算机仿真 2021年11期
关键词:数据量增量准确率

文明瑶,廖伟国

(华南农业大学珠江学院,广东广州510900)

1 引言

广义上讲,使用“机器”模拟人类学习活动的学科,称为机器学习[1,2],在这里“机器”代表电子计算机,通过机器学习可获取新知识、新信息以及新技能,并可识别现有知识信息[3]。机器学习主要组成为:对人类学习过程进行解读并模拟;研究人类与计算机之间的语言接口;自动规划问题;以实现机器学习为目的,设计发现新信息的程序。机器学习涉及统计学、概率论、算法复杂度理论等多个学科[4],广泛应用于建筑、医学、数学、金融等多个领域。机器学习可从一类数据中自动分析其规律,并利用该规律对未知数据展开预先计算,因此,机器学习在处理庞大数据量时,效果显著[5]。

经过分析每个数据,从大量数据中找出其关联性,称为数据挖掘,现代电子技术迅猛发展,各种行业数据信息量成倍增长,并发展迅速[6,7],数据具有构成庞大、组成复杂、变化迅速等特征。为了实现数据的有效挖掘,杨阳[8]等人提出一种基于Spark的不确定数据集频繁模式挖掘算法,该算法在计算过程中需进行频繁式计算,计算精度高,但其计算耗时长,期望概率和权重需选择单一指标,计算过程复杂。许磊[9]等人提出基于模糊神经网络的异常网络数据挖掘算法,该算法依据异常网络数据进行相似度计算,其收敛性较差,造成计算结果不够精确。

从大量并且复杂多变的数据中,挖掘有效信息,是现代机器学习的重要方向。机器学习的主要技术之一是模糊c-均值聚类算法,简称FCM算法,该算法应用范围广,计算精度高,可将目标函数进行优化,并从中获取聚类中心的隶属度,根据数据样本的隶属度达到将数据分类的目的。因此,为了解决现有方法存在的问题,本文提出基于机器学习的不确定数据增量式挖掘算法,使用改进FCM算法实现海量数据增量式挖掘,可提高计算结果的精确度与运算时间[10,11]。

2 基于改进FCM的不确定数据增量式挖掘

2.1 FCM算法思想

由xi(i=1,2,…,n)表示n个向量,FCM算法将其分成F个模糊簇,通过计算得出每个簇的聚类中心,使目标函数达到最小,l

(1)

更新聚类中心与隶属度可使目标函数最小,分别由式(2)、(3)表示

(2)

其中,i=1,2,…,f。

(3)

其中,i=1,2,…,f,j=1,2,…n。

FCM计算流程由图1表示。

图1 FCM计算流程

1)由X=(x1,x1,…xn)表示n个数据集,从该数据集中选择初始聚类中心为V0=(v1,v2,…vf,),阈值ε>0。

2.2 FCM算法改进

为提升FCM算法的应用效果,在FCM算法中增加指标筛选和指标权重计算流程,对FCM算法进行改进。

假设每个样本数据集有t个特征指标,将指标筛选流程添加到FCM算法中,将z个指标通过主成分分析法从数据集中挑选出来,利用挑选出的指标实施样本数据集聚类。

(4)

将FCM算法改进后,首先确定样本分类数f(2≤f≤n-1),设q和ξ分别代表参数和误差值,其初始矩阵由R(0)表示;然后依据初始矩阵R(0),计算聚类中心Vi(i=1,2,…,f),其由式(5)表示

(5)

依据式(5)计算新分类矩阵R*,更改划分矩阵,由式(6)表示

(6)

式(6)中,i=1,2,…f;j=1,2,…n。

2.3 基于改进FCM的增量式聚类算法

如果原始数据被聚类为A、B、C、D、E、F类,新增加的数据可能属于其中某一类,也可自行称为新类,还有可能与其中两类聚合形成新类[12]。其聚合示意图由图2表示。

图2 增量式聚类示意图

由图2可知,新增数据使原始数据聚类增加了2组,其中,H类属于自成一类,G类将A、B、C类部分数据聚合形成新类。FCM增量式聚类具体算法如下:

(7)

FCM聚类最终结果是对数据集进行模糊划分:A={A1,A2,…,Af},其中,样本属于第1类的隶属函数由A1代表,是隶属矩阵U的第1行,分类效果最好的情况是A1和Ah尽量分离,即A1尽量不包含Ah(h≠1)。通常而言,聚类的数量很小,若聚类数量很大,那么其精度不够准确,那么,可通过式(6)确定最优样本数据集分离数量f。聚类数目可通过以上步骤自动获得,可规避人为规定分类数目的不准确性,完成初始聚类。

其次,基于初始聚类结果,将剩余样本数据实施分配和聚类。

1)设Qi与Qj两个类之间的平均距离由式(8)表示

(8)

其中,Qi和Qj分别代表计算出的第i类和第j类。

2)设任意类到任意数据点的平均距离由式(9)表示:

(9)

其中,ni代表第i类中包含的样本数量;nj代表第j类中包含的样本数量;Xk代表剩余数据集中的数据。其阈值由式(10)表示

(10)

分配规则如下:

若MaxDist≥dik,需将Xk划分到第i类中;若MaxDist≥dik并且MaxDist≥djk,需合并第i类和第j类;若MaxDist

3)重复以上步骤,直至数据集无剩余数据为止。

通过上述流程,改进FCM算法可合并两类或多类数据,对非球形与椭球形分布的数据集进行较好聚类,从而形成新的类,可避免传统FCM算法的局限性。

3 实验分析

为验证所提算法的实际应用效果,本次实验采用内存为4G、主频为2.6G、windows 10操作系统的台式电脑进行实验。以5000组数据作为实验样本,将该样本分为A、B、C三组,分别作为原始数据组,其中A组数据为2500组,B组数据为1000组,C组数据为1500组,阈值取0.6。以基于Spark的不确定数据集频繁模式挖掘算法(文献[8]算法)和基于模糊神经网络的异常网络数据挖掘算法(文献[9]算法)作为对比方法,进行实验验证。

3.1 数据分类

良好的数据分类是实现数据增量式挖掘的基础,为此,分别使用所提算法与文献[8]算法、文献[9]算法对A、B、C三组数据样本实施增量式挖掘,对比三种算法分类性能,结果如表1所示。

表1 三种算法分类对比

分析表1可知,所提算法对A、B、C三组数据样本分类个数均高于文献[8]和文献[9]算法,说明所提算法分类详细。并且所提算法的分类符合率最高达到了99.28%,远高于文献[8]算法、文献[9]算法,实验结果表明,所提算法数据分类能力更强。

统计上述实验过程中三种算法对A组数据的平均分类准确率,其结果如图3所示。

图3 三种算法平均分类准确率

分析图3可知,所提算法的平均分类准确率要明显高于文献[8]、文献[9]算法,其中所提算法与文献[8]算法的准确率曲线较平缓,可见其分类较稳定,而文献[9]算法的曲线波动较大,分类稳定性较差,同时也影响其分类准确率。当迭代次数为12次时,所提算法的分类准确率达到了98%左右,可见所提算法分类准确率更高。

三种算法挖掘A样本数据的耗时对比结果如图4所示。

图4 三种算法耗时对比

分析图4可知,文献[8]算法的最高耗时为7.5s左右;文献[9]算法分类耗时在迭代次数为7之前,趋势较平缓,迭代次数超过7时,呈迅速上升状态,并且耗时较长,最高已达到10s;所提算法分类耗时在迭代次数为7之前,上升趋势比较明显,迭代次数超过7之后,其耗时曲线趋近直线,可见所提算法数据挖掘能力强、效率高。

3.2 特征提取

数据增量式挖掘的前提是数据特征提取,为此对比三种算法对不同数据样本的数据特征提取性能,其结果如图5所示。

图5 三种算法特征提取准确率

分析图5可知,文献[8]算法与文献[9]算法在对三组数据进行特征提取时,数据量不同提取准确度存在一定差异,可见传统算法在特征提取上有所欠缺,造成提取结果准确率不高。而所提算法在提取数据特征时,未受数据量影响,其特征提取准确率大致相同,因此,所提算法特征提取能力较强,不易受数据量影响。

3.3 增量式挖掘能力

为验证所提算法的数据增量式挖掘能力,以数据A为例,在数据样本A中,添加9500组新数据,分别测试三种算法数据增量式挖掘准确率,结果由图6表示。

图6 三种算法增量式挖掘准确率

分析图6可知,在数据增量情况下,三种算法的数据挖掘准确率整体上都是随着数据量的增加而降低,文献[9]算法从数据量增加至6000组后,准确率下降幅度增大;文献[8]算法与所提算法数据挖掘准确率较接近,但所提算法数据挖掘准确率高于文献[8]算法,并且所提算法随着数据量的增加,数据挖掘准确率曲线变化平缓,文献[8]算法挖掘准确率曲线呈波浪状,可见其数据挖掘准确率变化不稳定,且准确率低,所提算法准确率始终保持在95%~98%之间,因此所提算法可在信息增量的情况下,对数据进行有效挖掘。

对比三种算法,在数据增量情况下的迭代次数,其结果由图7表示。

图7 三种算法迭代次数对比

通过对比图7可知,迭代次数与数据量成正比,当数据量增加至12000组时,文献[8]算法与文献[9]算法迭代次数相差不大,在数据量为6000组时文献[8]算法迭代次数低于文献[9]算法,当数据量继续增加时,文献[8]算法迭代次数反而高于文献[9]算法,由此可知,文献[8]算法与文献[9]算法随着数据量的增加,计算结果不稳定;所提算法随着数据量的增多,迭代次数呈平缓趋势增长,增长幅度较低,因此所提算法迭代次数少,数据增量式挖掘能力强。

4 结论

研究基于机器学习的不确定数据增量式挖掘算法,利用改进FCM算法通过设定数据目标函数,进行样本分类与特征提取,依据分类和特征提取结果实施数据聚类,实现数据增量式挖掘。实验结果表明:

1)所提算法分类详细,符合率高,且符合率与样本数量成反比。

2)迭代次数相同时,所提算法的平均分类准确率高。

3)数据分类耗时短,分类能力强。

4)所提算法受数据量增加影响较小,特征提取效果好,数据挖掘能力强。

5)数据增量情况下,所提算法准确率降低幅度小,计算准确率高,其准确率在95%~98%之间。

6)数据增量情况下,所提算法迭代次数少,数据增量式挖掘能力强。

因此,所提算法具有极高实用性,可有效实现不确定数据增量式挖掘。目前世界中不确定性数据种类繁多,聚类关联性问题涉及面广泛,本文仅针对不确定数据增量式进行挖掘,无法满足多领域实际要求,因此需在分类效果评价、多类型数据、多领域重合等方面展开研究,从而提升聚类结果有效性和实用性。

猜你喜欢

数据量增量准确率
导弹增量式自适应容错控制系统设计
研发信息的增量披露能促进企业创新投入吗
提质和增量之间的“辩证”
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
高刷新率不容易显示器需求与接口标准带宽
特大城市快递垃圾增量占垃圾增量93%
AMAC