Weka 数据挖掘平台及其二次开发

2020-11-24 20:47王靖雯何美琪屈克诚山东协和学院
数码世界 2020年1期
关键词:中心点二次开发数据挖掘

王靖雯 何美琪 屈克诚 山东协和学院

引言

Weka 平台作为数据挖掘的常用工具,是一种典型的维度较高的聚类应用平台,在对于特定的聚类特征选择及特征空间生成的过程中,运用不同的方法,加强对于特征权重的计算。数据挖掘工具可以实现对于数据的智能分析,Weka 数据挖掘平台经过10 多年来的研究,走向了大数据时代的实际应用范畴。由于未挖掘平台源代码的开放性,使用其进行数据挖掘时,可以探索一些新的聚类算法,有效地嵌入到Weka 之中,从而能够扩充其系统功能,这就是对于Weka 挖掘平台的二次开发进程。

一、Weka 数据挖掘平台的使用基础

(一)Weka 数据挖掘平台的使用背景

Weka 数据挖掘平台,作为开放的源代码平台,先输入要测试的数据,然后对于带测试的数据进行预先的处理。在处理数据并且集中布置之后,其学习方案往往是根据分析结果将已有的分析模型带入到预测的实例之中。Weka 数据挖掘平台的基础使用,为了能够达成最佳的性能,常常分为5 个不同层次的功能阶段。

(二)Weka 数据挖掘平台的功能层次

数据输入层是Weka 数据平台基于不同的文件格式,从站点下载和导入ARFF、CSV、C4.5、BSI 等几个类型的文件,采用系统的HTTP 和FTP 协议接口来输入数据库并进行导入的层面。

数据挖掘层面成为Weka 挖掘数据的核心,它通过多种多样的分类和聚类功能,进行数据的预处理。对于数据的表象和装载,利用缺失数据项的填补功能进行属性的过滤。Weka 数据导入层和Weka 数据相互配合,将数据集中放置于学习方案之中。

模式评估层面和可视化层面之间相互配合,对于数据挖掘并且提供良性的辅助工具,既提升了挖掘的效率,同时又在可视化的层面给予人记录和使用的可能,最终导入到特定的储存层之内。

二、Weka 数据挖掘平台的二次开发

(一)Weka 数据挖掘平台的常见问题

通过对于Weka 的研究和挖掘实验,很多研究者认为,Weka 数据挖掘平台并不能够真正的适应目前市面上所存在的各种类型的企业应用需求,当数据使用量比较大时,很多算法出现了挖掘时间过长的问题。

另外Weka 系统所集成的算法并不能够很好的反映出最新的研究成果,尤其是在复杂的聚类层面上,即使是最具有优先遍历的算法Farthest First 也没有能够起到很好的收效。

Weka 数据挖掘系统由于提供了记事本,这种文本输出格式在与其他系统进行集成的过程中,可能有时会造成资源的浪费。即使实现了挖掘过程和挖掘结果的可视化,但是对于很多企业来说,这种可视化的形式并不够非常完善。

(二)Weka 数据挖掘平台的二次开发

对该数据挖掘平台的二次开发,是基于原有的基础之上,为了使得Weka挖掘平台的算法越来越多样化,可以使用嵌入的k-中心点轮换算法,以便解决原有算法和距离算法的不完善之处。

利用k-中心点轮换算法,是基于划分k-均值算法的基础上,进行了改进和优化,根据随机选择的对象作为初始点,在初始中心点的基础之上,剩余的对象按照中心点的距离差异分配,形成近距离簇。距离结果的质量可以使用目标函数来估算:

这种算法由于对所有的对象,都给予了详尽的中心点与其所归属的簇偏差总和的计算,一般常用的计算方式是使用欧式距离平方作为距离度量。因为这种计算方法可以非常便捷的测量目标函数值,当数据集中使用的时候,按照不同的尺度来确定不同属性。

大量的科学研究表明,利用k-中心点名换算法的规则,可以在Weka 数据挖掘平台下,使用eclipse 环境之下的Java 语言,将k-中心点轮换算法嵌入到Weka 平台之中。在充分调动原有的计算包之后,对于抽象的聚类进行封装,这种算法能够很好的杜绝对于中心点和起始点的敏感,并且可以结合特定的方法来进行聚类效果的评估和测试。

K-中心点轮换算法,可以使用评估类的ClusterEvaluation 进行聚类模型的评估,并且可以进行验证嵌入算法性能的测试。测试的数据进行错误率的对比之后就可以发现,检测聚类数据致密性的算法怎样才能达到合理的目标函数分布。

三、结论

通过对于Weka 数据挖掘平台进行二次开发,结合一些嵌入式的算法,使得Weka 平台的计算量保持在一个正确的差值范围之内。经过多次的Weka 挖掘实验,为了解决其存在的问题,嵌入支持用户算法的k-中心点轮换算法。通过改进传统的中心点算法,加强对于事先输入数目和伸缩性的管控,有望在未来,有更进一步的改进和提升。

猜你喜欢
中心点二次开发数据挖掘
AutoCAD 与PDMS 二次开发在三维复杂形体设计建模上的应用
改进支持向量机在特征数据挖掘中的智能应用
探讨人工智能与数据挖掘发展趋势
基于事故数据挖掘的AEB路口测试场景
一种基于标准差的K-medoids聚类算法
Scratch 3.9更新了什么?
浅谈CAD软件二次开发的方法及工具
如何设置造型中心点?
例谈课本习题的“二次开发”
软件工程领域中的异常数据挖掘算法