正在进行安全检测...
时间:2023-11-22 12:50:37 下载该word文档
ISODATA算法:(1)算法原理:
ISODATA算法是在k-均值算法的基础上,增加对聚类结果的“合并”和“分裂”两个操作,并设定算法运行控制参数的一种聚类算法。
IterativeSelforganizingDataAnalysisTechniquesAlgorithm迭代自组织数据分析算法“合并”操作:当聚类结果某一类中样本数太少,或两个类间的距离太近时,进行合并。“分裂”操作:当聚类结果某一类中样本某个特征类内方差太大,将该类进行分裂。(2)算法特点:
使用误差平方和作为基本聚类准则
设定指标参数来决定是否进行“合并”或“分裂”设定算法控制参数来决定算法的运算次数具有自动调节最优类别数k的能力算法规则明确,便于计算机实现(3)算法步骤:①初始化
设定控制参数:c:预期的类数;
Nc:初始聚类中心个数(可以不等于c);
TN:每一类中允许的最少样本数目(若少于此数,就不能单独成为一类);
TE:类内各特征分量分布的相对标准差上限(大于此数就分裂);TC:两类中心间的最小距离下限(若小于此数,这两类应合并);
NT:在每次迭代中最多可以进行“合并”操作的次数;NS:允许的最多迭代次数。
选定初始聚类中心
②按最近邻规则将样本集{xi}中每个样本分到某一类中③依据TN判断合并:如果类ωj中样本数nj,则取消该类的中心zj,Nc=Nc-1,转至②。
④计算分类后的参数:各类重心、类内平均距离及总体平均距离
1z计算各类的重心:jnjxixji
1计算各类中样本到类心的平均距离:djnjxixjizjNc
1计算各个样本到其类内中心的总体平均距离:dNndjj1j
⑤判断停止、分裂或合并。
a、若迭代次数Ip=NS,则算法结束;
b、若Nc≤c/2,则转到⑥(将一些类分裂);c、若Nc≥2c,则转至⑦(跳过分裂处理);
d、若c/2<Nc<2c,当迭代次数Ip是奇数时转至⑥(分裂处理);迭代次数Ip是偶数时转至⑦(合并处理)。⑥分裂操作
计算各类内样本到类中心的标准差向量σj=(σ1j,σ2j,….,σnjT,j=1,2,…..,Nc1其各分量为:kjnj
22(xzkikjxij1求出每一类内标准差向量σj中的最大分量
kmaxjmax{kj},j