预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共27页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

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

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

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

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

编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:实验目的通过对Irisdata采用Isodata算法进行聚类,掌握Isodata算法的原理以及具体实施步骤。二.实验原理C均值算法比较简单,但它的自我调整能力也比较差。这主要表现在类别数不能改变,受代表点初始选择的影响也比较大。ISODATA算法的功能与C均值算法相比,在下列几方面有改进。1.考虑了类别的合并与分裂,因而有了自我调整类别数的能力。合并主要发生在某一类内样本个数太少的情况,或两类聚类中心之间距离太小的情况。为此设有最小类内样本数限制,以及类间中心距离参数。若出现两类聚类中心距离小于的情况,可考虑将此两类合并。分裂则主要发生在某一类别的某分量出现类内方差过大的现象,因而宜分裂成两个类别,以维持合理的类内方差。给出一个对类内分量方差的限制参数,用以决定是否需要将某一类分裂成两类。2.由于算法有自我调整的能力,因而需要设置若干个控制用参数,如聚类数期望值,每次迭代允许合并的最大聚类对数、及允许迭代次数等。下面我们将ISODATA算法的步骤列出:步骤1(确定控制参数及设置代表点)需确定的控制参数为,聚类期望数,一个聚类中的最少样本数,标准偏差控制参数,用于控制分裂,类间距离控制参数,用于控制合并,每次迭代允许合并的最大聚类对数,允许迭代的次数。设初始聚类数为及聚类中心。步骤2(分类)对所有样本,按给定的个聚类中心,以最小距离进行分类,即若步骤3(撤消类内样本数过小类别)若有任何一个类,其样本数,则舍去,令,将原样本分配至其它类;步骤4(更新均值向量)按现有样本分类结果,调整均值参数步骤5(计算类内平均距离)每类中各样本离开均值的平均距离步骤6(计算整个样本集偏离均值的平均距离)步骤7(入口选择)如这是最后一次迭代(取决于迭代上限),则转步骤11,并设置,防止合并发生。如果,则转向步骤8,执行分裂步骤;如果,则转向步骤11,执行合并步骤。步骤8(求各类内各分类标准偏差)对每个聚类,求其标准偏差式中是类中第个样本的第分量,是的第个分量,是第个聚类第个分量的标准偏差,D是样本特征维数。步骤9(求每类具有最大标准偏差的分量)指每类具有最大标准偏差的分量。步骤10(分裂计算步骤)若任一个有,并且有(a)且,或有(b),则把分裂成两个聚类,其中心相应为与,把原来的取消,且令,由于与值设置不当将会导致影响到其它类别,因此与可按以下步骤计算:给定一值,;其中值应使中的样本到与的距离不同,但又应使中的样本仍然在分裂后的新样本类中。步骤11(计算类间聚类中心距离)类与类的类间距离步骤12(列出类间距离过近者)比较与并将小于的按上升次序排列该队列最大个数是控制合并对数的参数步骤13(执行合并)从类间距离最大的两类开始执行合并过程,此时需将与合并,得且,从第二个开始,则要检查其涉及类别是否已在前面合并过程中被合并,如两者并未被合并,则执行合并过程。步骤14(结束步骤)如是最后一次迭代则终止,否则可根据需要转步骤1或步骤2,转步骤1是为了更改控制数。迭代计数要加1。以上是整个ISODATA算法的计算步骤。可以看出ISODATA算法与C均值算法一样,都是以与代表点的最小距离作为样本聚类的依据,因此比较适合各类物体在特征空间以超球体分布的方式分布,对于分布形状较复杂的情况需要采用别的度量。ISODATA算法与C均值算法的主要不同在于自我控制与调整的能力不同。它们的另一个不同点是,C均值算法的类均值参数在每个样本归入时随即修改,因而称为逐个样本修正法,而ISODATA算法的均值向量或聚类中心参数是在每一次迭代分类后修正的,因而称为成批样本修正法。实验过程及结果分析按照算法过程进行仿真,首先设置算法中所需要的控制参数,控制参数的选取有多种选择组合,这里,我们先设置一组控制参数,对Irisdata进行聚类,说明算法的实施过程以及对得到的结果进行分析。参数设置如下图所示:其中,确