论文部分内容阅读
机器学习是非常热门的研究方向,很多研究者对其感兴趣并提出了诸如深度神经网络、决策树等多种优秀的学习方法,并将这些方法推广到数据挖掘、模式识别、自然语言处理等各个领域。其中,数据挖掘的应用非常广泛,尤其在当今大数据的时代背景下,商业组织和研究人员意识到大数据中所包含的巨大价值。因此,选择合适的数据挖掘方法处理大数据并从中获取有价值的信息对于研究者来说至关重要,而聚类分析方法就是非常符合这种应用场景的方法之一。聚类是数据挖掘中的经典方法,K-means聚类算法是数据挖掘领域的十大经典算法之一,但其聚类数目k值无法事先确定以及它的初始聚类中心的选择易受到异常点的干扰。中国学者基于神经网络的几何意义提出了覆盖算法,覆盖聚类算法采用覆盖的思想将特征比较相近的样本聚合在一起,它具有“盲”特性,不需要预先指定聚类的数目,也不需要手动选择初始聚类中心。但是传统的覆盖聚类算法的半径获取方法存在问题且并没有分析聚类结果,导致最终聚类结果不合理。本文主要对覆盖聚类算法与K-means算法及其改进算法进行了研究,并研究了改进的覆盖算法在大数据环境下服务推荐中的应用。主要的研究内容及创新如下:(1)提出了改进传统覆盖聚类算法中确定领域半径的新策略。每个数据点对于每个领域覆盖的半径贡献值是不同的,距离簇中心越远的数据点对于簇中心的贡献值较小,反之越近的数据点对于簇中心的贡献值较大。应基于每个数据点相对簇中心贡献值获取簇的半径,使得相似的数据更大概率聚在同一个簇中,不相似的数据更大概率聚在不同簇中;(2)基于商空间理论提出了分裂机制和聚合机制。将基于改进领域半径的覆盖聚类算法所得到的覆盖结果看作是一个预处理过程,采用分裂机制和聚合机制对初始聚类结果进行分析,基于商空间理论知识获得聚类数目,而不是主观地事先估计聚类的数目,解决了数据集聚类数目难以确定这一难题:(3)为了克服K-means算法及其经典的改进算法中存在的聚类数目以及初始聚类中心点难以确定的缺陷,提出了基于改进覆盖算法的K-means算法(C-K-means)。实验结果表明,与 K-means 算法、K-means++·算法、K-means||算法相比,提出的算法在精度和效率方面效果都更好;(4)以往一些算法在小规模数据集上的离线测试表现良好,但在实际大数据集上实施时并不奏效,因此算法要结合现实生活中的大数据情景。为适应大数据环境,在Spark云平台下实现了并行的改进覆盖聚类算法CA-QGS和C-K-means算法,它们都具有很好的可扩展性,可有效解决大规模数据聚类问题;(5)对C-K-means的应用进行了研究。将它应用在大数据环境下的服务推荐中,基于传统的服务推荐提出了一种新的推荐模式,分别对调用过不同服务的所有用户和不同用户调用的所有服务进行覆盖聚类,提出一种新的Top-k机制,基于聚类结果获得目标用户或服务的相似邻居,然后再利用覆盖信息预测目标用户对服务的QoS(Quality of Service)值,最后进行服务推荐。与目前应用于服务推荐中的其他方法相比,C-K-means算法的推荐精度和效率显著优于这些方法。