APP下载

基于深度残差自编码器的无监督聚类算法

2023-03-11陆彦辉

计算机仿真 2023年1期
关键词:聚类维度深度

张 浩,陆彦辉

(1. 郑州大学信息工程学院,河南 郑州 450000;2. 深圳市大数据研究院,广东 深圳 518000)

1 引言

无监督聚类算法是机器学习中的重要分类算法,与有监督分类算法相比较,无监督聚类算法具有算法目标或奖励缺失的特点。无监督聚类算法通过自主分析当前数据特征,并将特征相似的数据归为多类,使得同一聚类下的数据比不同聚类之间的数据差异性较小。因此,计算特征相似度及特征差异性是无监督聚类算法的重要特征。当前的无监督聚类算法从算法原理角度可分为顺序聚类、分层聚类、模型聚类、密度聚类四种方法[1]。顺序聚类是最基本的聚类方法,采用设定阈值方法,将随意第一个样本归为第一类,并依次计算样本到已有类的最短距离,若小于阈值,则增加并归为新类,直到所有样本均归类为止,该方法聚类速度快,但较大程度依赖给定阈值,且不可手工设定聚类类数[2]。分层聚类算法主要包含凝聚算法和分裂算法,凝聚算法开始将每个对象作为一类,进行逐级合并,直到所有类合并为一类为止;分类算法刚好相反,将所有对象置于一类中,并逐级分裂,直至所有对象都单独位于一类为止。分层聚类缺点在于每一层的合并和分类操作都不可逆,使得错误不能纠正或撤销[3]。模型聚类方法多采用模型计算集合中的对象特征相似度、差异性并分类的方法,代表有KMeans、KMedian等算法,主要依赖欧式距离等特征作为依据[4]。优势在于高效与分析结果的可靠性,在类别区别显著时效果出色,但需要首先给出聚类个数,且聚类初始质心选取对算法影响较大。密度聚类方法首先寻找数据集中密度较大区域的核心对象,即其邻域密度较大区域,并逐步扩散至密度可大对象,直到无新对象可加入。过程完全依赖于邻域密度概念,优点在于迭代速度快,可以剔除偏离样本,但准确性很大程度上依赖于密度阈值与邻域范围,使得调参十分困难[5]。

综上四种无监督聚类算法存在各类优缺点,因此当前也有较多的改进工作:吴雅琴等人在KMeans算法基础上进行了混合差分进化优化,大幅提升了聚类速度,并应用于大数据解决方案[6]。胡雅婷等人在模糊C均值聚类算法上进行了可能性聚类的改进,并应用于无监督的图像分割中[7]。Zhang Y等人使用渐进群集纯化方法优化无监督的聚类算法,通过渐进聚类形成过程中迭代排除类不一致的样本,取得了高效的聚类效果[8]。Radford A 采用生成对抗网络生成符合真实分布的数据,从而实现更优样本分布下的无监督聚类算法,同样取得了更好的聚类效果[9]。虽然这些改进的聚类算法都取得了不错的效果,但是大多数算法仍然停留在浅层的模型学习或采用相似性度量的方式,无法有效地解决解决高维数据下因维度灾难引起的算法效率低下和性能不佳的问题。

随着当前深度学习的兴起,深度学习在有监督领域已经有了长足的进步,同时也开展了大量无监督任务的探索。深度自编码器(Deep Auto-Encoder,DAE)采用多隐含层深度神经网络提取对象特征并实现投影至特定维度空间,并根据投影结果进行数据特征重建,是以重建对象特征的误差作为指标进行无监督特征提取的方法[10]。DAE在自编码器基础上主要进行了神经网络加深的工作,但网络深度加深也使得DAE在收敛上变得更为困难,存在有无法有效收敛的情况。因此,本文在当前深度学习算法发展基础上,提出了改进的ResDAE-KMeans++算法,该算法在DAE基础上使用了残差结构以加快深度网络的收敛过程,并进行了网络结构的进一步加深,同时使用KMeans++在ResDAE提取特征空间中进行无监督聚类,实现了端到端的无监督聚类方法,并在Iris、Wine、MNIST数据集上进行测试,取得了良好的聚类效果。

