python实现k-means算法

本文介绍了K-Means算法的基本概念、步骤,讨论了其优缺点,并通过Python展示了K-Means算法的实现过程,最后给出了实验结果和正确率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 介绍

  • 通常的无监督学习问题
  • 给定 N N N个没有标签的样本 { x 1 , … , x N } \{x_1,\dots,x_N\} { x1,,xN}
  • 将示例分组为K个“同类”的分区
  • 一个好的聚类是实现
    1. 群内相似度高
    2. 群集间相似度低

2. 算法步骤

  1. 确定类别个数 k k k
  2. 随机初始化 k k k个类的中心,分别为 μ 1 , … , μ k \mu_1,\dots,\mu_k μ1,,μk
  3. 确定每个样本的类别,原则为样本与类中心的距离最小(下面计算的是样本点与中心点的欧式距离,可以根据情况选择合适的公式计算数据的相似度),即
    C k ∗ = { x i : k ∗ = arg ⁡ min ⁡ k ∥ x i − μ k ∥ 2 } \mathcal { C } _ { k ^ { * } } = \left\{ x _ { i } : k ^ { * } = \arg \min _ { k } \left\| x _ { i } - \mu _ { k } \right\| ^ { 2 } \right\} Ck
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值