ML读书笔记(非监督学习)

A. KMeans

KMeans的损失函数,是假设每个簇符合方差相等的球星高斯分布,然后极大化似然概率,最小化负对数;

正因为各个簇的方差相同,所以预处理必须将数据各个维度归一化,否则方差最大的维度对聚类结果会有绝对影响

以最小化损失函数L为目的:聚类中心不动,找每个样本最近的那个中心做他的类别,是为了最小化L; 所有样本的类别确定了,找最优的聚类中心,也是为了最小化L;

受初值和离群点影响大:初值,可以用KMeans++这样,后面的每个聚类中心都按离前面已定了的聚类中心的距离和,越大则选中概率越小;离群点:预处理过滤,或者用中位数做聚类中心(相当于把损失函数里的L2距离变成了L1距离);

易收敛到局部最优解(一般情况下,局部最优也够用了)

K(聚类个数)的选择:Elbow法,横轴是K,纵轴是聚类误差,误差下降变平缓那点,可选做K;

自动选K: 同样是K个类个样本,随机生成的N个样本聚类损失,减去真实的N个样本的聚类损失,得到的"K-损失delta"曲线,在最高点处的K,可选做K;

收敛性证明,和EM算法一个套路,先写出极大似然的式子,然后找它的下限函数,找到一个Q分布让原式子等于下限函数,然后最优化下限函数,依次迭代;

Q等于P时,下限函数等于原函数;KMeans上此时Q只有1个维度为1,其余为0;把Q带入下限函数式子,化简;

 

B. 高斯混合模型(GMM)

每个样本是由1个mixture生成的;

p(x|参数) = 所有类别z之和_{p(x,z|参数)} = 所有类别z之和_{p(x|z, 参数)*p(z|参数)};  所谓mixutre的“权重”严格意义上是该mixture的先验概率p(z|参数)

计算E步时,Q(z|x,参数)=p(z|x,参数)=p(z,x|参数)/p(x,参数), 分母消掉,=p(z,x|参数)=p(x|z,参数)*p(z|参数),前项似然函数套用高斯函数即可,后项先验概率是模型参数;

EM算法可以得到样本属于每一类的概率是多少(可用于分类,gesture分类器项目用的就是这个!)

 

C. 评估

KMeans聚类:聚类为球形分布,适合误差平方和做评估;密度聚类:聚类不规则或球形缠绕,误差平方和会失效

先确定K,再评估质量

轮廓系数:点p到自己cluster其他点的平均距离越小,越好;点p到其他cluster所有点平均距离里最小的一个cluster的平均距离越大,越好;

均方根标准偏差(RMSSTD): 所有样本到自己cluster中心的L2平方和,除以样本个数,除以维度数,开方;越小越好;

R方: 所有样本到自己cluster中心的误差平方和越小越好,把所有样本看成一个cluster时的误差平方和(也就是方差)越大越好;

人工构造不同种类的数据集,考察聚类算法的应对好坏:

1. 观察聚类误差是否随聚类类别数量的变化而单调变化;

2. 观察离群点对聚类结果的影响;

3. 观察近邻数据团会不会被分到不同的cluster里;

4. 观察大团和小团差异明显时,聚类效果;

5. 观察样本团里的样本数量具有较大差异时,聚类效果;

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值