算法特点
算法思想
算法步骤
-
参考资料
-
-
1.基于ISODATA的用户访问路径聚类算法.百度文库 [引用日期2013-04-15] .
-
2.ISODATA算法.百度文库 [引用日期2013-04-15] .
l 算法:
第一步:输入N个模式样本{xi, i = 1, 2, …, N}
预选Nc个初始聚类中心,它可以不等于所要求的聚类中心的数目,其初始位置可以从样本中任意选取。
预选:K = 预期的聚类中心数目;
θN = 每一聚类域中最少的样本数目,若少于此数即不作为一个独立的聚类;
θS = 一个聚类域中样本距离分布的标准差;
θc = 两个聚类中心间的最小距离,若小于此数,两个聚类需进行合并;
L = 在一次迭代运算中可以合并的聚类中心的最多对数;
I = 迭代运算的次数。
第二步:将N个模式样本分给最近的聚类Sj,假若,即||x-zj||的距离最小,则。
第三步:如果Sj中的样本数目Sj<θN,则取消该样本子集,此时Nc减去1。
(以上各步对应基本步骤(1))
第四步:修正各聚类中心
第五步:计算各聚类域Sj中模式样本与各聚类中心间的平均距离
第六步:计算全部模式样本和其对应聚类中心的总平均距离
(以上各步对应基本步骤(2))
第七步:判别分裂、合并及迭代运算
1. 若迭代运算次数已达到I次,即最后一次迭代,则置θc =0,转至第十一步。
2. 若,即聚类中心的数目小于或等于规定值的一半,则转至第八步,对已有聚类进行分裂处理。
3. 若迭代运算的次数是偶数次,或,不进行分裂处理,转至第十一步;否则(即既不是偶数次迭代,又不满足),转至第八步,进行分裂处理。
(以上对应基本步骤(3))
第八步:计算每个聚类中样本距离的标准差向量
其中向量的各个分量为
式中,i = 1, 2, …, n为样本特征向量的维数,j = 1, 2, …, Nc为聚类数,Nj为Sj中的样本个数。
第九步:求每一标准差向量{σj, j = 1, 2, …, Nc}中的最大分量,以{σjmax, j = 1, 2, …, Nc}代表。
第十步:在任一最大分量集{σjmax, j = 1, 2, …, Nc}中,若有σjmax>θS,同时又满足如下两个条件之一:
1. 和Nj > 2(θN + 1),即Sj中样本总数超过规定值一倍以上,
2.
则将zj 分裂为两个新的聚类中心和,且Nc加1。中对应于σjmax的分量加上kσjmax,其中;中对应于σjmax的分量减去kσjmax。
如果本步骤完成了分裂运算,则转至第二步,否则继续。
(以上对应基本步骤(4)进行分裂处理)
第十一步:计算全部聚类中心的距离
Dij = || zi - zj ||,i = 1, 2, …, Nc-1,j =i+1, …, Nc。
第十二步:比较Dij与θc 的值,将Dij <θc的值按最小距离次序递增排列,即
式中,。
第十三步:将距离为的两个聚类中心和合并,得新的中心为:
,k = 1, 2, …, L
式中,被合并的两个聚类中心向量分别以其聚类域内的样本数加权,使为真正的平均向量。
(以上对应基本步骤(5)进行合并处理)
第十四步:如果是最后一次迭代运算(即第I次),则算法结束;否则,若需要操作者改变输入参数,转至第一步;若输入参数不变,转至第二步。
在本步运算中,迭代运算的次数每次应加1。
[算法结束]
摘自:计算向量相似度的问题
在向量空间模型中,文本泛指各种机器可读的记录。用D(Document)表示,特征项(Term,用t表示)是指出现在文档D中且能够代表该文档内容的基本语言单位,主要是由词或者短语构成,文本可以用特征项集表示为D(T1,T2,…,Tn),其中Tk是特征项,1<=k<=N。例如一篇文档中有a、b、c、d四个特征项,那么这篇文档就可以表示为D(a,b,c,d)。对含有n个特征项的文本而言,通常会给每个特征项赋予一定的权重表示其重要程度。即D=D(T1,W1;T2,W2;…,Tn,Wn),简记为D=D(W1,W2,…,Wn),我们把它叫做文本D的向量表示。其中Wk是Tk的权重,1<=k<=N。在上面那个例子中,假设a、b、c、d的权重分别为30,20,20,10,那么该文本的向量表示为D(30,20,20,10)。在向量空间模型中,两个文本D1和D2之间的内容相关度Sim(D1,D2)常用向量之间夹角的余弦值表示,公式为:
http://marssection.bbs.topzj.com/attachments/m12//12/85/12856/forumid_19946/zrTDMP7_968uATrvfvgg.jpg
其中,W1k、W2k分别表示文本D1和D2第K个特征项的权值,1<=k<=N。
在自动归类中,我们可以利用类似的方法来计算待归类文档和某类目的相关度。例如文本D1的特征项为a,b,c,d,权值分别为30,20,20,10,类目C1的特征项为a,c,d,e,权值分别为40,30,20,10,则D1的向量表示为D1(30,20,20,10,0),C1的向量表示为C1(40,0,30,20,10),则根据上式计算出来的文本D1与类目C1相关度是0.86
那个相关度0.86是怎么算出来的?
—————————————————————
是这样的,抛开你的前面的赘述
在数学当中,n维向量是 V{v1, v2, v3, …, vn}
他的模: ¦v ¦ = sqrt ( v1*v1 + v2*v2 + … + vn*vn )
两个向量的点击 m*n = n1*m1 + n2*m2 + …… + nn*mn
相似度 = (m*n) /( ¦m ¦* ¦n ¦)
物理意义就是两个向量的空间夹角的余弦数值
对于你的例子
d1*c1 = 30*40 + 20*0 + 20*30 + 10*20 + 0*10 = 2000
¦d1 ¦ = sqrt(30*30 +20*20 + 20*20 + 10*10 + 0*0) = sqrt(1800)
¦c1 ¦ = sqrt(40*40 + 0*0 + 30*30 + 20*20 + 10*10) = sqrt(3000)
相似度 = d1*c1/( ¦d1 ¦* ¦c1 ¦)= 2000/sqrt(1800*3000)= 0.86066
-
7585

被折叠的 条评论
为什么被折叠?



