[发明专利]一种基于CPU+MIC协同计算的近期数据流频繁项集挖掘方法在审
申请号: | 201610085733.9 | 申请日: | 2016-02-15 |
公开(公告)号: | CN105740457A | 公开(公告)日: | 2016-07-06 |
发明(设计)人: | 龚湛;张清 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 刘继枝 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 cpu mic 协同 计算 近期 数据流 频繁 挖掘 方法 | ||
技术领域
本发明涉及近期数据流频繁项集挖掘的实现技术领域,具体地说是一种基于CPU+MIC协同计算的近期数据流频繁项集挖掘方法。
背景技术
数据流实际上就是连续移动的元素队伍,其中的元素是由相关数据的集合组成。令t表示任一时间戳,at表示在该时间戳到达的数据,流数据可以表示成{…,at?1,at,at+1,…}.区别于传统应用模型,流数据模型具有以下4点共性:(1)数据实时到达;(2)数据到达次序独立,不受应用系统所控制;(3)数据规模宏大且不能预知其最大值;(4)数据一经处理,除非特意保存,否则不能被再次取出处理,或者再次提取数据代价昂贵。
滑动窗口(slidingwindow)模型:滑动窗口对窗口起点和终点都没有明确给定,只明确给定窗口的长度W1。窗口保持一定长度在数据流D={d0,d1…,dn}上滑动,处理的数据流范围就由该窗口确定,随着窗口的滑动不断地把得到的结果输出。滑动窗口SW的长度既可由一个时间区间确定,也可由窗口所包含数据流元素个数确定;
滑动窗口的频繁项集:对于当前滑动窗口内数据,设I={i1,i2,…,in}是项的集合,事务数据集S={s0,s1…,sn},其中,数据集中每个事务s是项的集合,s?I。如果X?s,则称X是个项集。如果X中有k个元素,则称X为k-项集。对于一个项集X,如果其支持度大于等于用户给定的最小支持度阈值,则X为频繁项集。
遗传算法:一种基于随机搜索的优化算法,已成功应用于函数优化、自动控制、生产调度、机器人学、图像处理、人工生命、机器学习和数据挖掘等领域。从代表问题可能潜在的解集的一个种群开始的,而一个种群则由经过基因编码的一定数目的个体组成。每个个体实际上是染色体带有特征的实体。染色体作为遗传物质的主要载体,即多个基因的集合,其内部表现(即基因型)是某种基因组合,它决定了个体的形状的外部表现,如黑头发的特征是由染色体中控制这一特征的某种基因组合决定的。因此,在一开始需要实现从表现型到基因型的映射即编码工作。由于仿照基因编码的工作很复杂,我们往往进行简化,如二进制编码,初代种群产生之后,按照适者生存和优胜劣汰的原理,逐代演化产生出越来越好的近似解,在每一代,根据问题域中个体的适应度大小选择个体,并借助于自然遗传学的遗传算子进行组合交叉和变异,产生出代表新的解集的种群。这个过程将导致种群像自然进化一样的后生代种群比前代更加适应于环境,末代种群中的最优个体经过解码,可以作为问题近似最优解。
MIC(ManyIntegratedCore):是Intel公司推出的众核处理器,跟通用的多核至强处理器相比,MIC众核架构具有更小的内核和硬件线程,众核处理器计算资源密度更高,片上通信开销显著降低,更多的晶体管和能量,能够胜任更为复杂的并行应用。IntelMIC产品基于X86架构,基于重核的众核处理器,包含50个以上的核心,以及512bit的向量位宽,双精性能超过1TFlops。
MIC拥有极其灵活的编程方式,MIC卡可以作为一个协处理器存在,也可以被看作是一个独立的节点。基本的MIC编程模型是将MIC看作一个协处理器,CPU根据程序的指令,将一部分代码运行在MIC端。此时存在两类设备,即CPU端和MIC众核协处理器端。
但是,目前还没有一种能快速有效地获得流数据频繁项集的技术来提高用户的操作体验。
发明内容
本发明的技术任务是提供一种基于CPU+MIC协同计算的近期数据流频繁项集挖掘方法。
本发明的技术任务是按以下方式实现的,该方法通过CPU和MIC众核协处理器实现;
CPU端负责利用滑动窗口技术扫描近期当前数据流,然后对当前窗口内数据流进行分块,向MIC卡传递子窗口数据流,负责CPU+MIC协同计算模式的框架搭建以及任务调度和参数初始化工作,而且在整个数据挖掘的计算任务CPU也会以openmp多线程模式,依次通过遗传算法数据挖掘;
MIC众核协处理器负责多线程并行地使用并行遗传算法查找发现每个嵌套数据子窗口中的频繁项集;在MIC卡上也采用openmp多线程的方式来运算;
该方法基于CPU+MIC协同计算,设定初始种群,种群中的个体是一系列待选的频繁项集,然后基于遗传算法的交叉、变异、选择运算来实现搜索过程,在遍历多代的处理之后,可以获得最终的频繁项集。
所述的CPU负责CPU+MIC协同计算模式的框架搭建以及任务调度,具体操作如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610085733.9/2.html,转载请声明来源钻瓜专利网。