标题 | 基于粗糙集理论的模糊聚类算法研究 |
范文 | 张红霞 吴桐桐 冷雪亮
摘 ?要: 粗糙集理论是一种新型的处理含糊不确定知识的数学工具,善于分析隐藏在数据中的事实而不需要关于数据的任何附加知识,粗集理论不仅为信息科学和认知科学提供了新的科学逻辑和研究方法,而且为智能信息处理提供了有效的处理技术。聚类是作为数据挖掘系统中的一个模块,既可以作为一个单独的工具以发现数据库中数据分布的深层信息,也可以作为其他数据挖掘分析算法的一个预处理步骤。模糊聚类算法忽略了聚类边界不确定的问题和复杂数据问题从而导致聚类效果不理想。本文提出了将粗糙集和模糊聚类算法相结合,利用粗糙集中上近似集和下近似集的概念得到相似性度量来改进模糊聚类算法。实验证明,改进的算法能够得到更好的聚类效果。 关键词:?粗糙集;模糊聚类;上近似;下近似 中图分类号: TP301.6????文献标识码:?A????DOI:10.3969/j.issn.1003-6970.2019.09.036 本文著录格式:张红霞,吴桐桐,冷雪亮. 基于粗糙集理论的模糊聚类算法研究[J]. 软件,2019,40(9):156-163 Research on Fuzzy Clustering Algorithm Based on Rough Set Theory ZHANG Hong-xia,?WU Tong-tong,?LENG Xue-liang (College of Computer and Information, Shandong University of Science and Technology, Qingdao?266000,?China) 【Abstract】: Rough set theory is a new mathematical tool for dealing with vague and uncertain knowledge. It is good at analyzing the facts hidden in the data without any additional knowledge about the data. Rough set theory not only provides new scientific logic and research methods for information science and cognitive science, but also provides effective processing technology for intelligent information processing. Clustering is a module in the data mining system. It can be used as a separate tool to discover the deep information of data distribution in the database, or as a pre-processing step of other data mining analysis algorithms. The fuzzy clustering algorithm ignores the problem of cluster boundary uncertainty and complex data problems, which leads to the unsatisfactory clustering effect. This paper proposes to combine the rough set and the fuzzy clustering algorithm, and use the concept of the approximate set and the lower approximation set on the rough set to obtain the similarity measure to improve the fuzzy clustering algorithm. Experiments show that the improved algorithm can get better clustering effect. 【Key words】: Rough set; Fuzzy clustering; Upper approximation; Lower approximation0??引言 聚類分析按照不同的标准有不同的划分,按照数据样本隶属度的取值范围划分,可以将聚类分析方法分为两类,一类叫硬聚类分析,另一类叫软聚类分析,也叫模糊聚类分析。硬聚类是一种严格地划分,旨在将每一个数据样本划分到一个确定的簇中,划分机制非常明确,其隶属度只有两个值0和1,也就是说,一个样本只能完全属于某一个类或者完全不属于某一个类。例如,将小于或者等于40岁的人划分为年轻,大于40岁的人划分为不年轻,那么不管是39岁还是9岁,都属于年轻类,这就是典型的“硬隶属度”概念,这种聚类方法过于严格,对于一些位于边界处的数据对象不是很友好,容易产生误差。软聚类对于数据对象的划分比较宽容,它是依据数据样本隶属度的大小,将其划分到不同的簇。比如30岁,可能属于年轻这类的隶属度值为0.7,而属于不年轻这个类的值为0.3,这样划分就比较合理。另外,当隶属度的值只取0或1时,模糊聚类就变成了硬聚类。通过介绍,可以看到模糊聚类获得的聚类结果具有不确定性,它将聚类结果进行了模糊化,这样就能够对现实世界中的数据划分问题进行更加客观的描述,因此模糊聚类分析已成为聚类研究的主流方向之一。 本文算法结合了粗糙集[1-3]等理论,提出了基于粗糙集理论的模糊聚类算法。该算法是通过粗糙集理论最终得到一个隶属值,然后,用表示的抑制率乘以非获胜者所属类簇的隶属度值,以修改模糊隶属度,从而在一定程度上增加获胜者的隶属度值。通过实验表明该算法能够解决原始算法中的缺点,并且还能提高聚类的准确率和减少花费的时间。1 ?相关工作 1.1模糊C均值聚类算法原理 模糊C均值聚类算法是目前应用最广泛的软聚类[4-5]算法之一,该算法利用目标函数来解决数据样本的聚类问题,把聚类的过程转化成带约束的优化问题,因此可以借助数学领域中经典的非线性规划理论对其进行求解。 假设数据样本集合 且满足: 其中, 观察上式可以发现, 假设計算数据样本中的样本1到各个类中心的隶属度,此时j=1, 通過上述分析可以知道,当类 对于式(5)通俗的解释就是,类 1.2模糊C均值聚类算法步骤 模糊C均值聚类算法首先需要事先确定聚类[9-11]中心,再计算每个数据样本属于每个聚类中心的隶属程度,得到一个隶属度矩阵;然后根据隶属度的大小对所有数据样本进行划分,得到每个数据样本的聚类情况,根据最新的划分,再重新计算每个类的聚类中心。模糊C均值聚类的过程就是通过迭代聚类中心和隶属度矩阵,直到算法收敛为止。 算法1-1??模糊C均值聚类算法 输入:数据集 输出:隶属度矩阵 Step1:对参数进行初始化。给定聚类数目 Step2:根据式(6)更新聚类中心 Step3:根据式(7)更新隶属度矩阵 定义3.2 ?给定一个论域 下近似集为: 边界域为: 集合 上近似集为: 边界域为: 假设数据样本集合 其中: RS-SFC算法基于下近似集和边界域的加权平均,定义了新的模糊质心更新公式,使其同时考虑模糊隶属度和上近似集、下近似集的影响。通过对 其中: 为提高聚类的速度,本文借鉴文献[75]中提出到的抑制因子 对于每个数据对象 这些修改后的隶属度值被用来计算新的聚类 ?中心。 2.2算法步骤 RS-SFC算法的过程是迭代更新公式(19)和公式(3)的过程,直到式(16)趋于稳定,迭代停止。根据上述定义和分析,基于粗糙集的抑制模糊聚类算法的步骤如下:首先,随机选择C个数据对象作为C个簇的聚类中心,然后根据式(3)和(22)计算所有数据样本的模糊隸属度,根据每个样本相对聚类中心的大小对数据样本进行划分。根据得到的新的划分,用式(19)更新聚类中心,然后再根据新的聚类中心求解新的隶属度矩阵,如此循环,当聚类结果趋于稳定后,该算法终止。 算法2-2 ?基于粗糙集的抑制模糊聚类算法 输入:数据集 输出:隶属度矩阵 Step 1:初始化相关参数。给定聚类中心的个数c,设置模糊因子m=2.0,停止阈值 Step 2:根据隶属度矩阵,使用式(4.19)计算聚类中心 Step 3:根据式(4.3)、(4.22)更新隶属度矩阵 Step 4:如果 本节将通过实验对RS-SFC算法进行研究。首先对实验中所用数据集进行描述,并对数据集进行预处理;然后将RS-SFC算法同其他两个常用的聚类算法进行比较,以分析该算法的有效性。最后在对实验结果进行分析的基础上,总结RS-SFC算法的优缺点,为以后的研究指明方向。 本次实验一共分为两部分,一是测试本文提出RS-SFC算法的聚类效果。将该算法与模糊C均值聚类算法、K-means聚类算法同时应用在8个数据集上,并计算每个数据集的准确率、F1值和互信息,以对聚类效果进行对比;二是测试RS-SFC算法的收敛速度。分别记录RS-SFC算法和模糊C均值聚类算法在对数据集进行聚类时的迭代次数。每个算法运行30次,最后取平均值。模糊C均值聚类算法在上文中已有介绍,K-means聚类算法是在现实生活中应用十分广泛的聚类算法,它是一种基于距离的聚类方法,具体描述见参考文献。 3.1数据集描述 由于本实验需要计算聚类准确率,以对算法的聚类效果进行分析,因此实验中采用带有属性标签的数据集。实验中所用到的数据集的信息如表1所示,其中包含经典的人工数据集和UCI上的真实数据集。这些数据集在属性数量、类簇数量上有一定的区分度。 在进行聚类之前,先对数据进行预处理。使用本文第三章中提出的MIMR属性约简算法,对表1中的数据集进行属性约简,以剔除数据集中没有用的列,减少数据集的规模。经过属性约简后,得到表2所示的实验数据集。 3.2评价指标 本文通过计算聚类结果的准确率(Accuracy),F-measure和互信息(NMI),来评价聚类结果的質量,通过算法迭代次数评价收敛速度。 聚类结果的准确率类定义如下: 其中, F-measure又称F-score: 其中, 标准化互信息是描述变量之间相互依赖性大小的度量。 其中, 3.3实验结果及分析 3.3.1??聚类效果比较 为了验证本文提出的RS-SFC算法的有效性,将RS-SFC算法与模糊C均值算法和K-means聚类算法进行对比。为了评价算法的聚类效果,实验对每个数据集在三个算法上取得的聚类结果的准确率、F1值和互信息进行了比较。每个算法在每个数据集上一共运行30次,最后取平均值。 (1)聚类准确率比较 表3是三种算法在数据集上取得的聚类结果准确率,每个表的最后一行是这8个数据集获得的平均值。表中加黑的单元格数据表示这一行中的最 ?优值。 从准确率的平均值来看,本文的RS-SFC算法在这8个数据集上取得的准确率最高,比K-means算法和模糊C均值算法都有明显的提高。为了更直观的比较三个算法的优劣,将表3用折线图进行展示,如图2所示。 从单个数据集来看,K-MEANS聚类算法对于Dp1数据集的聚类结果最差,模糊C均值和RS-SFC算法在Dp1数据集上都取得了很高的聚类准确率; 对于wine数据集来说,K-means算法取得了最高的准确率,本文的RS-SFC算法虽然没有取得最大值,但是比K-means算法的准确率仅低3.4%,并且仍然高于模糊C均值算法。在hepatitis数据集上,三个算法的准确率都不高,没有超过80%。通过分析发现,hepatitis数据集是一个不平衡性数据集,准确率评价指标在数据划分相对平衡的数据集上,能够更好的说明聚类效果。在其他几个数据集上,RS-SFC算法都能得到较高的准确率,尤其在类簇数量比较多的数据集上取得了不错的表现,如glass数据集和Heart-disease数据集。综上所述,RS-SFC算法的聚类准确率远于其他两个对比算法相比,具有明显的优势。 (2)F1值比较 表4和图3展示的三个算法聚类结果的F1值。在表4中,最后一行是对每一列数据求均值得到的平均数。表中加黑的单元格数据表示这三个算法在同一个数据集上取得的最优值。F1值评价指标在评价聚类效果时更加全面,它不仅考虑了聚类结果的准确率,还考虑了召回率,因而能够更好的描述不平衡数据的聚类效果。 由表4和图3可发现,RS-SFC算法在数据集glass和heart-disease上得到的F1值要明显的大于另外两个算法,这个数据集的聚类数目分别是7和5,这说明RS-SFC算法在类簇数较多的数据集上也可以取得理想的效果。对于wine数据集来说,尽管K-means算法得到最高的F1值,但是在两个软聚类算法中,RS-SFC算法的F1值仍然高于模糊C均值算法。此外,在haberman數据集上,模糊C均值算法的F1值略高于其他两个算法,但是相差不大。 整体上来看,RS-SFC算法在8个数据集上得到的平均F1值高于另外两个算法,并且在四分之三的数据集中取得了最大值,这证明了RS-SFC算法的有效性和稳定性。 (3)标准互信息比较 标准互信息(NMI)可以衡量两个变量的之间的相关性,是一种常见的评价聚类效果的指标。在本章的实验里,用标准互信息来衡量数据样本的实际类别与聚类结果是否一致。 标准互信息的值域是(0,1),对于聚类算法来说,聚类效果越好,其值越接近于1,否则越接近0。图4是根据表5所作的三个算法在8个数据集上得到的互信息折线图。 从图4可以发现,RS-SFC算法求得的标准互信息的平均值要高于另外两个算法。从单个数据集来看,在wine数据集上,与准确率和FI一样,K-means算法的效果更好,但是在两个软聚类算法中,RS-SFC算法的标准互信息值较模糊C均值算法仍然有小幅度的提升。此外,在维度比较高的两个数据集breast和Heart-disease上,本章的RS-SFC算法较另外两个算法仍有较大幅度的提升。在其他数据集上,RS-SFC算法相对于另外两个算法也有小幅度的提升。 综合三个评价指标可以发现,本章提出的RS-SFC算法和模糊C均值算法在wine数据集上的表现较差,略逊色于K-means算法。这是由于K-means聚类算法属于硬聚类算法,当一个数据集中,属于同一个簇的数据样本相似度很高,而属于不同簇的数据样本相似度明显小的时候,这类算法具有明显的优势。但对于噪声样本比较多、簇与簇之间边界不清晰的数据集来说,RS-SFC算法则更加适用。另外,通过实验可知,?RS-SFC算法在实验中的大多数数据集上聚类效果都优于对比算法,证明了RS-SFC算法的有效性。 3.3.2??迭代次数比较 在RS-SFC算法中,设置了一个抑制因子 实验结果如表6所示。 通过上表很明显的可以看出,RS-SFC算法的迭代次数明显少于模糊C均值聚类算法,且随着抑制因子 本章首先介绍了模糊聚类的有关概念,对模糊C均值聚类算法的原理进行了解释,描述了模糊C均值算法的算法步骤;然后将粗糙集理论引入到模糊C均值算法中,根据粗糙集理论中上、下近似集的思想,将模糊C均值算法中的聚类中心更新公式进行了改进,降低了簇边缘噪声数据对聚类效果影响,同时设置了一个抑制因子以提高算法的收敛速度,提出了一种基于粗糙集的抑制模糊聚类算法;最后通过实验,在多个数据集上对RS-SFC算法进行了验证。 参考文献 [1]?王国胤, 姚一豫, 于洪. 粗糙集理论与应用研究综述[J]. 计算机学报, 2009, 32(07): 1229-1246. [2]?苗夺谦, 张清华, 钱宇华, 梁吉业, 王国胤, 吴伟志, 高阳, 商琳, 顾沈明, 张红云. 从人类智能到机器实现模型——粒计算理论与方法[J]. 智能系统学报, 2016, 11(06): 743-757.
|
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。