第五章聚类分析Kmeans聚类23页PPT
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
csse.monash.edu.au/~roset/papers/cal99.pdf
体会基于聚类有效性的自动聚类个数选取方法
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Thank you
②对聚类中心的更新只需对系数矩阵 ( vj )kN 进行更新。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法(续)
基于核函数的距离度量:
M
||(x)mv||2||(x) vj(xj)||2 j1
M
MM
K(x,x)2 vjK(x,xj) vivjK(xi,xj)
j1
i1 j1
其中K ( x , y ) 为核函数,在Kernel K-means算法中通常使用 Gaussian核函数:
K(x,y)exp{||x2y2||2}
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
j
3. 按下式重新计算k个聚类中心;
xs
s:label(s)j
c j Nj
, j1,2,...,k
4. 重复步骤2和步骤3,直到达到最大迭代次数为止。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Matlab程序实现
初始中心的选取对算法的影响(续)
初始聚类中心在平面内随机选取
1
0.5
0
-0.5
Points
Initial Centers
-1-1Cluster Ce-0n.t5ers
0
2019/9/22
河北大学工商学院
0.5
1
Industrial & Comerricial College , Hebei University
确定中心:
亦须有助于减小目标函数值,原因:
m
m
||y i w |2 | ||y i y |2 | ||y w |2 |
i 1
i 1
等式成立的充要条件:
w y m1 im1yi
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
K-means聚类算法(续)
分组:
将样本分配给距离它们最近的中心向量,并使目标函数
值减小
n
i1 j{m 1,2,.i.nk.,}||xi pj ||2
Matlab程序实现(续)
Z = zeros(N,K); for m=1:N
Z(m,j(m)) = 1; end e = sum(sum(Z.*Dist)./N); fprintf('%d Error = %f\n', n, e); Mo = M; end
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
function [M, j, e] = kmeans(X, K, Max_Its)
[N,D]=size(X);
I=randperm(N);
M=X(I(1:K),:);
Mo = M;
for n=1:Max_Its
for k=1:K
Dist(:,k) = sum((X - repmat(M(k,:),N,1)).^2,2)';
初始中心的选取对算法的影响(续)
初始聚类中心均在左下角,即均为[-1,1]
1
Points Initial Centers
Cluster Centers
0.5
迭代次数: 0 1000
-0.5
-1-1
2019/9/22
-0.5
0
河北大学工商学院
0.5
1
Industrial & Comerricial College , Hebei University
在图像分割上的简单应用(续)
例2:
注:聚类中心个数为5,最大迭代次数为10。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
算法的优缺点
优点:
思想简单易行; 时间复杂度接近线性; 对大规模数据的挖掘具有高效性和可伸缩性。
在图像分割上的简单应用
例1:
1. 图片:一只遥望大海的小狗; 2. 此图为100 x 100像素的JPG图片,每个像素可以表
示为三维向量(分别对应JPEG图像中的红色、绿色 和蓝色通道) ; 3. 将图片分割为合适的背景区域(三个)和前景区域 (小狗); 4. 使用K-means算法对图像进行分割。
对 于jt1 对 于jt1
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法(续)
棋盘格数据上的聚类效果
2019/9/22
Kernel K-means算法的聚类结果
河北大学工商学院
Kernel K-means算法(续)
分组:
将xt+1赋给最近的中心mα:
M t 1 , 1 0如 其 果 他 对 所 有 的 v , ||( x t 1 m )||2 ||( x t 1 m v )||2
1
如果
M源自文库
M
M
ijK(xi,xj)2 jK(xt1,xj)
初始中心的选取对算法的影响(续)
初始聚类中心均在中心附近
1
0.5
Points Initial Centers Cluster Centers
0
-0.5
-1-1
2019/9/22
-0.5
0
河北大学工商学院
0.5
1
Industrial & Comerricial College , Hebei University
end
[i, j]=min(Dist, [], 2);
for k=1:K
if size(find(j==k))>0
M(k, :) = mean(X(find(j==k), :));
end
end
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
K-means聚类算法
算法描述
1. 为中心向量c1, c2, …, ck初始化k个种子 2. 分组:
将样本分配给距离其最近的中心向量 由这些样本构造不相交( non-overlapping )
的聚类 3. 确定中心:
用各个聚类的中心向量作为新的中心 4. 重复分组和确定中心的步骤,直至算法收敛
数学符号
M iv 0 1如 如 果 果 样 样 本 本 xi不 xi属 属 于 于 第 第 v v个 个 聚 聚 类 类
非线性映射::X F ,将样本从输入空间映射到高
维的特征空间。
M
聚类中心:mv vj(x j ) j 1
注意:①聚类中心的维数与特征空间维数相同,所以可以将 其表示为输入样本在特征空间中像的加权和。
棋盘格数据集(Checkerboard data set)
仅使用其中486个正类数据,并将数据变换到[-1,1]之间, 分布情况如下图所示:
1
0.5
0
-0.5
-1 -1
2019/9/22
-0.5
0
0.5
河北大学工商学院
1
Industrial & Comerricial College , Hebei University
K-means聚类算法(续)
算法的具体过程
1.
从数据集
{
x
n
}
N n
1
中任意选取k个赋给初始的聚类中心c1,
c2, …, ck;
2. 对数据集中的每个样本点xi,计算其与各个聚类中心
cj的欧式距离并获取其类别标号:
3.
la b e l( i) a r g m in ||x i c j||2 ,i 1 ,...,N ,j 1 ,...,k
模式识别
第三章--聚类分析 K-means聚类
主要内容
K-means算法 Matlab程序实现 在图像分割上的简单应用 算法的优缺点 初始中心的选取对算法的影响 Kernel K-means算法
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
聚类中心的更新公式:
m t 1 m t [(x t 1) m t] 其中
M t 1,
t1
M i
则有:
i1
M
M
t j1(xj) tj(1)(xj)(t1)
j 1
j 1
t1 j
的更新公式为:
tj1 t j(1)
Industrial & Comerricial College , Hebei University
作业
编程实现X-means算法(K-means+BIC)
cs.cmu.edu/~dpelleg/download/xmeans.pdf
体会基于模型选择的自动聚类个数选取方法。
编程实现K-means+cluster Validity
Mt1,
i1 j1
j1
MM
M
vivjK(xi,xj)2 vjK(xt1,xj)
i1 j1
j1
0 其他
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法(续)
缺点:
最终的结果会随初始中心的变化而变化; 算法依赖于用户指定的k值; 各聚类间线性不可分时,K-means算法就会失效。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
初始中心的选取对算法的影响
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
在图像分割上的简单应用(续)
分割后的效果
注:最大迭代次数为20次,需运行多次才有可能得到较好的效果。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法
修改欧氏距离度量 ,即引入基于核函 数的距离度量,使 聚类可以产生任意
形状?
K-means算法的聚类结果
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法(续)
体会基于聚类有效性的自动聚类个数选取方法
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Thank you
②对聚类中心的更新只需对系数矩阵 ( vj )kN 进行更新。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法(续)
基于核函数的距离度量:
M
||(x)mv||2||(x) vj(xj)||2 j1
M
MM
K(x,x)2 vjK(x,xj) vivjK(xi,xj)
j1
i1 j1
其中K ( x , y ) 为核函数,在Kernel K-means算法中通常使用 Gaussian核函数:
K(x,y)exp{||x2y2||2}
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
j
3. 按下式重新计算k个聚类中心;
xs
s:label(s)j
c j Nj
, j1,2,...,k
4. 重复步骤2和步骤3,直到达到最大迭代次数为止。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Matlab程序实现
初始中心的选取对算法的影响(续)
初始聚类中心在平面内随机选取
1
0.5
0
-0.5
Points
Initial Centers
-1-1Cluster Ce-0n.t5ers
0
2019/9/22
河北大学工商学院
0.5
1
Industrial & Comerricial College , Hebei University
确定中心:
亦须有助于减小目标函数值,原因:
m
m
||y i w |2 | ||y i y |2 | ||y w |2 |
i 1
i 1
等式成立的充要条件:
w y m1 im1yi
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
K-means聚类算法(续)
分组:
将样本分配给距离它们最近的中心向量,并使目标函数
值减小
n
i1 j{m 1,2,.i.nk.,}||xi pj ||2
Matlab程序实现(续)
Z = zeros(N,K); for m=1:N
Z(m,j(m)) = 1; end e = sum(sum(Z.*Dist)./N); fprintf('%d Error = %f\n', n, e); Mo = M; end
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
function [M, j, e] = kmeans(X, K, Max_Its)
[N,D]=size(X);
I=randperm(N);
M=X(I(1:K),:);
Mo = M;
for n=1:Max_Its
for k=1:K
Dist(:,k) = sum((X - repmat(M(k,:),N,1)).^2,2)';
初始中心的选取对算法的影响(续)
初始聚类中心均在左下角,即均为[-1,1]
1
Points Initial Centers
Cluster Centers
0.5
迭代次数: 0 1000
-0.5
-1-1
2019/9/22
-0.5
0
河北大学工商学院
0.5
1
Industrial & Comerricial College , Hebei University
在图像分割上的简单应用(续)
例2:
注:聚类中心个数为5,最大迭代次数为10。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
算法的优缺点
优点:
思想简单易行; 时间复杂度接近线性; 对大规模数据的挖掘具有高效性和可伸缩性。
在图像分割上的简单应用
例1:
1. 图片:一只遥望大海的小狗; 2. 此图为100 x 100像素的JPG图片,每个像素可以表
示为三维向量(分别对应JPEG图像中的红色、绿色 和蓝色通道) ; 3. 将图片分割为合适的背景区域(三个)和前景区域 (小狗); 4. 使用K-means算法对图像进行分割。
对 于jt1 对 于jt1
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法(续)
棋盘格数据上的聚类效果
2019/9/22
Kernel K-means算法的聚类结果
河北大学工商学院
Kernel K-means算法(续)
分组:
将xt+1赋给最近的中心mα:
M t 1 , 1 0如 其 果 他 对 所 有 的 v , ||( x t 1 m )||2 ||( x t 1 m v )||2
1
如果
M源自文库
M
M
ijK(xi,xj)2 jK(xt1,xj)
初始中心的选取对算法的影响(续)
初始聚类中心均在中心附近
1
0.5
Points Initial Centers Cluster Centers
0
-0.5
-1-1
2019/9/22
-0.5
0
河北大学工商学院
0.5
1
Industrial & Comerricial College , Hebei University
end
[i, j]=min(Dist, [], 2);
for k=1:K
if size(find(j==k))>0
M(k, :) = mean(X(find(j==k), :));
end
end
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
K-means聚类算法
算法描述
1. 为中心向量c1, c2, …, ck初始化k个种子 2. 分组:
将样本分配给距离其最近的中心向量 由这些样本构造不相交( non-overlapping )
的聚类 3. 确定中心:
用各个聚类的中心向量作为新的中心 4. 重复分组和确定中心的步骤,直至算法收敛
数学符号
M iv 0 1如 如 果 果 样 样 本 本 xi不 xi属 属 于 于 第 第 v v个 个 聚 聚 类 类
非线性映射::X F ,将样本从输入空间映射到高
维的特征空间。
M
聚类中心:mv vj(x j ) j 1
注意:①聚类中心的维数与特征空间维数相同,所以可以将 其表示为输入样本在特征空间中像的加权和。
棋盘格数据集(Checkerboard data set)
仅使用其中486个正类数据,并将数据变换到[-1,1]之间, 分布情况如下图所示:
1
0.5
0
-0.5
-1 -1
2019/9/22
-0.5
0
0.5
河北大学工商学院
1
Industrial & Comerricial College , Hebei University
K-means聚类算法(续)
算法的具体过程
1.
从数据集
{
x
n
}
N n
1
中任意选取k个赋给初始的聚类中心c1,
c2, …, ck;
2. 对数据集中的每个样本点xi,计算其与各个聚类中心
cj的欧式距离并获取其类别标号:
3.
la b e l( i) a r g m in ||x i c j||2 ,i 1 ,...,N ,j 1 ,...,k
模式识别
第三章--聚类分析 K-means聚类
主要内容
K-means算法 Matlab程序实现 在图像分割上的简单应用 算法的优缺点 初始中心的选取对算法的影响 Kernel K-means算法
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
聚类中心的更新公式:
m t 1 m t [(x t 1) m t] 其中
M t 1,
t1
M i
则有:
i1
M
M
t j1(xj) tj(1)(xj)(t1)
j 1
j 1
t1 j
的更新公式为:
tj1 t j(1)
Industrial & Comerricial College , Hebei University
作业
编程实现X-means算法(K-means+BIC)
cs.cmu.edu/~dpelleg/download/xmeans.pdf
体会基于模型选择的自动聚类个数选取方法。
编程实现K-means+cluster Validity
Mt1,
i1 j1
j1
MM
M
vivjK(xi,xj)2 vjK(xt1,xj)
i1 j1
j1
0 其他
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法(续)
缺点:
最终的结果会随初始中心的变化而变化; 算法依赖于用户指定的k值; 各聚类间线性不可分时,K-means算法就会失效。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
初始中心的选取对算法的影响
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
在图像分割上的简单应用(续)
分割后的效果
注:最大迭代次数为20次,需运行多次才有可能得到较好的效果。
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法
修改欧氏距离度量 ,即引入基于核函 数的距离度量,使 聚类可以产生任意
形状?
K-means算法的聚类结果
2019/9/22
河北大学工商学院
Industrial & Comerricial College , Hebei University
Kernel K-means算法(续)