在聚类问题中,缺少特征值的不完整数据很常见。 传统的聚类方法首先通过插补估计缺失值,然后对完整数据应用经典的聚类算法,如K-median和K-means。 然而,在实际应用中,往往很难获得缺失值的准确估计,这会降低聚类的性能。为了增强聚类算法的鲁棒性,本文用区间数据表示缺失值,并引入鲁棒聚类目标函数的概念。 为了提供对估计误差不敏感的聚类结果,提出了一种极大极小鲁棒优化(RO)公式。 为了解决RO问题,我们提出了鲁棒的K-median和K-means聚类算法,具有较低的时间和空间复杂度。 对人工生成和真实世界不完整数据集的实验结果进行比较和分析,验证了所提出算法的稳健性和有效性。
1.简介 在数据挖掘和机器学习领域,经常会出现所考虑的数据集包含多个缺少特征值的观测值。 由于各种原因,这种不完整的数据出现在广泛的应用领域,包括数据集收集过程不当、获取某些特征值的成本高昂以及问卷中缺少响应。 例如,在线购物用户可能只对可用书籍、电影或歌曲中的一小部分进行评级,这导致大量功能价值缺失,Marlin[ 1 ]. Sebesyen首次对不完整数据进行模式识别的理论研究[ 2 ]在某些概率假设下。 Dempster等人还提出了期望最大化算法来计算缺失数据的最大似然估计[ 三 ]. Dixon报道了对不完整数据的早期实证研究[ 4 ]还有Jain和Dubes[ 5 ].
聚类分析被认为是提取有用特征和探索潜在数据模式的有效方法。 由于缺失特征值的存在,迫切需要对许多领域中的不完整数据进行聚类,例如图像分析[ 6 ],信息检索[ 7 ]和临床医学[ 8 ]. 对于不完全数据的聚类,基本方法是两步法,首先使用插补估计缺失的特征值,然后应用经典的聚类方法。 Troyanskaya等人[ 9 ]研究基因微阵列数据的三种基于插补的聚类方法,包括奇异值分解、加权K近邻(KNN)和行平均法。 Troyanskaya等人[ 9 ]得出结论,KNN方法似乎比其他方法提供了更稳健、更敏感的缺失值估计结果。 宫本茂等人[ 10 ]还使用类似的基于插补的模糊c均值(FCM)方法处理不完整数据。 阿库纳和罗德里格斯[ 11 ]和Farhangfar等人[ 12 ]比较不同缺失值插补方法的性能,包括单一插补方法,如均值、中位数、hot-deck和Naive-Bayes方法,以及用于分类问题的基于多元回归的多重插补方法。 萨拉瓦南和塞拉克什米[ 13 ]提出了模糊概率c均值算法,利用遗传算法对缺失值进行插补。
除了基于插补的方法外,海瑟薇和贝兹德克[ 14 ]提出了四种策略,使经典的FCM聚类算法适用于不完全数据。 最简单的完整数据策略(WDS)删除所有不完整的样本,并将FCM算法应用于剩余的完整数据。 只有当只有少数不完整的样本包含缺失的值时,此策略才有用。 为了计算FCM实施过程中缺失数据的距离,可以使用部分距离策略(PDS)。 PDS也用于Dixon的模式识别[ 4 ]以及Miyamoto et al[ 10 ]蒂姆和克鲁斯[ 15 ]. 第三和第四种策略可视为基于迭代插补的方法。 最优完成策略(OCS)通过迭代优化过程中的最大似然估计来插补缺失值,而最近原型策略(NPS)是对OCS的简单修改,其中只考虑最近原型来插补遗漏元素。 还提出了不排除或插补不完整数据的聚类方法。 Shibayama公司[ 16 ]使用主成分分析(PCA)方法捕获不完整数据的结构以及本田和一桥[ 17 ]提出了基于局部主成分分析的线性模糊聚类方法。 张和陈[ 18 ]针对不完备数据,提出了一种基于核的FCM聚类算法,该算法基于模糊隶属度和聚类原型来估计缺失的特征值。 Sadaaki等人[ 19 ]进一步将线性模糊聚类与Hathaway和Bezdek提出的PDS、OCS和NPS相结合[ 14 ].
直接插补和迭代插补(如OCS、NPS)方法都假设缺失特征值可以通过单个值很好地估计。 然而,通常很难获得对缺失值的准确估计,因此基于插补的聚类方法对估计精度很敏感。 为了解决这个问题,Li等人[ 20 ]使用最近邻区间来表示缺失值,并通过为区间数据定义新的区间距离函数来扩展FCM。 区间数据已被证明是处理缺失值的有效方法,并进一步用于提出有效的聚类方法。 Li等人[ 21 ]也用区间数据表示缺失值,但使用遗传算法搜索区间中缺失值的适当插补。 Wang等人[ 22 ]使用改进的反向传播(BP)神经网络估计区间数据中的缺失值。 Zhang等人[ 23 ]提出了一种基于预分类结果的改进区间构造方法,并使用粒子群优化算法搜索最优聚类。Zhang等人[ 8 ]用概率信息粒表示缺失值,并设计一种高效的三级交替优化方法,以同时找到最优聚类结果和最优缺失值。
近年来,稳健优化作为处理不确定或缺失数据的有效方法被广泛接受,并被应用于数据挖掘和机器学习领域,如极小极大概率机器[ 24 – 27 ],稳健的支持向量机[ 28 , 29 ]和稳健二次回归[ 30 ]. 本文旨在为不完备数据设计鲁棒聚类算法。 基于预分类的改进区间构造方法用于获取缺失值的区间数据。 基于区间数据表示,我们提出了稳健的K-median和K-means聚类算法。 与现有算法不同,现有算法使用区间距离函数或最优插补[ 20 , 21 , 23 ],我们将聚类问题重新定义为基于区间数据的minimax鲁棒优化问题。
具体来说,对于给定的聚类原型和隶属度矩阵,我们引入了鲁棒聚类目标函数的概念,即当缺失值在构造的区间内变化时,聚类目标函数最大值。 然后,提出的算法旨在寻找最优的聚类原型和隶属度矩阵,从而最小化鲁棒聚类目标函数。 对于稳健K-中值和K-均值聚类问题,我们给出了稳健目标函数的等价形式,并给出了有效的求解方法。 与现有方法相比,该算法对构造区间的估计误差不敏感,特别是在丢失率较高的情况下。 对UCI数据集的数值实验结果的比较和分析也验证了所提鲁棒算法的有效性。
与现有算法相比,所提出的鲁棒聚类算法具有双重优势。 首先,我们的算法可以在不插补缺失特征值的情况下对不完整数据进行聚类,并提供对估计误差不敏感的稳健聚类结果。 实验还通过与现有算法的比较,验证了该算法在鲁棒性和准确性方面的有效性。 其次,所提出的算法易于理解和实现。 具体来说,稳健的K-median和K-means聚类算法的时间复杂度为 和 ,其中 是对象数, 是特征的尺寸, 是簇数,并且 是迭代次数。 我们的算法与经典的K-median和K-means聚类算法具有相似的计算复杂度,并且比Zhang等人提出的不完全数据聚类算法效率更高[ 8 ]随着时间的复杂性 (当 用于稳健的K-means聚类算法)。
论文组织如下。 章节 2 回顾了经典的K-median和K-means算法,并提出了稳健的K-medin和K-means聚类问题。 章节 三 给出了所提出的鲁棒优化问题的有效算法。 章节 4 报告实验结果。 最后,我们总结了本文,并在第节中指出了进一步的研究方向 5 .
2.鲁棒聚类算法 2.1. 完备数据的K-中值和K-均值聚类 考虑对一组 物体 进入之内 集群。 对于每个对象 ,我们有一套 特征 ,其中 描述了 物体的特征 在数量上。 让 是对象的特征向量 和 是特征矩阵或数据集。
聚类任务可以重新表述为一个优化问题,使以下聚类目标函数最小化: 在以下约束条件下: 哪里 。对于 , 是 第个集群原型,对于任何 , 指示对象是否 属于 第个集群。 K-median和K-means是解决聚类问题的有效算法 和 分别是。 在下面,让集群原型矩阵 和成员矩阵 ,其中 和 .
这两种算法都以如下迭代方式解决了聚类问题。
步骤1。 设置迭代索引 并随机选择 不同对象作为初始集群原型 .
第2步。 让 ,并更新成员关系矩阵 通过固定集群原型矩阵 。对于任何 ,随机选择 ,并设置 并且,对于任何 ,套 .
步骤3。 更新集群原型矩阵 通过固定成员矩阵 .何时 ,对于任何 和 ,套 作为 簇中这些对象的特征值 .何时 ,对于任何 ,套 作为簇中这些对象的质心 ; 也就是说,
步骤4。 如果,对于任何 和 ,我们有 ,然后停止并返回 和 ; 否则,转至步骤 .
2.2. 不完全数据的稳健K-中值和K-均值聚类 由于各种原因,特征矩阵 可能包含缺少的组件。 例如,当 ,对于某个对象 ,我们可能有 ,表示对象的第三个特征值 缺少。 我们指的是一个数据集 作为不完整的数据集,如果它包含某些对象的至少一个缺失特征值; 也就是说,至少存在一个 和 ,因此 。描述缺失的数据集 ,我们进一步划分了 分成两个子集:
实际上,很难获得缺失特征值的准确估计。 因此,在本文中,我们用区间表示缺失值。 具体来说,对于任何 ,我们使用间隔 表示未知缺失特征值,其中 和使用 表示已知特征值,其中 。为了简化符号,在下面,让 和 对于任何 和 对于任何 有关如何为缺失值构造这些间隔的详细信息,请参见Li等人[ 20 ]和Zhang等人[ 23 ].
本文旨在设计鲁棒聚类方法,以保证聚类输出的最坏情况性能。 该方法的逻辑可以解释为一个两层博弈:聚类决策者首先进行聚类决策,然后对手从特定的区间中选择缺失特征的值。 因此,稳健的聚类决策者将选择聚类,从而使最坏情况下的聚类目标函数最小化。
为了引入鲁棒聚类问题,我们首先定义了以下鲁棒聚类目标函数: 哪里 , 、和 表示 物体的特征 因此,鲁棒聚类问题可以公式化如下:
(RCP)是一个离散的极大极小问题。 如果没有缺失数据,也就是说, 对于任何 ,(RCP)简化为经典聚类问题( 1 ). 自出现问题以来( 1 )是NP-hard问题[ 31 , 32 ]求解RCP的全局最优解是一项具有挑战性的任务。 在下一节中,我们为(RCP)提出了有效的鲁棒K-中值和K-均值算法。
3.算法 3.1. 稳健的K-Median聚类算法 在本小节中,我们为(RCP)提供了一个鲁棒的K-median聚类算法 。我们首先展示了如何简化鲁棒聚类目标函数。 其中( 7 )利用凸集上凸函数的最大值是在极点处获得的这一事实( 8 )使用约束( 2 ). 自 和 ,对于任何 和 ,我们还有 方程式( 9 )表明缺失值的存在增加了聚类目标函数。 基于( 9 ),稳健的K-median聚类算法可以在algorithm中给出 1 .
算法1(稳健的K-median聚类算法)。 输入 .特征矩阵 ,间隔大小 ( )和 . 输出 .集群原型矩阵 和成员矩阵 . 步骤 1 (初始化)。 设置迭代索引 并随机选择 不同的行 作为初始集群原型 . 步骤 2 让 和更新 通过固定 . 对于任何 ,随机选择 、和设置 并且,对于任何 , 设置 . 步骤 3 更新 通过固定 : 对于任何 ,让 。对于任何 ,套 作为 . 步骤 4 (停止标准)。 如果 对于任何 和 ,然后停止并返回 和 ; 否则,转至步骤 .
3.2. 稳健的K-Means聚类算法 在本小节中,当(RCP) 建议。 与分析类似 什么时候 ,我们首先将鲁棒聚类目标函数简化如下: 自 ,我们有
最小化 ,我们需要更新 和 以另一种方式。 具体来说,当 是固定的,每个对象 可以分配给以下索引集中的任何集群: 当 是固定的,对于每个群集 ,让 .然后是 可通过求解以下分段凸优化问题获得: 注意优化问题( 13 )可分解于 因此,为了获得 ,这足以解决以下子问题:
程序1(解决子问题的程序( 14 ))。 输入 .给定 和 , , 和 ( ). 输出 . . 步骤 1 (排名)。 排名 以递增的顺序。 为了简化符号,在以下内容中,我们省略了索引 和 , 然后假设 ,其中 . 步骤 2 确定潜在的最小值点。 对于 ,计算 . 步骤 三 .返回 .
子问题( 14 )是一个分段凸二次优化问题,可以通过过程求解 1 .
程序 1 解决子问题( 14 )通过枚举所有潜在的最小值点。 很容易看出该程序 1 可以在中实现 如果排名步骤使用有效的排序方法(如堆排序),则为time。
基于上述讨论,稳健的K-means聚类算法可以在algorithm中描述 2 .
算法2(稳健的K-means聚类算法)。 输入 .特征矩阵 ,间隔大小 ( )和 . 输出 .集群原型矩阵 和成员矩阵 . 步骤 1 (初始化)。 设置迭代索引 并随机选择 不同的行 作为最初的集群原型 . 步骤 2 .让 和更新 通过固定 : 对于任何 ,随机选择 属于索引集的( 12 ). 对于任何 ,套 . 步骤 三 .更新 通过固定 . 对于任何 和 ,获取 使用过程 1 . 步骤 4 (停止标准)。 如果 对于任何 和 ,然后停止并返回 和 ; 否则,转至步骤 .
3.3. 计算复杂性 众所周知,经典K-median和K-means算法的时间复杂度为 ,其中 是对象数, 是特征的尺寸, 是集群的数量,以及 是迭代次数。 我们将证明,所提出的鲁棒K-median聚类算法具有 时间复杂度和鲁棒K-means聚类算法具有 时间复杂性。
具体来说,算法的初始化步骤 1 拿 初始化集群原型矩阵的时间。对于给定的集群原型矩阵,算法 1 拿 更新成员关系矩阵的时间。请注意 标量可以在中计算 时间[ 33 ]. 让 我们有 因此,步骤 算法的 1 可以在中实现 时间。 算法的最后一步 1 拿 时间。 因此,鲁棒K-median聚类算法的时间复杂度为 .
对于稳健的K-means聚类算法,很容易看出算法的前两个步骤 2 拿 和 时间。 让 .对于给定 和 ,程序 1 拿 计算时间 因此,步骤 算法的 2 拿 时间从 时间。 注意,算法的最后一步 2 也需要 因此,鲁棒K均值聚类算法的时间复杂度为 .
此外,很容易看出,鲁棒K-median和鲁棒K-means聚类算法的空间复杂度均为 因此,与经典的K-median算法和稳健的K-means算法相比,所提出的稳健聚类算法消耗的计算资源相同。
4.数值实验 在本节中,我们在UCI机器学习存储库的两个数据集上比较了所提出的鲁棒聚类算法和其他算法。 章节 4.1 描述了数据集和实验设置,以及第节 4.2 报告并讨论了实验结果。
4.1. 数据集和实验设置 两个广泛使用的数据集,虹膜和种子,用于测试所提算法的性能。 鸢尾花数据由150个对象组成,每个对象具有鸢尾花的四个特征,包括萼片长度、萼片宽度、花瓣长度和花瓣宽度。 Iris数据包括三个簇,Setosa、Versicolour和Virginica,每个簇包含50个对象。 海瑟薇和贝兹德克报告了Iris数据的最佳集群原型[ 34 ]. 种子数据集由三个不同小麦品种的210粒组成,每个粒具有七个实值特征,包括面积、周长、紧密度、粒长、粒宽、不对称系数和粒沟长度。
我们在缺失完全随机(MCAR)机制下生成缺失值,如Hathaway和Bezdek[ 14 ]和Li等人[ 20 ]. 具体来说,我们随机选择指定百分比的组件,并将其指定为缺失组件。 为了使不完整的数据易于处理,我们还确保满足以下约束: (1) 每个对象保留至少一个特征; (2) 每个特征在不完整的数据集中至少有一个值。
除了人工生成缺失值的虹膜和种子数据集外,我们还对实际不完整数据集和石片数据集测试了所提出的算法[ 35 ]它由79个史前时期的八维属性石片组成。 这些文物属于三个不同的历史时期。 石片数据集不完整,有6个不完整的对象,其中10个缺少特征值。
Li等人[ 20 ]使用 最近邻来构造缺失特征值的区间,并根据其数值实验, 是一个不错的选择。 为了进一步测试区间大小对所提鲁棒聚类算法的聚类性能的影响,将缺失值的区间 构造为 ,其中 由 最近的邻居和 .
4.2. 结果和讨论 我们首先测试并比较了所提出的稳健K中值(标记为“RKM1”)在Iris和Seeds数据集上的性能 到 基于WDS、PDS和NPS,也对经典的K-中值算法进行了修改,以处理不完整的数据集。 由于K-median算法的性能取决于初始集群原型,因此我们重复每个算法 100次并报告平均性能。
桌子 1 和 2 分别报告不同K-median算法在不完整虹膜和种子数据上的平均性能。 每个表中的第一列给出了缺失率。 第二列至第七列通过与真实聚类结果的比较给出了平均误分类率,其中第五列至第7列对应于RKM1算法,具有不同的值 范围为0.05至0.15。 在表中 1 ,第八到第十三列给出了不同算法的平均聚类原型误差,这些误差由 哪里 表示由某个K-median算法给出的集群原型 是Iris数据集的实际集群原型,没有缺少值。 由于种子数据集的实际集群原型未知,表中未报告此类结果 2 .
从表格 1 和 2 ,我们有以下观察结果。 (1) 当不存在缺失值,即缺失率等于零时,所有K-median算法都会给出相同的结果。 随着丢失率的增加,在大多数情况下,所有算法的误分类率和原型误差都会变大。 (2) 当缺失率较小时,缺失数据对RKM1的性能几乎没有不利影响。 例如,当缺失率在附近时,RKM1的误分类率 当缺失率为零时,甚至小于RKM1。 (3) 当丢失率较大时,与基于WDS、PDS和NPS的K-median算法相比,RKM1提供的聚类结果具有较少的误分类和原型错误。 (4) 实验结果还表明,区间大小影响RKM1的性能。 具体来说,作为 从0.05增加到0.15,在大多数情况下,RKM1的错误分类率先下降后上升。 然而,当缺失率较高(20%)时,RKM1的值较小 提供了最佳的群集性能。
提出的稳健K均值算法(标记为“RKM2”)也在Iris和Seeds数据集上进行了测试,并与基于WDS、PDS和NPS的K均值算法进行了比较。 桌子 三 和 4 通过将每个算法重复100次来报告这些算法的平均性能。
桌子 三 和 4 还验证了拟议RKM2对缺失值的鲁棒性。 当存在缺失值时,与基于WDS、PDS和NPS的K-means算法相比,RKM2提供了稳健的聚类结果,错误分类率和原型错误更小。 例如,当缺失率为 ,RKM2给出的误分类率 种子数据集上只有 ,而其他K-means算法给出的最佳误分类率为 .区间大小对RKM2性能的影响与RKM1相似; 也就是说,在大多数情况下,RKM2具有 在错误分类率和原型误差方面提供了最佳的聚类性能。
最后,我们在真实世界的不完全数据集(Stone Flakes数据集)上测试了所提出的鲁棒聚类算法的性能。 根据上述讨论,我们设置 用于RKM1和RKM2。 图 1 展示了不同算法的错误分类数量。 来自图 1 ,我们发现RKM1提供了最低的误分类率,RKM2提供了次佳的性能。
5.结论 本文考虑了不完全数据的聚类问题。 为了减少缺失值对聚类结果性能的影响,本文用区间数据表示缺失值,并引入鲁棒聚类目标函数的概念,即当缺失值在构造的区间内变化时,最坏情况下的聚类目标函数。 然后,我们提出了一个鲁棒聚类模型,其目的是最小化鲁棒聚类目标函数。 设计了鲁棒K-median和K-means算法来解决所提出的鲁棒聚类问题。 鲁棒K-median和K-means聚类算法的时间复杂度为 和 分别是。 在人工生成的和真实世界的不完全数据集上进行的数值实验表明,与现有的基于WDS、PDS和NPS的K-median和K-means算法相比,该算法对缺失数据具有鲁棒性,并提供了更好的聚类性能。
K-median和K-means算法都解决了具有硬约束的不完备数据聚类问题; 也就是说,每个对象只属于一个集群。 为了解决具有软约束的不完备数据聚类问题,我们将在未来进一步研究鲁棒模糊K-median和K-robust聚类算法。
竞争性利益 作者声明,本论文的出版不存在利益冲突。
致谢 这项工作得到了41427806和61503211号国家自然科学基金重大项目、9152002号北京市自然科学基金和DYXM-125-25-02号中国海洋协会项目的支持。