2 实验数据来源与预处理

2.1 Iris数据集

Iris鸢尾花数据集是来自于UCI的一份公开数据集,该数据集记录三类鸢尾花品种花萼长度、花萼宽度、花瓣长度、花瓣宽度四个特征[11][12],类别数据均衡,每类品种包含50个样本。该数据集广泛应用于聚类及机器学习分类算法之中,作为使用最为普遍的验证数据集,因此选取该数据集作为评估基础有较大的参考价值。

2.2 Wine数据集

Wine数据集是UCI的公开数据集,记录了意大利某地区三个不同的葡萄品种所酿葡萄酒的成分。该数据记录了三种葡萄酒的13种化学成分或属性:酒精、苹果酸、灰、灰分的碱度、镁、总酚、黄酮类化合物、非黄烷类酚类、原花色素、颜色强度、色调、稀释葡萄酒的OD280/OD315、脯氨酸[13]。其中第一类葡萄酒含有59个样本,第二类含有71个样本,第3类含有48个样本,存在有较轻微的数据不平衡现象,但数据特征鲜明,适合无监督聚类算法进行分析。

2.3 MNIST数据集

MNIST数据集来自美国国家标准与技术研究所(National Institute of Standards and Technology,NIST),其训练集包含60000张28×28的灰度图像,均为单一的0-9手写数字[14]。通常该数据集应用无监督的聚类算法很难收敛,其图像维度按列或按行展开可达到784维,绝大多数无监督聚类算法对此类数据都存在有维度爆炸,难以恰当聚类的问题。但应用ResDAE-KMeans++算法可对分类特征进行有效提取,从而在ResDAE的低维抽象特征空间中进行有效的完全无监督聚类,从而取得优秀的聚类效果。

2.4 预处理方法

对于Iris数据集及Wine数据集,采用按列0-1归一化方法,排除不同列维度量纲、范围差异,0-1归一化公式表达为式(1)

(1)

式中x表示元素值、j表示列、i表示行、jmin、jmax分别表示列最小值及列最大值。

MNIST数据集是8位无符号整型格式存储的灰度图像,因此使用0-1归一化进行全局归一化公式为式(2)

(2)

式中x表示元素值、j表示列、i表示行、xallmin、xallmax分别表示全局最小值及全局最大值。

3 ResDAE-KMeans++算法

ResDAE算法是在DAE算法多层深度学习网络的基础上,引入残差网络结构,将原目标的分布空间非线性投影至低维特征空间,重建原特征空间的深度残差自动编码器。因此ResDAE-KMeans++算法可有效减轻无监督聚类算法的维度灾难问题,同时保留了无监督特性,使得算法本身仍然不需要监督的同时,获取有效的增强特征,从而提升聚类效果。

ResDAE-KMeans++算法的结构如图1所示,其中ResDAE总层数为10层,采用全连接层逐层提取特征同时,应用BN层进行批归一化操作,其连接块分为如图1中Conva及Convb两种残差块结构,以加深网络层数,并提升网络的非线性性质。KMeans++算法则运行在ResDAE编码低维特征层。

ResDAE参数表如表1所示,表中M表示输入维度,N表示内部投影空间维度。因此ResDAE算法的模型计算量及参数量将依赖于输入和内部的投影维度。

图1 ResDAE-KMeans++网络结构图

表1 ResDAE算法全连接层参数量及浮点运算量

测试的三类数据集中,该算法最大模型参数量仅有9.7M,仍属于轻量算法模型,考虑到其降低了聚类维度,因此在实际训练完成后对于聚类仍至少不会起到减速作用,加速效果则在维度越大的数据集上表现越为明显,其ResDAE-KMeans++算法在不同数据集上的聚类速度关系如表2所示。

表2 ResDAE-KMeans++在不同数据集运行速度

表2中可见,在数据集维度越大的情况下,经过ResDAE降维后聚类算法对比KMeans++算法越可获得更大的加速性能。在三个数据集上的运行结果可知,Iris、Wine及MNIST分别提升了13倍、17倍、30倍。因此当数据集样本特征原始维度大,但内部投影维度较低的情况下,更会获得几十倍以上的加速性能,优势十分显著。基于ResDAE的特征空间下,ResDAE-KMeans++的算法流程可表述如下:

