预览加载中,请您耐心等待几秒...
1/4
2/4
3/4
4/4

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于划分和凝聚层次聚类的无监督异常检测 引言: 随着信息技术的不断发展,数据的增长速度和规模不断迅速增加,数据稀疏性和噪声问题也愈发凸显。因此,通过对数据进行分析和挖掘,发现其中的异常值已经成为信息技术与数据科学领域中的一个重要问题,而无监督的异常检测方法则成为了研究的热点之一。无监督的异常检测方法需要在不依赖于先验知识的情况下,从大规模复杂数据中检测出异常行为的模式,一直是信息技术与数据科学领域中的难点之一。本文将探讨基于划分和凝聚层次聚类的无监督异常检测方法的原理和实现,并且阐述了其常用的应用场景。 一、基于划分的无监督异常检测方法 基于划分的无监督异常检测方法中最重要的方法是K均值聚类算法。K均值聚类算法是一种最常见的聚类算法,其通过对数据进行分组以提供对大量数据的基本统计的摘要,然后使用数学模型根据数据特征来检测异常值。其基本思想是将数据集划分为k个簇,此时应该使每个簇的均值最小,实现K均值聚类算法的步骤如下: 1、初始化:选取k个初始样本点; 2、划分:将其他样本点分别划分到离它最近的初始样本所在的簇中,形成k个簇; 3、重心计算:计算每个簇的中心,并把初始样本改为当前簇中心; 4、重新分配:按新的中心将所有样本划入各个簇中; 5、计算误差:计算新的簇心和旧的簇心的距离的平方和Euclideandistance(SquaredError,SE); 6、如果(5)的结果小于阈值或已迭代到最大次数,则认为收敛,否则回到(3) 其中,主要检测方法就是进行步骤5,对于本簇样本点距离平均值较大的样本,可以被判别为异常点或噪声点。该方法的优点在于算法简单,复杂度低,易于并行处理,因此对于数据集较大的情况下十分适用,但是由于其依赖于初始值的选定,往往容易陷入局部最优解。 二、基于凝聚的无监督异常检测方法 与基于划分的无监督异常检测方法不同,基于凝聚的无监督异常检测方法在聚类的时候会先将每个数据点视为一个单独的簇,然后根据相似性度量,将相似簇合并成更大的簇,直到形成所有数据点的单一簇。这种直观和自然的方式可以自动地识别“合法”簇结构,并且避免K均值算法的“前人种树,后人乘凉”的问题。该方法具有如下的特点: 1、不需要预先设定簇的数目; 2、不需要初始值,在每个步骤中都是在现有的簇基础上进行合并,因此不存在局部最优解问题; 3、得到的簇是有层次结构的,可以进行可视化和结构优化。 基于凝聚的聚类方法总体分为两类:自底向上(bottom-up)和自顶向下(top-down)。自底向上每个簇初始化为一个点,然后逐步合并当前最相似的簇,每一步合并都会重新计算距离矩阵。自顶向下则从一个初始簇出发,将其按照合理的方式分割为两个子簇,然后对子簇递归地进行分割,对于每个子簇都会重新计算距离矩阵。准确计算距离矩阵是极其重要的一步,可以采用如下的方式来度量相似度: 1、最近邻法(singlelink):簇间距离等于其中两点距离的最小值,最易出现“链式效应”,不适用于簇大小不一致的情况; 2、最远邻法(completelink):簇间距离等于其中两点距离的最大值,对于密集的局部簇效果特别好,但是容易被孤立点影响; 3、平均法(averagelink):簇间距离等于各个点之间距离的平均值,效果普遍较好,且对于簇大小不一致的数据集具有较好性能。 除此之外,在聚类过程中还可以加入剪枝(pruning)策略和截断(cutting)策略来最大化聚类的效益。 三、划分和凝聚聚类混合的无监督异常检测方法 划分和凝聚聚类混合的无监督异常检测方法的思路是将数据划分为若干组,拆分的同时保留这些数据之间的相似度信息,最后通过建立组之间的联系,形成层次簇结构,这个结构能够自动识别簇内的异常点,然后进行聚类分析。对于低密度区域,则会以单独的簇的形式被检测出来。其步骤如下: 1、通过K均值算法划分数据集为k个簇; 2、通过凝聚层次聚类算法将上述的簇合并为大簇; 3、检测簇内的异常点和噪声点。 与单独采用划分或凝聚聚类算法相比,该方法综合了两种算法的优点,能够降低由于初始值对结果的影响和聚类过程中漏检异常点的问题。首先通过K均值算法对数据集进行了一次过滤,将相似的数据归为同一组,然后再通过凝聚层次聚类算法合并簇,最后对合并后的簇进行检测。这样的过程大概率能够去除一些不真实的离群点,从而提高异常检测的效率和精度。 四、应用场景 无监督异常检测可以自适应地对输入数据进行探索和分类,因而被广泛地应用于数据挖掘、诊断和工业质量控制等领域。具体的应用场景如下: 1、金融和证券行业:对股票价格等流动性高、波动性大、数据量大的数据集进行异常检测,以帮助分析师监测相关的错误; 2、网络安全行业:对于网络信号异常、端口扫描、登录失败等异常行为进行检测,以提供网络的保护; 3、健康监测行业:对健康数据(例