赞
踩
模糊C-均值聚类算法:是一种模糊聚类算法,是K均值算法聚类的推广形式,隶属度取值为[0,1]区间内的任意一个数,提出的基本依据是“类内加权误差平方和最小化”准则。
这两个方法都是迭代求取最终的聚类划分,即聚类中心与隶属度值。两者都不能保证找到问题的最优解,都有可能收敛到局部极值,模糊c均值甚至可能是鞍点。
样本矩阵: X = [ x 1 , x 2 , . . . , x n ] ∈ R d × n X=[x_1,x_2,...,x_n] ∈R^{d×n} X=[x1,x2,...,xn]∈Rd×n,有n个 x i x_i xi每个 x i x_i xi是d维
簇集合: C = [ C 1 , C 2 , . . . , C c ] C=[C_1,C_2,...,C_c] C=[C1,C2,...,Cc],有c个簇集合
加权误差平方和:计算每个样本点和相应簇均值的加权误差平方和,即:
m
i
n
F
1
=
1
,
F
≥
0
,
M
∑
j
=
1
c
∑
i
=
1
n
f
i
j
r
∣
∣
x
i
−
m
j
∣
∣
2
2
(
1
)
⟺
m
i
n
F
1
=
1
,
F
≥
0
,
M
∑
j
=
1
c
∑
i
=
1
n
f
i
j
r
(
x
i
T
x
i
−
2
x
i
T
m
j
+
m
j
T
m
j
)
m
j
是矩阵
M
∈
R
d
×
c
的第
j
列
,
表示第
c
个集合的均值
;
f
i
j
∈
[
0
,
1
]
是隶属矩阵
F
的
i
行
j
列元素,表示第
i
个样本对第
j
个簇的隶属度
;
F
1
=
1
表示
∑
j
=
1
c
f
i
j
=
1
;
r
是模糊器参数或者加权指数,
r
的值是大于
1
的实数,当
r
越趋向于
1
聚类越清晰,
但是当
r
达到无穷大时聚类就变得更模糊
.
当
r
=
1
时
F
C
M
等价于
K
M
E
A
N
\underset{F1=1,F\geq 0,M}{min}\sum_{j=1}^c\sum_{i=1}^n f_{ij}^r||x_i-m_j||_2^2\ \ \ \ \ \ \ \ \ \ \ \ \ (1)\\ \\ \iff \underset{F1=1,F\geq 0,M}{min}\sum_{j=1}^c\sum_{i=1}^n f_{ij}^r(x_i^Tx_i-2x_i^Tm_j+m_j^Tm_j)\\ \\ m_j是矩阵M∈R^{d×c}的第j列,表示第c个集合的均值;\\ \\ f_{ij}∈[0,1]是隶属矩阵F的i行j列元素,表示第i个样本对第j个簇的隶属度;\\ \\ F1=1表示\sum_{j=1}^cf_{ij}=1;\\ \\ r是模糊器参数或者加权指数,r的值是大于1的实数,当r越趋向于1聚类越清晰,\\但是当r达到无穷大时聚类就变得更模糊.当r=1时FCM等价于KMEAN
F1=1,F≥0,Mminj=1∑ci=1∑nfijr∣∣xi−mj∣∣22 (1)⟺F1=1,F≥0,Mminj=1∑ci=1∑nfijr(xiTxi−2xiTmj+mjTmj)mj是矩阵M∈Rd×c的第j列,表示第c个集合的均值;fij∈[0,1]是隶属矩阵F的i行j列元素,表示第i个样本对第j个簇的隶属度;F1=1表示j=1∑cfij=1;r是模糊器参数或者加权指数,r的值是大于1的实数,当r越趋向于1聚类越清晰,但是当r达到无穷大时聚类就变得更模糊.当r=1时FCM等价于KMEAN
上述问题可以看作:
m
i
n
F
1
=
1
,
F
≥
0
,
M
∑
j
=
1
c
∑
i
=
1
n
f
i
j
r
(
x
i
T
x
i
−
2
x
i
T
m
j
+
m
j
T
m
j
)
s
.
t
.
∑
j
=
1
c
f
i
j
=
1
,
F
≥
0
\underset{F1=1,F\geq 0,M}{min}\sum_{j=1}^c\sum_{i=1}^n f_{ij}^r(x_i^Tx_i-2x_i^Tm_j+m_j^Tm_j) \\ \\ s.t.\sum_{j=1}^cf_{ij}=1, \ \ F\geq0
F1=1,F≥0,Mminj=1∑ci=1∑nfijr(xiTxi−2xiTmj+mjTmj)s.t.j=1∑cfij=1, F≥0
用拉格朗日乘子法:
J
=
∑
j
=
1
c
∑
i
=
1
n
f
i
j
r
(
x
i
T
x
i
−
2
x
i
T
m
j
+
m
j
T
m
j
)
+
λ
1
(
∑
j
=
1
c
f
i
j
−
1
)
+
λ
2
(
∑
j
=
1
c
f
i
j
−
1
)
+
.
.
.
+
λ
n
(
∑
j
=
1
c
f
i
j
−
1
)
=
∑
j
=
1
c
∑
i
=
1
n
f
i
j
r
(
x
i
T
x
i
−
2
x
i
T
m
j
+
m
j
T
m
j
)
+
∑
i
=
1
n
λ
i
(
∑
j
=
1
c
f
i
j
−
1
)
f
i
j
=
1
∑
k
=
1
c
(
d
i
j
d
i
k
)
2
r
−
1
=
(
d
i
j
)
2
1
−
r
∑
k
=
1
c
(
d
i
k
)
2
1
−
r
(
2
)
m
j
=
∑
i
=
1
n
f
i
j
r
x
i
∑
i
=
1
n
f
i
j
r
=
∑
i
=
1
n
g
i
j
x
i
∑
i
=
1
n
g
i
j
=
X
g
j
g
j
T
1
(
3
)
其中
d
i
j
=
∣
∣
x
i
−
m
j
∣
∣
2
2
,
f
i
j
r
=
g
i
j
J=\sum_{j=1}^c\sum_{i=1}^n f_{ij}^r(x_i^Tx_i-2x_i^Tm_j+m_j^Tm_j)+\lambda_1(\sum_{j=1}^cf_{ij}-1)+\lambda_2(\sum_{j=1}^cf_{ij}-1)+...+\lambda_n(\sum_{j=1}^cf_{ij}-1)\\ =\sum_{j=1}^c\sum_{i=1}^n f_{ij}^r(x_i^Tx_i-2x_i^Tm_j+m_j^Tm_j)+\sum_{i=1}^n\lambda_i(\sum_{j=1}^cf_{ij}-1)\\ \\ \\ \\ f_{ij}=\frac1{\sum_{k=1}^c(\frac{d_{ij}}{d_{ik}})^{\frac{2}{r-1}}}=\frac{(d_{ij})^{\frac2{1-r}}}{\sum_{k=1}^c(d_{ik})^{\frac{2}{1-r}}}\ \ \ \ (2)\\ \\ \\ m_j=\frac{\sum_{i=1}^nf_{ij}^r x_i}{\sum_{i=1}^n f_{ij}^r}=\frac{\sum_{i=1}^n g_{ij}x_i}{\sum_{i=1}^n g_{ij}}=\frac{Xg_j}{g_j^T\mathbf{1}}\ \ \ \ (3)\\ \\ 其中d_{ij}=||x_i-m_j||_2^2, \ f_{ij}^r=g_{ij} \ \ \ \ \ \
J=j=1∑ci=1∑nfijr(xiTxi−2xiTmj+mjTmj)+λ1(j=1∑cfij−1)+λ2(j=1∑cfij−1)+...+λn(j=1∑cfij−1)=j=1∑ci=1∑nfijr(xiTxi−2xiTmj+mjTmj)+i=1∑nλi(j=1∑cfij−1)fij=∑k=1c(dikdij)r−121=∑k=1c(dik)1−r2(dij)1−r2 (2)mj=∑i=1nfijr∑i=1nfijrxi=∑i=1ngij∑i=1ngijxi=gjT1Xgj (3)其中dij=∣∣xi−mj∣∣22, fijr=gij
Algorithm 1 FCM. The standard algorithm for minimizing problem (1)
1: Input data matrix X ∈ Rd×n, cluster number c.
2: Initialize membership matrix F.
3: repeat
4: Calculate center matrix M ∈ Rd×c by Eq. (3);
5: Calculate membership matrix F ∈ Rn×c by Eq. (2);
6: until convergence
7: Output membership matrix F.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。