1)获取ResDAE编码的低维特征;

2)随机一个点作为种子1;

3)计算其余对象与当前种子的距离,并按距离远近为正比生成轮盘赌概率,并进行轮盘赌获取下一个种子;

4)重复3),直至获取K个种子;

5)把当前所有的点按距离分到最近的中心(即种子),形成簇;

6)计算当前每个簇的质心,作为新的簇中心;

7)重复5),6)直至任意簇中心的移动距离小于设置阈值或迭代次数达到阈值;

4 损失函数构建与聚类效果评估

在ResDAE-KMeans++算法中,ResDAE采用无监督训练,对于原数据特征空间采用KL散度及均方误差结合作为特征重建的损失函数,公式表达为式(3)

(3)

式(3)中,N代表当前训练的样本批数量(Batch Size),yi表示回归目标,y′i表示ResDAE回归结果,σ是一个极小的浮点值,由于KL散度在数量级上与均方误差存在一定差距,因此在式(3)中分别采用α、β系数进行调节。

ResDAE训练设置采用Adam算法优化器,学习率0.001,学习率动态衰减速率0.98/Epoch。训练Loss图像基本一致,如图2所示。

损失函数以KL散度度量了原特征和自动编码器重建特征的相似程度,同时以均方误差度量原特征与重建特征的距离,因此在ResDAE算法训练中有着较好的训练效果。该损失函数可在Iris数据集达到0.02均方差值。

图2 Iris数据集ResDAE训练Loss图

在聚类效果中,采用簇凝聚度即误差平方和(Sum of Squared Error,SSE)作为内部评价指标,及聚类正确率(ACC)与调整兰德系数(Adjusted Rand Index,ARI)作为外部评价指标,并与原始KMeans++及DBSCAN算法进行比较。测评指标公式如式(4)所示

(4)

式(4)SSE、ACC公式中,i表示簇个数、j表示簇中对象个数,X表示聚类标签、式(4)的ARI指标公式中,i、j分别为真实簇和预测簇、nij表示真实簇类别为i,预测为j的数量,ai及bi表示预测与真实及真实与预测的簇比例。应用不同算法与ResDAE-KMeans++比较测评结果如表3所示,表中各评价指标表明,所提出的ResDAE-KMeans++算法相比其它聚类算法具有明显优势。

表3 算法评价指标结果比较

由表3的评价指标结果可知,该算法在小规模的低维数据集、大规模高维数据集上在内外评价指标上均取得了较高的成绩。DBSCAN算法由于高维空间稀疏性导致样本密度较小,同时受到参数选取的影响,取得结果不佳。对比K-means++和ResDAE-KMeans++,ResDAE-KMeans++在簇凝聚度高的同时,分类正确率、调整兰德系数取得了更高的指标。

同时为比较采用ResDAE-KMeans++的聚类效果,使用PCA降维方法可视化MNIST数据集及ResDAE编码低维特征,可视图如图3(a)、图3(b)所示,图3可明显表明该算法通过非线性的神经网络有效提取了维度特征,明显扩大了簇间距离,缩小了簇内距离,使得簇凝聚度得以提升,从而实现提升聚类效果的目的。

图3 原始特征空间与ResDAE编码特征空间

5 结论

1)本文提出了一种无监督聚类算法ResDAE-KMeans++,该算法结合深度学习与无监督方法优势,保持了无监督特性。对比主流无监督方法在内部、外部评价指标上均取得了显著优势,具有很高的应用前景。

2)本文的研究表明了深度学习与无监督聚类算法之间存在有较大的结合与发展的空间,仍需要进一步探索。

猜你喜欢

聚类维度深度
理解“第三次理论飞跃”的三个维度
深度理解一元一次方程
浅论诗中“史”识的四个维度
基于K-means聚类的车-地无线通信场强研究
深度观察
深度观察
深度观察
基于高斯混合聚类的阵列干涉SAR三维成像
光的维度
一种层次初始的聚类个数自适应的聚类方法研究