摘要:在分析经典聚类判别分析方法实质的基础上,提出了一种新的聚类判别分析框架,改进了一种基于样本指标值频度计算的两总体判别分析算法,提高了在对所有参与建立判别模型的样本进行判别时的计算速度;给出了建立在此改进判别分析算法基础上的一种动态聚类判别分析算法的设计,并实现了所有算法。进行相应的实证研究,结果表明以此聚类判别分析框架对给定样本集合进行分析,可以迅速得到多个合理的聚类结果以及对聚类结果的清晰解释,既可以对已有的聚类结果进行验证,又可以进行数据的探索性分析。
关键词:聚类分析; 判别分析; 动态聚类
0引言
经典聚类分析算法是基于距离计算的。然而除马氏距离定义外,其他距离定义都存在样本指标的量纲处理问题;除马氏距离和斜交空间距离定义外,其他距离定义都存在样本指标的相关性处理问题;另外,包括马氏距离在内的所有距离定义都存在将用于聚类的指标同等对待的缺点,不能反映不同指标对聚类结果的贡献程度。
一般情况下,在确定样本间距离计算方法的基础上,用不同的聚类分析方法得到聚类的结果是不会完全一致的。这是因为在实际应用中,许多对象在不同类之间本身并无清晰的划分。这导致了在既定用于聚类的指标组合的情况下,用不同的聚类方法对同一组样本进行分析会得到不同的聚类结果。如上所述,即使使用同一种聚类方法,有时由于样本的排列顺序不同,也可能导致不同的分类结果。这就提出了对不同的聚类方法进行评价的问题。关于所用方法好坏的评价,现在还没有一个合适的标准。edwards 和cavall isforza (1965) 曾建议把样本分成两类,使得两类间的离差平方和最大[1]。 walter也指出,应该寻找使类内差异最小的聚类方法[2]。因此,评价不同聚类方法的一个重要方面,就是看这些方法得到的聚类结果在类内的接近程度和在类间的相隔程度。一个较好的分类方法应该得到类内差异较小、类间差异较大的聚类结果。在实际应用中,一般采用以下两种处理方法:a)根据分类问题本身的专业知识,结合实际需要来选择分类的方法,并确定分类的个数;b)用多种方法对数据进行分析处理,把结果的共性取出来。如果用几种方法的某些结果都一样,则说明这样的聚类确实反映了事物的本质。将有争议的样本暂放一边,或者用其他方法如判别分析进行处理归类。另外,在聚类分析方法既定的情况下,同一组样本采用不同的指标组合进行聚类分析,通常也会得到不同的分类结果。产生不同结果的原因主要是由于不同的指标组合测度是样本间的不同侧面的相似程度,在进行聚类分析时存在指标组合选择的问题。一般是根据聚类的实际需要进行指标的选择,这是一个比较复杂并且带有主观性的问题。实践中,在开始进行聚类分析时,通常是先选择多种指标组合分别进行聚类,然后对聚类分析的结果进行对比分析,以确定出合适的测度指标。
判别分析产生于20世纪30年代,是利用已知类别的样本建立判别模型,为未知类别的样本判别的一种统计方法。近年来,判别分析在自然科学、社会学及经济管理学科中都有广泛的应用。判别分析的特点是根据已掌握的、历史上每个类别的若干样本的数据信息,总结出客观事物分类的规律性,建立判别公式和判别准则。当遇到新的样本点时,只要根据总结出来的判别公式和判别准则,就能判别该样本点所属的类别。判别分析按照判别的组数来区分,可以分为两组判别分析和多组判别分析。本文仅研究两组判别分析。在众多的判别分析方法中,最直观的是距离判别法。
距离判别的思想是计算待判样本到第i类总体的平均数的距离。哪个距离最小就将它判归到哪个总体。所以,距离判别法的任务就是构造一个恰当的距离函数,通过样本与某类别之间距离的大小判别其所属类别。这里仅讨论两个总体的距离判别法。距离判别只要求知道总体的数字特征,不涉及总体的分布函数。当参数未知和协方差时,就用样本的均值和协方差矩阵来估计。
从距离判别法可以看到判别规则是一个线性函数。由于线性判别函数使用简便,希望能在更一般的情况下建立一种线性判别函数。fisher判别法由fisher在1936年提出,是根据方差分析的思想建立起来的一种能较好区分各个总体的线性判别法。该判别方法对总体的分布不作任何要求。
从两个总体中抽取具有p个指标的样本观测数据,借助于方差分析的思想构造一个线性判别函数:
距离判别法是基于距离计算的,用构造线性判别函数方法进行样本判别的fisher判别法也存在着类似基于距离计算的聚类分析方法当中的不足:
a)将总体和样本的多个指标赋予了同等的判别能力,而这与现实是不相符合的,即不同的指标在判别样本的归属时具有不同的判别能力。
b)没有对用于建立判别分析模型的总体指标进行筛选。这在两总体的某指标没有显著差异时进行判别分析的意义不大,误判的概率很大[3,4]。
c)距离的计算不可避免地会带来量纲上的问题[5]。
d)距离判别方法简单实用,但没有考虑到每个总体出现的机会大小,即先验概率,没有考虑到错判的损失。bayes判别法正是为了解决这两个问题提出的判别分析方法,其判别效果更加理想,应用也更广泛。本文将在实证研究部分用bayes 判别方法对涉及的问题进行分析,作为与新算法计算效果的一个对比。
在回归分析中,变量的好坏直接影响回归的效果。在判别分析中也有类似的问题。用于建立判别准则的指标的选择是判别分析中的一个重要问题。如果在某个判别问题中,将最重要的指标忽略了,相应的判别函数的效果一定不好;另一方面,如果引入了一些判别能力不强的指标,不仅会增加计算量,还会严重地影响判别的效果。但是在许多问题中,事先并不知道哪些是主要指标。因此筛选变量的问题就非常重要,从而产生了逐步判别法。逐步判别法与逐步回归法的基本思想类似,都是采用有进有出的算法,即逐步引入变量,每引入一个重要的变量进入判别式,同时也考虑较早引入判别式的某些变量。如果其判别能力随新引入的变量而变为不显著了(如其作用被后引入的某几个变量的组合所代替),应及时从判别式中把它剔除,直到判别式中没有不重要的变量需要剔除,而剩下的变量也没有重要的变量可以引入的判别式时,逐步筛选结束。这个筛选过程实质就是作假设检验。通过检验找出显著性变量,剔除不显著的变量,得到用于建立判别式的变量组合后,可用各种方法建立判别函数和判别准则。
实际上,以上提到的不论是距离判别法、fisher判别法,还是bayes判别法、逐步判别法,其出发点都是把给定的分组作为构造判别函数的依据和出发点,其最终结果都是构造一个线性判别函数。它们仅仅是判别函数构造思想上的差异。距离判别法基于距离判别思想;fisher 判别法基于方差分析思想,判别式的形式为距离判别式的一般形式;bayes判别法基于条件概率思想;逐步判别法基于假设检验思想确定用于判别的指标,但其判别式的确定仍由其他判别分析方法确定。
以上各种判别分析方法中,仅有逐步判别法的基本思想中考虑到了不同指标具有不同的判定能力,但是其思想的具体体现仅在于确定用于构建判别式的指标,并没有给出各个指标具体的判别能力大小的差异。实际上不仅不同指标的判别能力存在差异,而且在筛选掉部分指标的同时也会丢失该部分指标所包含的判别信息。
对于一组给定的样本,对其进行聚类分析时,可以应用不同的聚类方法对不同的指标组合进行聚类分析,同时也将得到多组不同的聚类结果。对于某些指标组合下的聚类结果,结合实际可能会得到比较符合实际意义的解释,对此类聚类结果可以为其构造特定的判别模型,用于新样本类别的判别。因此,聚类分析的实质是对不同的指标组合下的样本分类组合的可能性进行搜索,找出符合特定聚类定义的组合。其作用是寻找满足特定需求的,或者说可以给出较好解释的聚类结果。判别分析的实质是根据历史信息或者聚类的结果建立判别标准,用于对参加聚类的样本和新的样本的判别。聚类分析和判别分析之间存在着紧密的联系。聚类分析的结果作为进行判别分析的基础;而判别分析不仅可以用于对新样本进行判别,而且另一个重要的作用在于校验聚类分析结果的正确性,即回判。
基于以上的分析结论,传统的对数据的聚类判别分析流程一般是先有聚类分析,然后在其之上的判别分析。本文将借鉴经典聚类分析和判别分析中的部分思想,从聚类分析和判别分析的实质出发,逐步构建出一类有异于传统分析思路的样本聚类判别分析算法,并尝试在新算法中解决经典聚类判别分析方法中存在的部分问题。
1动态聚类判别分析算法的设计和实现
1.1新的聚类判别分析框架
对于一组给定的需要进行聚类分析和判别分析的样本集合,新的聚类判别分析框架基于以下基本事实:
a)对于给定的样本序列,有有限种分组方案。
b)用传统聚类分析方法得出的结果并不总能遍历以上所有的分组可能。不仅因为其中部分分组在任何指标组合下都不合理,还因为传统聚类分析方法得出的结果本身就有限。在指定指标组合、指定样本排列顺序的情况下一种聚类方法仅能给出一个聚类结果。
c)对于用聚类方法得不出的分组方案,存在部分用判别分析进行判别回判率为百分之百的分组方案。
d)对于既定的分组,不同指标在区分该分组的能力上存在差异。不同组的某些指标差异明显,有些并没有明显差异。
新的聚类判别分析框架的设计基于以下基本假设:对于任意一种分组方案,如果判别分析的回判正确率足够高,那分组就是合理的和可以接受的。因此,新的聚类判别分析框架设计的基本思想是聚类分析建立在判别分析的基础之上。据此设计的新算法中并不包括具体的聚类分析算法,仅仅包括判别分析算法。
本文中应用的判别分析算法基于文献[6]提出的基于样本指标值频度计算的判别分析算法。该两总体判别分析算法的思想与逐步判别法的思想有一定的相似之处。不同之处在于其核心思想不是筛选变量,而是筛选指标值,是逐步筛选出具有显著判别能力的指标值;不是根据用具有显著判别能力的变量建立判别式,而是用筛选出的具有显著判别能力的指标值建立判别模型;其判别模型不是线性判别式,而是一个复杂的判定模型系统;得出的结果不是某样本的判定结果,而是某样本属于某总体的概率。该算法筛选指标值的基本思想为:对于同一指标而言,假设两组中所有样本的该指标值为一维空间上的点。如果两组内距离最近的两点距离小于或者等于这两点中任意一点到该点所在组的其他任意一点的距离,则这两点根本就不具有判别能力,应该剔除。为提高该算法的计算速度,进行了如下两点优化,在程序实际运行中取得了良好效果:
a)对某指标进行计算时应用冒泡算法对所有指标值进行排序。该数据预处理大大提高了指标值的筛选速度。
b)因为对样本的判别问题是通过计算该样本的各个指标值上的判别概率得到的,从对数据库表的访问效率出发,进行判别分析时不是依次对每一个样本进行判别,而是按照指标的顺序依次计算所有样本的某指标值在该指标下的判别概率,并且若某指标的权重为零时不需要计算任何样本在该指标下的判别概率,最后对每一个样本进行判别。
本文依据以上提出的聚类判别分析框架,以改进的两总体判别分析算法为基础,提出了一种动态的聚类判别分析算法的设计,并在实现算法的基础上进行了相应的实证研究。
1.2两总体动态聚类分析算法的设计和实现
两总体动态聚类分析算法的设计基于两总体判别分析算法。其基本思想在于从某初始判别状态出发,不断修正判别分析中错判的样本分组,直到所有样本已经判别,并且回判率为100%或出现错判循环为止。
根据样本初始判别状态的情况,这里把动态聚类分为有指导的动态聚类过程和无指导的动态聚类过程。有指导的动态聚类过程是指在进行聚类分析之前根据实际经验对所有或者部分样本进行组别的指派,这有助于加快动态聚类的过程,并产生期望的聚类结果;无指导的动态聚类过程是指在进行聚类分析之前不进行任何初始判别状态的设置。其中有指导的动态聚类与无指导的动态聚类的区别在于,无指导的动态聚类可能导致聚类过程中判别次数的增加,这在进行大样本聚类时,时间开销将成倍增加;另一个可能产生的结果是无指导的聚类过程会产生与预期不同的分类结果,即聚类的可能结果更多,可用于试探性分析。一般有指导的聚类分析过程可以很快得出与预期相符合的聚类结果。
从另一个角度对动态聚类过程可以作如下分类:可以在初始聚类之前一次全部指定所有样本的判别状态,之后不断修正样本的判别状态直到判别结束,也可以逐步添加参加判别分析的样本个数。实证分析的结果表明,第一种动态聚类方法的聚类过程不稳定,有时会产生抖动现象,即某次的很多错判样本在修改组别后进行下一次判别后仍然为错判样本,如此不断反复,甚至出现循环。出现这种现象的原因可以解释为当错判样本较大时,即使改变了错判样本的组别,因为错判样本个数相对较大,错判的样本对新的判别模型仍然会产生很大的影响。另外因为分组本身存在的模糊性,某些样本本身属于两总体的概率就比较接近,也有可能导致该类现象的发生。
一个解决方案是为所有错判的样本,选择错判概率最大的样本改变组别,但这不能从根本上解决抖动现象的发生。用第二种动态聚类算法可以很好地解决此类问题,因为第二类逐步聚类分析方法中,每次判别分析都将错判样本的个数控制在相对较小的范围内,每次增加一个新的样本进入判别模型。图1给出第二种动态聚类过程的算法流程。
在动态聚类的算法流程设计中,所有样本没有判别之前,某次判别过程后,需要平衡不同组别的样本个数,使不同组别的样本个数差不大于1;在所有样本组别判别之后实行不平衡样本个数的判别过程。实际上也可以进行不平衡样本个数的动态聚类。这样得到的结果有可能与经典的聚类分析算法有很大的差异,但聚类结果仍然可以得到很好的解释。
两总体的判别分析算法以及相应的动态聚类分析算法已经应用在基于odbc和ado标准的数据库访问技术、sql server 2000数据库、visual basic 6.0编程工具,参考相关技术资料[1,2,7]实现。以下分别给出不平衡样本个数的无指导动态聚类、平衡样本个数的无指导动态聚类以及平衡样本个数的有指导动态聚类的算例及其分析。
2关于该算法的实证研究
以下实证分析所用的原始数据以及用经典判别分析方法得到的结果均来自文献[3]。
2.1不平衡样本个数的无指导动态聚类
不平衡样本个数的无指导动态聚类更符合实际,但数据量少时,可能得到的结果不具有统计学意义。
对人文发展指数案例中14个样本的原始数据进行不平衡样本个数的无指导动态聚类过程得到的结果,与经典判别分析结果的分组完全相同。聚类结果如表1、2所示。在该聚类结果中,指标成人识字率(%)的权重仅为0.142 857。这与用逐步判别法进行判别分析时得出的判别式的结论比较一致。
另外还给出两种可能的聚类结果,分别如表3、4和表5、6所示。其中第二种聚类结果中出生时的预期寿命成为最重要的指标,分组的结果使得出生时的预期寿命相似的样本成为一组;同时使同组内样本在成人识字率以及调整后的人均gdp这两个指标上没有明显的差异。第三种聚类结果中调整后的人均gdp成为最重要的指标,分组的结果使得调整后的人均gdp相似的样本成为一组;同时使同组内样本在出生时的预期寿命以及成人识字率这两个指标上没有明显的差异。实际上已经有不少学者对联合国开发计划署人文发展指数的确定方法表示了怀疑。因为该指数本身的确定方法,包括所选的指标以及指标值的调整等都不存在令人信服的理由[8,9]。本文给出的这两种聚类分析的结果可以从其他角度给出人文发展指数的可能更合理的确定方法,即把所有参加评价的国家纳入聚类分析的范围进行探索性的分析,并选择可以接受的聚类结果。
不平衡样本个数的无指导动态聚类算法当然可以作为一个数据挖掘算法用于挖掘离群点。但是有时候这并不符合聚类的初衷。因为聚类的结果并不能通过显著性检验,无统计学意义。
2.2平衡样本个数的无指导动态聚类
平衡样本个数的无指导动态聚类是指在所有样本没有全部被判别完之前,在每次判别之前对组别的样本个数进行判别。与不平衡样本个数的无指导动态聚类相比,不容易出现分组个数严重不平衡的情况,但并不能避免这种情况的发生。下面以人文发展指数案例的聚类分析中给出的第二种聚类结果说明这种情况。
第二种聚类结果如表7、8所示。在第二种聚类结果中,成人识字率成为判别能力最显著的指标。其中,阿联酋、南非和中国三个成人识字率最低的国家成为一组;其他11个国家成为另一组。各组内其他两个指标的差异不显著。因此该分组方案中识别的是所有样本在识字率指标上的差异。
2.3平衡样本个数的有指导动态聚类
将人文发展指数案例中的待判样本加入聚类样本中,并且把待判样本以外的其他样本的组别作为动态聚类的起点,得到的聚类结果如表9、10所示。聚类结果与经典判别分析结果一致,并且指标权重的计算结果表明实际人均gdp指标具有显著的判别能力,成人识字率判别能力不显著。
3结束语
本文在分析经典聚类分析和判别分析方法实质的基础上,给出了一种新的聚类判别分析框架,并利用改进的两总体判别分析算法依据此分析框架构造并实现了一种动态聚类判别分析算法。实证结果表明逐步动态聚类算法具有相对较好的稳定性;无指导动态聚类算法很适合寻找样本中的奇异点,适合作为一种数据挖掘算法使用;有指导的动态聚类更适合于经典聚类算法的聚类问题。
参考文献:
[1]沈毅,陈峰.六种常见的条件系统聚类法比较[j].中国卫生统计,2004,21(6):338-340.
[2]walter d f.on grouping for maximum homogeneity[j].american statistical association journal,1959,53(12):789-798.
[3]于秀林,任雪松.多元统计分析[m].北京:中国统计出版社,1999:61-153.
[4]何晓群.现代统计分析方法与应用[m].北京:中国人民大学出版社,1998:255.
[5]朱孔来.评价指标的非线性无量纲模糊处理方法[j].系统工程,1996,14(11):58-62.
[6]魏世振,杨磊,陈传明.上市公司财务状况判别分析算法的实证研究[j].系统工程,2005,23(1):108-110.
[7]张尧庭,方开泰.多元统计分析引论[m].北京:科学出版社,1982.
[8]保罗·斯特里滕.关于人文发展指数的争论[j].国际社会科学杂志:中文版,1996(1):31-44.
[9]金玉国.新hdi评介[j].山西统计,1995(5):44-45.
[10]陈峰.带约束的聚类分析[j].数理医药学杂志,1999,12(20):112-113.
[11]蔡红艳,韩立岩.上市公司财务状况判定模型研究[j].审计研究,2003(1):62-64.
[12]徐成志,陈少军.odbc 配置数据库应用程序[j].山东农业大学学报:自然科学版,2003,34(2):238-241.
[13]贺智明,李雯.采用动态数据库连接技术开发多课程通用考试信息系统[j].计算机应用与软件,2003,20(4):16-17,77.
[14]赵宇峰,张烨,黑新宏,等.vb 6 访问数据库技术的应用[j].计算机应用研究,2004,21(8):223-224.
[15]谷震离.ado访问sql server数据库技术分析及其应用[j].计算机应用与软件,2004,21(12):32-33,77.
[16]bradley j c,millspaugh a c.visual basic 6.0 高级编程[m].常晓波,刘颖,等译.北京:清华大学出版社,2003.
[17]altman e. financial ratios,discriminant analysis and the prediction of corporate bankruptcy[j].journal of finance,1968,23(9):589-609.
[18]吴德胜,梁樑,殷尹.不同模型在财务预警实证中的比较研究[j].管理工程学报,2004,18(2):105-108.
[19]刘洪,何光军.基于人工神经网络方法的上市公司经营失败预警研究[j].会计研究,2004(2):42-46.
[20]乔韦华韦华,牛芳.上市公司财务困境预测的fisher 判别分析模型[j].统计与信息论坛,2003,18(2):69-71.
[21]zmijewski m e. methodological issues related to the estimation of financial distress prediction models[j].studies on current econometric issues in accounting research,1984,22(9):5982.
[22]grice j s,ingram r of the generalizability of altman’s bankruptcy model[j].journal of business research,2001,54(1):53-61.
[23]郭亚军.综合评价理论与方法[m].北京:科学出版社,2002.
[24]杨淑娥,徐伟刚.上市公司财务预警模型——y分数模型的实证研究[j].中国软科学,2003(1):56-60.
[25]mutapi f, mduluza t, roddam a w. cluster analysis of schistosomespecific antibody responses artitions the population into distinct epidemiological groups[j].immunology letters,2005,96(2):231-240.
[26]yuan h,parrill a. cluster analysis and threedimensional qsar studies of hiv1 integrase inhibitors[j].journal of molecular graphics and modelling,2005,23(4):317-328.
[27]ter braak c j f,herbert h, wies a, et al. bayesian modelbased cluster analysis for predicting macrofaunal communities[j].ecological modelling,2003,160(3):235-248.
[28]liang g s, chou t u, han t c. cluster analysis based on fuzzy equivalence relation[j].european journal of operational research,2005,166(1):160-171.
[29]alexy u,verena s p, wolfgang s h, et al. cluster analysis of individuals with similar trends of fat intake during childhood and adolescence: a new approach to analyzing dietary data[j].nutrition research,2005,25(3):251-260.
[30]pece a e c. generativemodelbased tracking by cluster analysis of image differences[j].robotics and autonomous systems,2002, 39 (3):181-194.
[31]kwon s h.threshold selection based on cluster analysis[j].pattern recognition letters,2004,25(9):1045-1050.
中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。 返回电子论文列表