K-Means算法进行分类

已知数据集D中有9个数据点,分别是(1,2),(2,3), (2,1), (3,1),(2,4),(3,5),(4,3),(1,5),(4,2)。采用K-Means算法进行聚类,k=2,设初始中心点为(1.1,2.2),(2.3,3.5)。 试模拟K-Means算法的一次迭代过程,即先计算样本点到类中心点的距离,然后把样本点划分到最近的类中,最后更新类中心点的坐标


数据集合D:{(1,2),(2,3),(2,1),(3,1),(2,4),(3,5),(4,3),(1,5),(4,2)} 初始中心点: C1=(1.1,2.2),C2=(2.3,3.5) 计算每个数据点到两个中心点的距离,并将其划分到距离最近的类中。假设我们使用欧氏距离:

计算每个数据点到两个中心点的距离:

将每个数据点划分到距离最近的类中。这里我们用1和2表示两个类: C={1,2,1,1,2,2,2,2,2}
更新类中心点的坐标,即计算每个类的均值: C1=((1+2+3)/3,(2+1+1)/3)≈(2,1.3) C2=((2+2+3+4+1+4)/6,(3+4+5+3+5+2)/6))≈(2.6,3.6)
新的中心点更新为(2,1.3)和(2.6,3.6)
依次迭代直到发现没有重新分配或者准则函数收敛程序结束

相关推荐
阿Y加油吧8 分钟前
二分查找进阶:旋转排序数组的两道经典题深度解析
数据结构·算法
想带你从多云到转晴12 分钟前
05、数据结构与算法---栈与队列
java·数据结构·算法
無限進步D13 分钟前
蓝桥杯赛后总结
算法·蓝桥杯·竞赛
QuZero17 分钟前
ReentrantLock principle
java·算法
sp_fyf_202418 分钟前
【大语言模型】 AVGen-Bench:一个用于文本到音频-视频生成的多粒度、任务驱动型评估基准
人工智能·深度学习·神经网络·机器学习·语言模型·数据挖掘·音视频
m0_7167652319 分钟前
数据结构--顺序表的插入、删除、查找详解
c语言·开发语言·数据结构·c++·学习·算法·visual studio
Jasmine_llq20 分钟前
《B3954 [GESP202403 二级] 乘法问题》
算法·顺序输入输出算法·布尔标记算法·累乘算法·循环迭代算法·阈值判断算法·条件分支输出算法
Halo_tjn21 分钟前
Java 抽象类 知识点
java·开发语言·算法
say_fall21 分钟前
滑动窗口算法
数据结构·c++·算法
落羽的落羽22 分钟前
【算法札记】练习 | Week1
linux·服务器·c++·人工智能·python·算法·机器学习