论文部分内容阅读
聚类分析和分类分析是机器学习的重要领域,K-means算法和随机森林算法分别是聚类分析和分类分析中最常用的算法之一。然而,K-means算法和随机森林算法都存在一些限制和缺点。K-means算法中的群组数目K值需要使用者预先设定,这对使用者提出了较高的要求,经验不足的使用者设定的K值的准确性也存在一定的问题;随机森林算法进行分类决策时,无法区别对待每一棵决策树,导致准确性差的决策树会影响算法整体的准确性。在实际应用中,待分析的数据集存在各种各样的问题。包含较多孤立点的数据集会增加K-means算法的迭代次数,提高算法的复杂度,降低算法的准确性;对于包含噪声特征和冗余特征的数据集,随机森林算法的准确性会受到影响,错误率会提高。上述这些问题提高了用户使用K-means算法和随机森林算法的难度。另一方面,基于分布式计算的机器学习框架得到了广泛应用。然而,现有的机器学习框架受限于机器学习算法自身的限制和缺点,要求用户进行数据挖掘和分析时,需要掌握足够的机器学习算法知识,导致这些机器学习框架的应用门槛较高。针对上述问题,本文以实验室承担的某省交通物流云计算平台建设项目为背景,对聚类分析中的K-means算法和分类分析中的随机森林算法以及这两种算法存在的限制和缺点进行了分析,提出了相应的改进算法,设计并实现了一套基于Spark的机器学习应用框架。该框架具有自适应的数据预处理、算法调优和参数选择,用户无需关注机器学习算法的底层细节等特点。最后,本文通过交通物流领域的应用例子对该框架进行了验证。与其他同类系统相比,本文工作具有以下特点:1)针对K-means算法存在的特征权重不一致、孤立点干扰和群组数目K值设定等问题,本文提出了一种改进的自适应K-means算法(Adaptive K-means,简称AKM)。实验结果表明,AKM算法具有对待分析数据集进行规范化处理,对孤立点进行检测和删除,自动化求解群组数目K值等特点。2)针对随机森林算法存在的噪声特征干扰、冗余特征干扰和分类决策投票策略等问题,本文提出了一种改进的自适应随机森林算法(Adaptive Random Forests,简称ARF)。实验结果表明,ARF算法具有删除噪声特征和冗余特征,根据具体的问题选择合适的分类决策投票策略等特点。3)在AKM算法和ARF算法的基础上,设计实现了一套基于Spark的机器学习应用框架AMLF(Adaptive Machine Learning Framework on Spark)。AMLF框架具有向用户提供统一的数据访问接口、机器学习模型的导入导出、统计和反馈机器学习模型信息等功能。应用情况表明,用户使用AMLF框架进行机器学习应用开发时,无需关注机器学习算法的底层细节,降低了使用门槛。