📖 实验指南 ▾
🎯 K-均值聚类 —— 无监督学习,AI自己发现分组
💡 一句话理解:先随便放几个中心,再反复“分组、搬中心”,直到大家各自抱团。
📌 实验目的:理解"无监督学习"——和KNN不同,这里数据没有标签。学生不给AI任何答案,AI自己通过反复迭代发现数据中的自然分组。这是客户分群、文档归类等应用的核心算法。
🌟 现实应用:客户分群(根据消费行为自动划分VIP/普通/新客)、文档自动归类、图像压缩(把相似颜色聚为一类)、基因分类(发现未知的物种亚群)。
算法步骤(反复执行直到质心不再移动):
① 放质心:手动或用随机按钮在图上放K个初始质心
② 分配:每个数据点归入离它最近的质心,形成K个簇
③ 移动:每个质心移到它所属簇的"中心"(该簇所有点的平均值位置)
④ 重复 ②③,直到质心不再移动——这叫"收敛"
📋 操作:
① 选K值(分几组)→ ② 放K个初始质心(点击图上位置或点随机)→ ③ 点「下一步」逐轮观察 → ④ 点「自动跑完」直到收敛
🔍 观察什么:每一轮都先看“点被分到哪个组”,再看“中心搬到哪里”。如果簇内总距离持续下降,说明分组越来越紧;如果换一组初始质心结果不同,就能看到随机初始化带来的局部最优。
⚠ 随机初始化的影响:不同初始质心位置可能导致不同的最终分组——这是K-Means的固有问题("局部最优")。点「随机放置」多次,观察结果是否一致。
📐 距离 d 是怎么算的?(点击展开) ▾
🔮 K 值(分成几组)
数据点数量--
已放质心0 / 3
迭代轮次0
簇内总距离--
总距离 = 每个点到所属质心的距离相加。越小越好,质心不动时=收敛。
或直接在图上点击放置每个质心。不同初始位置 → 可能得到不同结果。
👆 先选K值,再放K个质心(点击图上或点随机),然后开始迭代