论文部分内容阅读
当前计算机制造工艺的飞速发展以及多核CPU芯片技术的日趋成熟,让我们进入了高速计算的多核时代。同时,在并行计算领域上,也由以往的多机并行慢慢转到多核并行上来,即多核计算的概念。这样不仅提高了效率,同时还是节约了很大的硬件开销,而且还是节能的,契合了节能环保的社会化主题。本课题把多核计算与数据挖掘技术结合起来,来实现快速高效的数据挖掘方法,主要对分类数据挖掘进行了多核化研究与探索。主要工作如下:(1) KNN方法虽然有很多优点,但是其致命的问题就是分类效率比较低。针对这一问题,本文运用多核计算技术对该算法作了多核化改进研究。从数据划分和任务划分这两个不同角度,本文分别提出了基于多核计算的MDKNN和MTKNN算法。MDKNN的设计思想是把单个任务处理的数据集分开,并在多个计算核心上并行执行,以此来提高执行效率。MTKNN算法主要是把整个分类任务看作一个整体,将单条记录的分类视为整体的子任务,算法的核心思想是把各个子任务在多核平台上并行执行。实验表明,这两个算法在保持原有分类正确性的同时极大提高了分类效率。(2)决策树方法最耗时的部分就是决策树结构的构建过程,本文利用多核计算技术对决策树的构建过程进行了多核改进研究,并在经典ID3算法的基础上提出了一种基于多核计算的分类算法MPID3。由于决策树的构建过程采用递归调用的方法,本文在多核并行实现时设计了一个任务队列,用于各个处理器核心的动态任务获取和添加。实验表明,该算法在保持原有分类正确性的同时极大提高了分类效率。(3)贝叶斯网络方法最耗时的部分就是贝叶斯学习阶段,本文利用多核计算技术对贝叶斯学习过程进行了多核改进研究,提出了一种基于多核计算的贝叶斯网络方法MPBN。在进行贝叶斯学习时,首先把参数学习的任务分配到多个执行核上,执行完成之后,再进行网络结构的更新。鉴于贝叶斯网络结构模型的建立比较麻烦,本文使用由Intel提出并发布的PNL库来创建网络模型。实验表明,该算法在保持原有分类正确性的同时极大提高了分类效率。