模式识别c语言isodata算法,《模式识别-黄庆明》第二章(ISODATA算法实例).doc

ISODATA算法实例:

此例中N 8,n 2。假设取初始值Nc 1,z1 1 x1 0 0 T,则运算步骤如下:

第一步:取K 2,θN 1,θS 1,θc 4,L 1,I 4

预选:K 预期的聚类中心数目;

θN 每一聚类域中最少的样本数目,若少于此数即不作为一个独立的聚类;

θS 一个聚类域中样本距离分布的标准差;

θc 两个聚类中心间的最小距离,若小于此数,两个聚类需进行合并;

L 在一次迭代运算中可以合并的聚类中心的最多对数;

I 迭代运算的次数。

第二步:因只有一个聚类中心,因此S1 x1, x2, …, x8 ,N1 8。

第三步:因N1 θN ,无子集可抛。

第四步:修改聚类中心

第五步:计算模式样本与聚类中心间的平均距离

第六步:计算全部模式样本和其对应聚类中心的总平均距离

第七步:因不是最后一次迭代,且Nc K/2,进入第八步

第八步:计算S1中的标准差向量

第九步:σ1中的最大分量是1.99,因此σ1max 1.99。

第十步:因σ1max θS 且Nc K/2,可将z1分裂成两个新的聚类。设,则

为方便起见,将和表示为z1和z2,Nc加1,返回第二步。

第二步(返回1):新的样本集为

S1 x4, x5, …, x8 ,N1 5

S2 x1, x2, x3 ,N2 3

第三步(返回1):因N1 θN 且N2 θN,无子集可抛。

第四步(返回1):修改聚类中心

第五步(返回1):计算模式样本与聚类中心间的平均距离,j 1,2

第六步(返回1):计算全部模式样本和其对应聚类中心的总平均距离

第七步(返回1):因是偶数次迭代,满足第七步的条件3,进入第十一步

第十一步:计算聚类对之间的距离

第十二步:比较D12 与θc ,D12 θc

第十三步:从上一步结果看出,聚类中心不发生合并。

第十四步:因不是最后一次迭代运算,判断是否需要修改给定的参数。

已获得所要求的聚类数目;

聚类之间的分离度大于类内样本分离的标准差;

每一聚类子集的样本数目都具有样本总数中足够大的比例。

因此,可认为聚类中心具有代表性,返回第二步。

第二~六步(返回2):与上一次迭代计算结果相同。

第七步(返回2):没有一种情况可满足,进入第八步。

第八步(返回2):计算S1 x4, x5, …, x8 和S2 x1, x2, x3 的标准差

第九步(返回2):σ1max 0.75,σ2max 0.82

第十步(返回2):分裂条件不满足,进入第十一步。

第十一步(返回2):与上一次迭代的结果相同,计算得到

第十二、十三步(返回2):与上一次迭代的结果相同。

第十四步(返回2):无新的内容加入本次迭代中,返回第二步。

第二~六步(返回3):与上一次迭代计算结果相同。

第七步(返回3):因是最后一次迭代,置θc 0,转至第十一步。

第十一步(返回3):同上一次迭代,

第十二步(返回3):与上一次迭代的结果相同。

第十三步(返回3):无合并发生。

第十四步(返回3):最后一次迭代,算法结束。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值