Matlab数值分析K-means聚类算法

简介: 我写的附录文章1简单介绍了K-means聚类算法。Matlab提供了专用函数kmeans用于聚类的质心。假设随机生成两维样本数据,然后用kmeans算出聚类并标记出质心:r1=randn(5,2)-2r2=randn(5...
我写的附录文章1简单介绍了K-means聚类算法。Matlab提供了专用函数kmeans用于聚类的质心。
假设随机生成两维样本数据,然后用kmeans算出聚类并标记出质心:
r1=randn(5,2)-2
r2=randn(5,2)+2
X=[r1;r2];

opts = statset('Display','final');
[idx,C] = kmeans(X,2,'Replicates',2,'Options',opts);

C%质心

cluster1=[X(idx==1,1),X(idx==1,2)] %簇1
cluster2=[X(idx==2,1),X(idx==2,2)] %簇2

figure;
plot(X(idx==1,1),X(idx==1,2),'g^','MarkerSize',5);
hold on;

plot(X(idx==2,1),X(idx==2,2),'b.','MarkerSize',15);
hold on;

plot(C(:,1),C(:,2),'r.','MarkerSize',30,'LineWidth',3);
hold on;

legend('聚类C1','聚类C2','质心','Location','NW');



运行产生的随机试验数据:
r1 =

   -1.9197   -1.5771
   -2.8738   -2.0885
   -2.4520   -2.2704
   -1.9906    0.0474
   -3.3071   -0.5084


r2 =

    1.0730    2.0887
    2.7819    1.6868
    3.1847    1.7797
    2.9300    2.6951
    2.9886    2.4277

Replicate 1, 2 iterations, total sum of distances = 9.16468.
Replicate 2, 2 iterations, total sum of distances = 9.16468.
Best total sum of distances = 9.16468

C =

    2.5916    2.1356
   -2.5086   -1.2794


cluster1 =

    1.0730    2.0887
    2.7819    1.6868
    3.1847    1.7797
    2.9300    2.6951
    2.9886    2.4277


cluster2 =

   -1.9197   -1.5771
   -2.8738   -2.0885
   -2.4520   -2.2704
   -1.9906    0.0474
   -3.3071   -0.5084
r1和r2是随机产生的原始二维坐标点。经过K-means聚类后,根据两个质心,归入到两簇:C1簇和C2簇。


结果如图:


附录:
1,《人工智能AI常见的经典K-means聚类算法原理和工作过程》链接:http://blog.csdn.net/zhangphil/article/details/78783629 
2,《数值分析Matlab二维正态(高斯)分布以及协方差矩阵》链接:http://blog.csdn.net/zhangphil/article/details/78803538 
相关文章
|
12天前
|
存储 编解码 算法
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
【多光谱滤波器阵列设计的最优球体填充】使用MSFA设计方法进行各种重建算法时,图像质量可以提高至多2 dB,并在光谱相似性方面实现了显著提升(Matlab代码实现)
|
14天前
|
传感器 机器学习/深度学习 算法
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
102 1
|
13天前
|
传感器 机器学习/深度学习 算法
【UASNs、AUV】无人机自主水下传感网络中遗传算法的路径规划问题研究(Matlab代码实现)
【UASNs、AUV】无人机自主水下传感网络中遗传算法的路径规划问题研究(Matlab代码实现)
|
12天前
|
机器学习/深度学习 传感器 算法
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
【高创新】基于优化的自适应差分导纳算法的改进最大功率点跟踪研究(Matlab代码实现)
103 14
|
16天前
|
传感器 算法 数据挖掘
基于协方差交叉(CI)的多传感器融合算法matlab仿真,对比单传感器和SCC融合
基于协方差交叉(CI)的多传感器融合算法,通过MATLAB仿真对比单传感器、SCC与CI融合在位置/速度估计误差(RMSE)及等概率椭圆上的性能。采用MATLAB2022A实现,结果表明CI融合在未知相关性下仍具鲁棒性,有效降低估计误差。
131 15
|
17天前
|
负载均衡 算法 调度
基于遗传算法的新的异构分布式系统任务调度算法研究(Matlab代码实现)
基于遗传算法的新的异构分布式系统任务调度算法研究(Matlab代码实现)
106 11
|
12天前
|
机器学习/深度学习 运维 算法
【微电网多目标优化调度】多目标学习者行为优化算法MOLPB求解微电网多目标优化调度研究(Matlab代码实现)
【微电网多目标优化调度】多目标学习者行为优化算法MOLPB求解微电网多目标优化调度研究(Matlab代码实现)
|
17天前
|
机器学习/深度学习 传感器 算法
基于全局路径的无人地面车辆的横向避让路径规划研究[蚂蚁算法求解](Matlab代码实现)
基于全局路径的无人地面车辆的横向避让路径规划研究[蚂蚁算法求解](Matlab代码实现)
|
17天前
|
算法 安全 BI
基于粒子群算法的多码头连续泊位分配优化研究(Matlab代码实现)
基于粒子群算法的多码头连续泊位分配优化研究(Matlab代码实现)
|
16天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于WOA鲸鱼优化的XGBoost序列预测算法matlab仿真
基于WOA优化XGBoost的序列预测算法,利用鲸鱼优化算法自动寻优超参数,提升预测精度。结合MATLAB实现,适用于金融、气象等领域,具有较强非线性拟合能力,实验结果表明该方法显著优于传统模型。(238字)

热门文章

最新文章