【机器学习课程】k近邻和k-means聚类
1 最近邻规则
给定集合包含n对数,(x1,t1)(\bold x_1,t_1)(x1,t1), …,(xn,tn)(\bold x_n,t_n)(xn,tn),其中xi\bold x_ixi为实数,t_i属于集合{1,…,M}\{1,…,M\}{1,…,M},每个xi\bold x_ixi是同一测量规则得到的iiith个独立量,而每个tit_iti是对应的样本类别
上述规则可以简称为:xi\bold x_ixi属于类别tit_iti
对于其中一个样本x\bold xx,可以给它从{1,…,M}\{1,…,M\}{1,…,M}分配一个标签,令xk\bold x_kxk是x\bold xx最近邻,则有:
mind(x,xi)=d(x,xk),i=1,…,n\min{d(\bold x,\bold x_i)}=d(\bold x,\bold x_k),i=1,\dots,nmind(x,xi)=d(x,xk),i=1,…,n
一个常用的距离度量是平方和,假设x=[x1,x2]T\bold x=[x_1,x_2]^Tx=[x1,x2]T,xk=[xk1,xk2]T\bold x_k=[x_k1,x_k2]^Txk=[xk1,xk2]T,则有:
d(x,xk)=(x1,xk1)2+(x2−xk2)2d(\bold x,\bold x_k)=(x_1,x_{k1})^2+(x_2-x_{k2})^2d(x,xk)=(x1,xk1)2+(x2−xk2)2
例1
为了选择最好的候选者,学校入学考试包括两个学科,英语和数学。假设知道5个候选者的分数和分类结果(下表)。如果一个候选者被录取,认为他是类别1,其他的是类别2 。采用最近邻规则来确定Andy如果英语和数学都超过70会不会被录取。
| No. | 英语 | 数学 | 类别 |
|---|---|---|---|
| 1 | 80 | 85 | 1 |
| 2 | 70 | 60 | 2 |
| 3 | 50 | 70 | 2 |
| 4 | 90 | 70 | 1 |
| 5 | 85 | 75 | 1 |
解法:
- 计算Andy成绩与上述5个候选者的距离:

- 找到{d1,d2,d3,d4,d5}\{d_1,d_2,d_3,d_4,d_5\}{d1,d2,d3,d4,d5}中的最小值为d2=100d_2=100d2=100
- 最小值对应的是2号候选人,他的类别是2,所以Andy应该也是不会被录取的
2 K近邻规则(k-nn)
k近邻规则是最近邻规则的延伸,就是每次将标本划分到k个最近邻样本
通过k个最近邻样本的标签进行投票可以决定目标样本的标签
3 K-means聚类
聚类算法是找到一组中心点来反应数据点的分布,中心点的个数M可以提前确定,每个中心ci\bold c_ici被认为是一组数据点的代表
假设n个数据点xj,j=1,...,n}\bold x_j,j=1,...,n\}xj,j=1,...,n}。可以找到MMM个代表向量ci,i=1,...,M\bold c_i,i=1,...,Mci,i=1,...,M。算法将所有数据点划分到MMM的子集SiS_iSi中,并使得下列求和式子最小化:
J=∑i=1M∑xj∈Si∣∣xj−ci∣∣2J=\sum_{i=1}^M\sum_{\bold x_j\in S_i}||\bold x_j-\bold c_i||^2J=i=1∑Mxj∈Si∑∣∣xj−ci∣∣2
JJJ的最小化条件是:
ci=1Ni∑xj∈Sixj\bold c_i=\frac{1}{N_i}\sum_{\bold x_j \in S_i}\bold x_jci=Ni1xj∈Si∑xj
算法步骤:
- K-means聚类的初始会任意划分MMM个集合,然后分别计算各个集合的中心
- 然后根据集合中心,将数据点按照最近邻规则重新划分到各个集合中
- 上述两个步骤重复进行,直到每次划分的集合数据点不再发生变化为止
在线K-means聚类算法
最初的中心随机从训练数据集中选取,然后还是将数据点分配给各个中心,重新计算中心的式子为:
cknew=ckold+η(xj−ckold)\bold c_k^{new}=\bold c_k^{old}+\eta(\bold x_j-\bold c_k^{old})cknew=ckold+η(xj−ckold)
将cknew\bold c_k^{new}cknew替换ckold\bold c_k^{old}ckold,这里η\etaη是学习率,上述步骤重复进行,知道中心不再发生改变为止
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)