K均值聚类算法是什么?这个问题对很多老站长来说比较清楚,但是作为一个新手或是在实践中的站长来说不是很了解。这里seo经验交流为您介绍K均值聚类算法,希望对您有一定的帮助。
& k1 a: B2 o5 i/ q/ q! }) z8 _2 w6 r i0 P/ ~- r
【K均值聚类算法】——下面通过什么是聚类 、k均值算法及、k均值伪代码。4 U9 N5 H# ?3 \; {3 Z3 s( f
1 c& U, W+ {- T6 U
一、什么是类聚;$ \! q& X1 r1 l& v. i/ E
! @# a0 I- g/ E2 a- x
聚类是一个将数据集中在某些方面相似的数据成员进行分类组织的过程,聚类就是一种发现这种内在结构的技术,聚类技术经常被成为无监督学习。9 u& E2 c3 D. S1 k
- t8 u* c5 @+ M6 e3 @4 Q% t k均值聚类是最著名的划分聚类算法,由于简洁和效率使得他成为所有聚类算法中最广泛使用的。给定一个数据点集合和需要的聚类数目k,k由用户指定,k均值算法根据某个距离函数反复把数据分入k个聚类中。' _/ o* t7 K8 J0 k; {, }
3 F: x3 R q2 |: a/ D- B 二、k均值算法;; a) a; b# d- X Y% K# {
5 v( ~' y4 Z# R" V3 J) F) e" V6 L 先随机选取K个对象作为初始的聚类中心。然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。一旦全部对象都被分配了,每个聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是以下任何一个:
, C% i, O( t) m/ E& Y4 g+ i
+ S' ~9 {6 h+ [7 r/ c3 X. j% w 1)没有(或最小数目)对象被重新分配给不同的聚类。
! G- M' g4 l; H$ I" F4 N8 c" k) Q8 w+ F
2)没有(或最小数目)聚类中心再发生变化。* I' w. ?# g/ N$ X8 P
* T: S2 U2 t9 A3 f5 d8 D; s
3)误差平方和局部最小。
h8 N! f; Y- z+ ^, k! f
O) ?2 G5 D4 b' B7 K! c k均值伪代码;$ n+ k& }5 o0 a0 j
H: l1 R' s4 [4 u; _9 W4 ?
选择k个点作为初始质心。
8 N/ Z1 D$ V( B. X3 Z9 C2 l0 T8 x, @1 g t
repeat 将每个点指派到最近的质心,形成k个簇 重新计算每个簇的质心 util 质心不发生变化。
. |* r* m+ ~# T- X, \, x% n8 K% c+ J- d1 `$ `# u/ }
希望通过本文介绍您对此有个较为全面的了解,seo校长将于大家一同共勉互通有无,共同进步。4 I7 T( c: ]0 V9 J t$ g- B
0 O$ ~- ^' l8 E+ p0 e! }2 [0 V
本文原创自:http://xw.seo00568.com/
0 y8 g7 n( L6 y8 u$ H- T% q
) Q' [# \" v0 g2 T# C6 q( M; _0 Z http://seoxz.diandian.com/
. p$ x# H( O: z3 C2 T, J2 T. j; L6 P
|