论文部分内容阅读
关联分类算法具有较高的分类准确度、较好的扩展性,受到广大研究人员和工程师的喜爱。关联分类算法可以分为显式关联分类和Lazy关联分类。当面对大数据的时候,显式关联分类没有办法避免生成庞大候选关联规则集的问题并容易出现Small Disjunction现象。Lazy关联分类使用待分类样本对训练集做投影操作,使得训练集大大减小,训练集与待分类样本关联度增大,很好地解决了显式关联分类存在的问题。然而面对大数据,在Lazy关联分类算法中,每个待分类样本都要对训练样本进行投影并构建一个分类器,对多个待分类样本进行分类时效率很低;分布式关联规则挖掘算法能够提升Lazy关联分类算法关联规则挖掘环节的效率,使其适用于大数据数据挖掘,但针对Lazy关联分类算法特有的投影操作,并未见分布式实现;面对大数据,必须使用大数据出库框架,Map Reduce框架不太适用迭代式计算,需要寻找新的框架来实现Lazy关联分类以适应大数据环境。因此,本文提出基于Spark的分布式Lazy关联分类算法-SDLAC算法,使用聚合方法来克服Lazy关联分类对多个待分类样本进行分类时效率低下的问题,使用分布式投影来解决C-DMA算法应用于Lazy关联分类时的不足,使用Spark框架克服Map Reduce框架的不足,以期使得Lazy关联分类适用于大数据场景并能够应用到实际当中去。分析与实验结果表明:SDLAC算法在准确率上高于CBA算法,与Lazy关联分类算法的准确率差不多;SDLAC算法的运行效率大大的高于CLAC算法(本文实验对比算法,代表现有研究最好水平,未有人实现)。所以,SDLAC算法是适合大数据环境的分类算法。本文的主要贡献是:①明确了Lazy关联分类算法面对大数据环境的不足之处。②提出SDLAC算法,将C-DMA算法应用到Lazy关联分类算法中去,并使用聚合方法、分布式投影和Spark框架进一步提升算法的运行效率,实现了面向大数据的Lazy关联分类算法。③实验表明:SDLAC算法在准确率上高于CBA算法,与Lazy关联分类算法的准确率差不多;SDLAC算法的运行效率大大的高于CLAC算法(本文实验对比算法,代表现有研究最好水平,未有人实现)。所以,SDLAC算法是适合大数据环境的分类算法。