前言:

{

之前《机器学习》[1]第8章还有几个习题没搞明白(8.1和8.2我甚至连题目的意思都还没看懂,可见我的水平是有多捉急),这次就先进行第9章的内容,毕竟时间宝贵(也许有一天突然开窍了也说不定)。

}

正文:

{

聚类指标和距离度量:

{

聚类是一种无监督学习。度量聚类效果的指标有两类:外部指标内部指标

外部指标的使用需要配合一个参考模型(或者说标签,不过这样还算是无监督学习吗?)。书上介绍了三种外部指标:Jaccard系数FM指数Rand指数

内部指标的使用无需参考模型(无需标签)。书上给出了两种内部指标:DB指数Dunn指数

具体的指标公式我就跳过了,需要时我就去查资料,在这只记录名字。

部分指标的计算涉及距离度量。像物理距离一样,距离度量需要满足4个距离性质:非负性(距离不能为负),同一性(自己到自己的距离是0),对称性(a到b的距离=b到a的距离=a和b之间的距离),和直递性(a到c的距离<=a到b的距离+b到c的距离)。

最常用的距离度量是闵可夫斯基距离,见式(9.18)。

闵可夫斯基距离包括了欧式距离(p=2)和曼哈顿距离(p=1)。

闵可夫斯基距离的缺点就是样本的属性必须是有序属性有序属性是能够比较距离的属性,例如升高体重等数值属性。与它相对应的是无序属性,例如名称等标签属性。

书中给出了无序属性的距离度量:VDM,见式(9.21)。

式(9.21)中代表属性u取a值的样本在样本簇i中的数量,代表属性u取a值的样本的总数。值得注意的是,VDM描述的是一种离散属性值之间的距离,它的参数是具体的属性值而不是样本。另外,有方法把标签特征转换为数值特征[2]中正文的第一部分。

结合闵可夫斯基距离VDM,一种复合距离被形成了,见式(9.22)。

式(9.22)中样本的有序属性被排到第一到第个,后面的则是无序属性。

另外,还可以为每种属性设置权值。

有些度量被称为非度量距离,其在某种程度上代表样本的相似性,但不属于距离度量,例如孪生网络[3]的输出。

聚类过程:

{

之后作者介绍了三种聚类方式:原型聚类密度聚类层次聚类

原型聚类

{

原型聚类假设聚类结构能通过一组原型来表示,这种聚类包括k均值算法学习向量量化高斯混合聚类

k均值算法算是大名鼎鼎(至少在我心目中),其目的是求使式(9.24)最小的参数。

式(9.24)中x,是第i个类簇的样本均值向量(或者说是此簇的平均样本?),是第i个类簇的样本集。不过这里默认用了样本到均值向量的欧式距离,这个度量也许可以换成其他的度量。

k均值算法的求解不容易,书中给出了一种方法:1,首先设置q个聚类簇;2,随机选出q个样本加入q个类簇以分别作为其均值样本;3,将剩下的样本分别放入最接近的均值样本的类簇;4,通过平均分别计算出所述q个类簇的新均值样本;5,使用所述新均值样本以从2开始循环,直到新均值样本与上一次的均值样本相同。

            学习向量量化原型聚类的另一种方法。书中说这种方法需要样本具有标签,但是我一直在想如果已经有标签了那还需要聚类吗?直到我搜到了[4],上面说标签刚开始是随机分配的。

书上给出的学习向量量化的方法如下:1,首先设置聚类簇数q,并且为所有样本随机分配q种标签;2,随机选择每种标签的一个样本,组成q个原型样本;3,对每个其他样本,若离其最近的原型样本和其同标签,则更新为,否则更新为​;4,使用更新后的所有原型样本执行3,直到达到停止条件(比如最大迭代数或原型样本基本不再变动)。

另外,上述学习向量量化步骤形成的簇划分又叫Voronoi剖分

高斯混合聚类和上面两种方法不同,它采用更复杂的概率模型。

高斯混合聚类假设每一个类簇的所有样本都是一个高斯分布的采样,而整个样本集则是多个所述高斯分布组成的高斯混合分布的采样,之后通过贝叶斯方法把样本分到最可能的簇中。式(9.29)是高斯混合分布,其参数由极大似然估计确定,k为高斯分布数(或类簇数),p为高斯分布的概率密度函数。式(9.30)是后验分布函数。

此方法大致包括:1,首先设置类簇数或高斯分布数k;2,根据贝叶斯方法把样本分到后验概率最大的簇中;3,通过极大似然估计更新当前状态的参数;4循环2到3(书上称之为EM)直到满足停止条件(比如到达一定的迭代次数,或参数基本不能更新)。

下面是参数更新的一些公式:

另外,书中高斯混合聚类涉及的公式还有一些,之后有需要时再来查公式。

}

密度聚类

{

作者在这里引入了一些很像图论知识的概念:-邻域,核心对象,密度直达,密度可达和密度相连。

假设将所有样本作为节点以构建完全图G,将其之间的某种距离度量作为G中边的权值,则:

1,节点n的-邻域为与其连接权值不大于的节点的集合(包括n自己);

2,核心对象为-邻域至少包括一定数量的节点的节点;

3,节点n2由节点n1密度直达代表n2在n1的-邻域中;

4,节点n2由节点n1密度可达代表存在从n1到n2的节点序列,节点序列中从第二个节点开始均由前一节点密度可达;

5,节点n1和节点n2密度相连代表存在一个节点,n1和n2均由此节点可达。

当然原文没有建图,只是我联想到了之前学的图知识,把样本换成了节点。

之后书中介绍了DBSCAN算法。其大概过程包括:1,找出所有样本中的核心对象;2,随机选择一个核心对象,并且从样本集里选出由此核心对象密度可达的所有样本(包括核心对象本身)以构建一个簇;3,从样本集和其他核心对象中剔除所构簇的所有样本;4,循环2到3直到剔除了所有的核心对象或所有样本。

}

层次聚类

{

书中给出了一种层次聚类的方法:AGNES。我之见过这种方法,但是对这个名字却很陌生。AGNES的大概过程包括:1,设定簇数q;2,使得每个样本自成一簇;3,计算簇间距离,并且合并最接近的两个簇;4,循环3直到剩余簇的数量为q。

上述簇间距离有三种,分别为最小距离,最大距离和平均距离。设类簇为C,则两个类簇的三种距离如式(9.41),式(9.42)和式(9.43)。

上式中dist为某种上面提到的距离度量

}

部分习题:

{

9.1,对于样本,由可知闵可夫斯基距离满足非负性,同一性和对称性。

当p=1时此距离显然满足直递性。其他情况的直递性证明涉及闵可夫斯基不等式[5][6]。设分别为样本1,样本2,样本3的第k个特征值,==,则当p>1时,有:,因此满足直递性;并且当p<1时,上式的≤变为≥,因此不满足直递性。

由于当p无限大时,,所以此时闵可夫斯基距离等于对应分量的最大绝对距离。

9.2,显然豪斯多夫距离满足非负性和对称性。

同一性:如果X与Z完全相等,则显然对应的豪斯多夫距离为0;如果X与Z不完全相等,则至少有一个空间点p只属于一个集合,设此集合为X,则式(9.45)中的x为p时对应的豪斯多夫距离不为0。

(直递性部分暂缺)

9.3,不能,因为这种方法进行聚类只基于上次迭代聚类的结果,而没有考虑到全局所有信息。

9.5,连接性:X中的样本都由x密度可达,因此它们都与彼此密度相连。

最大性:若密度可达,又因为由x密度可达,因此由x密度可达,因此

9.6,如果两个簇在样本空间中呈现相对的长条形,则两种度量的结果差别巨大,最小距离度量的结果明显小于另一种的结果;但是如果两个长条形簇平行,则两种度量的结果相近。另外,与最小距离度量不同的是,当使用最大距离度量时,即使两个簇相接触或重叠,这两个簇也不一定合并。

9.7,高斯混合聚类为非凸聚类,其他聚类为凸聚类。最明显的特点是:其他聚类都是在空间上进行迭代探索;而高斯混合聚类则依靠概率,因此得到的簇在空间上比较松散。(感觉这个回答有待改进)

9.8,这里的度量和第2章中的评估方式很像。设样本数为m,可以重新定义第2张模型评估中的参数:令TP=式(9.1),FP=式(9.2),FN=式(9.3),TN=式(9.4),样例总数=m(m-1)/2,则第二章的各种性能度量也被泛化到了这里。(效果通过编程实验证明,这里略过)

}

}

结语:

{

习题部分我都先试着自己想,想不出来就参考[5],一时想不出来[5]中又没有的地方就暂缺。

习题部分只是自己练习的答案,没有放出题目内容。

[8]是不错的参考资料,感谢大佬们的贡献。

参考资料:

{

[1] 周志华.《机器学习》.清华大学出版社

[2] https://blog.csdn.net/fish_like_apple/article/details/88825872

[3] https://blog.csdn.net/fish_like_apple/article/details/84769744

[4] https://blog.csdn.net/changyuanchn/article/details/80427922

[5] https://en.wikipedia.org/wiki/Minkowski_inequality

[6] https://baike.baidu.com/item/%E9%97%B5%E5%8F%AF%E5%A4%AB%E6%96%AF%E5%9F%BA%E4%B8%8D%E7%AD%89%E5%BC%8F/5519914?fr=aladdin

[7] https://blog.csdn.net/icefire_tyh/article/details/52224676

[8] https://github.com/scutan90/DeepLearning-500-questions/blob/master/ch02_%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E5%9F%BA%E7%A1%80/%E7%AC%AC%E4%BA%8C%E7%AB%A0_%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0%E5%9F%BA%E7%A1%80.md

}

}

【阅读记录】聚类(《机器学习》第9章)相关推荐

  1. 认识机器学习 机器学习实战第一章

    学习目标 机器学习实战第一章 学习内容 1. 什么是机器学习? 答:简单地说,机器学习就是把无序的数据转换成有用的信息. 2. 数据来源? 从互联网上可以获取大量的人为数据,比如某用户的购物记录,刷过 ...

  2. 机器学习-第六章 支持向量机(SVM)

    机器学习-第六章 支持向量机(SVM) D系鼎溜关注 2020.02.09 21:19:41字数 1,131阅读 458 6.1 间隔与支持向量 开倍速观看视频之后,对课本所说的会更加了解. 支持向量 ...

  3. 西瓜书学习记录-神经网络(第五章)

    西瓜书学习记录-神经网络(第五章) 第五章啦,大佬的视频没讲第五章,所以看书自学一下: 书籍来自周志华的<机器学习>.

  4. 【读书】2020年阅读记录及心得

    [读书]2020年阅读记录及心得 主要记录个人今年的阅读情况,以及部分带有强烈主观思想的读书笔记输出(按大致的时间顺序). 阅读工具:微信读书(真的很方便).Kindle(有些书微信阅读上没资源,补充 ...

  5. Life Long Learning论文阅读记录之LwF

    Life Long Learning论文阅读记录之LwF 写在前面 获取原文 问题 难点 目标 符号说明 现有方法 不使用旧数据集的方法 Learning without Forgetting(LwF ...

  6. 文献阅读记录1-YOLOv3:An Incremental Improvement

    我只是翻译或转载文献,截屏论文图片,记录下阅读记录.如有侵权,请联系删帖. 原标题: YOLOv3: An Incremental Improvement 原作者: Joseph Redmon, Al ...

  7. 【数据聚类】第三章第二节2:K-Means算法及其Python实现(算法实现、结果展示)

    pdf下载(密码:7281) 本文上接:[数据聚类]第三章第二节1:K-Means算法及其Python实现(距离度量方式.目标函数和算法流程) 本文下接:[数据聚类]第三章第二节3:K-Means算法 ...

  8. 西瓜书学习记录-决策树(第四章)

    西瓜书学习记录-决策树(第四章) 第四章啦 知乎黄耀鹏-决策树算法的Python实现: https://zhuanlan.zhihu.com/p/20794583 一般分布例子如下:(见下具体例题) ...

  9. 西瓜书学习记录-线性模型(第三章)

    西瓜书学习记录-线性模型(第三章) 第三章啦 反函数(上图) 梯度下降法: 补充:: 看的大佬的教学视频,标明一下出处: https://www.bilibili.com/video/BV17J411 ...

  10. 原版英文书籍《Linux命令行》阅读记录5 | 使用命令

    背景: 阅读英文原作只为了更好地理解书中的精髓,当然也是为了更好地掌握书中的技巧.我们会坚持阅读全书,并记录书中的精髓. 在前面的章节里,我们学到的都是一些神秘的命令,我们不知道他们怎么来的,不过接下 ...

最新文章

  1. 如何在VMware虚拟机上安装Linux操作系统(Ubuntu)
  2. 谁是最强的女汉子_JAVA
  3. mysql英文版怎么调中文_MYSQL 5.6安装设置中英文翻译
  4. mysql定时器每月执行一次_MySQL定时器可以设置执行次数吗
  5. yii2 ajax访问控制器,如何在yii2中运行控制器动作作为ajax
  6. 【文章】工作之余,放松心情
  7. 2020中国零售品牌数字化转型白皮书
  8. spring总结(01)
  9. java net time_建了服可是老是提示java.net.SocketTimeoutException: Read time
  10. 010 、JVM实战总结: 动手实验:亲自感受一下线上系统部署时如何设置JVM内存大小
  11. linux查看网卡型号
  12. Visio 2013打开自动关闭,闪退的解决办法
  13. OpenGL 视椎体剔除算法
  14. 三大云厂商 ARM 架构服务器性能对比
  15. devops运维平台汇总
  16. 怎么做照片拼图?这些方法值得收藏
  17. 如何在小程序内实现界面快速置顶功能?
  18. 2.2 线性微分方程与常数变易法
  19. ettercap局域网劫持
  20. 国内首例!违反 GPL 协议致侵权,被判赔偿 50 万元

热门文章

  1. 系统管理:Unix 文本编辑
  2. vue集成超图supermap-cesium实践
  3. c语言程序设计中国铁道出版社孙辉答案,C语言程序设计实验指导与习题集
  4. 如何在线完成视频转gif制作?分享一招视频秒转gif
  5. 【小程序】犀牛鸟云开发训练day8笔记
  6. p40怎么装鸿蒙,P40没使用鸿蒙,但鸿蒙适配的“华为汽车”要来了,今年能落地 - 区块网...
  7. Box2D C++ 教程-碰撞剖析
  8. Xposed 使用教程
  9. Tensorflow2学习笔记:简单灰度图分类
  10. Sandboxie 5.12