吴恩达ML课程笔记(Chapter13)

Lesson13

K:聚类的数量
c(i):样本点x(i)被分到的聚类的索引值
μk:第k个聚类中心的位置

13-2 k-means算法

1.聚类算法:把无标记(non-label)的数据分成一簇一簇的算法

2.k-means算法:我的另一篇博客

3.k-means算法也可以分类那些数据比较集中的数据集,比如像这样:
在这里插入图片描述
4.这里需要注意一点,大写K用来表示聚类/簇的数量,小写k用来表示1~K区间里的某一个数

13-3 优化目标

1.优化目标:
ci:第i个点被分类到的聚类的索引
在这里插入图片描述
J(c(1),c(2),…c(m)1,…,μk)= 1 m \frac{1}{m} m1 ∑ i = 1 m x i 到 x i 被 分 类 到 的 聚 类 中 心 点 的 平 方 \sum_{i=1}^m{xi到xi被分类到的聚类中心点的平方} i=1mxixi
我们就是要找到这一套c和μ,使得上述J最小。K-means算法的第一步就是在找这套c,第二步就是找这套μ

13-4 随机初始化

1.首先需要注意,应该使K<m

2.随机选取聚类中心的方法:从样本点中选取聚类中心
在这里插入图片描述
3.聚类中心落在了局部最优的两个例子:
在这里插入图片描述
4.我们可以重复选取聚类中心+移动聚类中心这一过程很多次(一般是50~1000),然后从中挑出使代价函数J(它的详细定义见13-3的第一点,代价函数也称为畸变值)最小的一个

5.一般选K=2~10之间时,可以保证我们找到较好的聚类;但是如果K比10大很多很多的话,那多次运行随机初始化的结果可能和第一次运行得到的结果差不多

13-5选取聚类的数量

1.肘部算法(elbow method):
比如下面的这个代价函数和聚类数量的关系曲线,K取3以后畸变值下降的速度就慢了很多,所以K取3就是比较合适的
在这里插入图片描述
2.但是其实在实际生活中,得到的可能都是像这样的图线:
在这里插入图片描述
这样就没办法很清晰地判断它的拐点

3.所以选择K值的一个比较可靠的方法是人为选择,看自己选择K-means算法的目的是什么,实际需要多少个类

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值