SIGAI机器学习第二十五集 聚类算法2

讲授聚类算法的基本概念,算法的分类,层次聚类,K均值算法,EM算法,DBSCAN算法,OPTICS算法,mean shift算法,谱聚类算法,实际应用

课程大纲:

基于密度的聚类算法简介
DBSCAN算法的核心思想
基本概念定义
算法的流程
实现细节问题
实验
OPTICS算法的核心思想
基本概念定义
算法的流程
根据排序结果生成聚类结果
实验
Mean Shift算法的核心思想
核函数概率密度估计
算法的流程
谱聚类算法的核心思想
基本概念定义
算法的流程
算法评价指标
应用
聚类算法总结

这节课讲,基于密度的聚类算法:DBSCAN算法、OPTICS算法、Mean Shift算法,然后讲谱聚类算法,然后讲算法评价指标及应用,然后为这两节课做一个总结。

基于密度的聚类算法简介:

它就是算空间中所有地方的样本点的密度,分布比较密集的样本点就认为是一个类,其他的分布不密集的地方的样本点就认为是噪声点。因此它的聚类依赖于空间中每个样本点处样本的密度,如果比较密的话可能就是一个簇否则就不是一个簇。这个算法有一个好处是,它可以找出形状不规则的簇,因为它没有中心,它不定义中心点,不像kmeans、高斯混合模型那样的算法它需要计算中心向量,因此kmeans、高斯混合模型那样的算法比较倾向于聚类那种比较圆的球状椭球状分布的类,而这类算法呢,它可以发现任何形状的类,只要是联通的,比如说S型拐弯的、带状分布、卷曲的,它都是能处理的。它还有一个好处是,不用指定类的数量簇的数量不用人工指定,不像k均值算法一样要先设定一个k值。这种算法最核心的一步是计算每个样本点处的密度值,以及根据密度值来构造出簇,一般的做法是从一个比较密的点我们称为核心点反复的开始伸展开始扩张,扩展到样本比较稀疏的地方去,把那个地方围起来,这就是一个簇。

根据样本点某一邻域内的邻居数定义数据空间的密度,这类算法可以找出空间中形状不规则的簇,不用指定簇的数量。
算法的核心是计算密度值,以及根据密度来定义簇。

DBSCAN算法的核心思想:

第一种基于密度的聚类算法,经典的DBSCAN算法。

Martin Ester, Hanspeter Kriegel, Jorg Sander, Xu Xiaowei. A density-based algorithm for discovering clusters in large spatial databases with noise. Proceedings of the Second International Conference on Knowledge Discovery and Data Mining, pp. 226–231, 1996.
它是最简单的一种基于密度的聚类算法,它的核心思想前边已经说了,就是通过先计算所有样本点处空间分布的密度,然后从某个种子样本开始找,如果这个点是个核心点很密集的话,就反复的往外伸展一直到边界处我们就成了一个簇,找完一个簇之后再找另外一个种子点继续下一个簇,知道把所有的样本处理一遍以后,这个算法就就结束了。

这种算法对噪声非常鲁棒,因为它天然可以发现各种噪声,所有的噪声样本点它可以把它剔除掉,不会聚到簇里边去,这是高斯混合模型、EM算法、k均值算法等等这些算法不能比拟的一个优势。

它将簇定义为样本密集的区域,算法从一个种子样本开始,反复向密集的区域生长,直至到达边界,所谓边界就是再往外走样本就很稀疏了,再往里走分布就很密集了,到达这样的点处我们就得到一个簇了。

基本概念定义:

这个算法依赖于一些基本的概念,下面介绍一下这些概念。

核心点:

邻居数量大于指定阈值的样本点。

如图,如果M设置为5的话,靠近中间的红点是核心点,红色区域边界和蓝色的点都不是核心点。

所有核心点构成的集合记为:Xc,c是core的简写。

所有非核心点构成的集合记为:Xnc。

如果一个点不是核心点,但在它的邻域内有核心点,则称该点为边界点。核心点和边界点都是我们在聚类的时候的目标,就是每个簇里边包含核心点也包含边界点。

如果一个点既不是核心点,也不是边界点,则称为噪声点

如果x是核心点,y在它的邻域内,则称y是从x直接密度可达的。

对于一组样本x1,...,xn,如果xi+1是从xi直接密度可达的,则称xn是从x1密度可达,这里xn之前的所有的点要是核心点,而xn不一定是核心点。

对于x,y,z,如果y和z都从x密度可达,则称y和z密度相连

有了密度可达和密度相连以后,就可以定义一个簇了:

假设C是整个样本集X的一个子集,如果满足:对于样本集X中中任意两个样本x和y,如果x∈C,且y是从x密度可达的,则y∈C,如果x∈C,y∈C,则x和y是密度相连的,则称集合C为一个簇。
再来回顾一下密度可达和密度相连:

密度可达它不是一个对称的概念,从p到q是密度可达的不能推出从q到p是密度可达的,如果最后一个点不是核心点的话,显然是对称可达是不成立的。密度相连是中间有一个跳板o,通过o到p是密度可达的,然后从o到q也是密度可达的,那我们称p和q之间是密度相连的,密度相连它是一个对称的概念,从p到q是密度相连的话,那么从q到p他也是密度相连的。

算法的流程:

原文地址:https://www.cnblogs.com/wisir/p/12113379.html

时间: 2024-10-08 16:12:15

SIGAI机器学习第二十五集 聚类算法2的相关文章

SIGAI机器学习第二十四集 高斯混合模型与EM算法

讲授聚类算法的基本概念,算法的分类,层次聚类,K均值算法,EM算法,DBSCAN算法,OPTICS算法,mean shift算法,谱聚类算法,实际应用. 大纲: 聚类问题简介聚类算法的分类层次聚类算法的基本思想簇之间距离的定义k均值算法的基本思想k均值算法的流程k均值算法的实现细节问题实验EM算法简介Jensen不等式EM算法的原理推导收敛性证明 聚类算法是无监督学习的典型代表,前边讲过的数据降维算法是无监督学习的另外一种典型代表. 原文地址:https://www.cnblogs.com/wi

SIGAI机器学习第十九集 随机森林

讲授集成学习的概念,Bootstrap抽样,Bagging算法,随机森林的原理,训练算法,包外误差,计算变量的重要性,实际应用 大纲: 集成学习简介 Boostrap抽样 Bagging算法 随机森林的基本原理 训练算法 包外误差 计算变量的重要性 实验环节 实际应用 随机森林是一种集成学习的算法,构建在bootstrap采样基础之上的,bagging算法基于boostrap采样,与之对应的是boosting算法.随机森林是多颗决策树的集成,由于采用了bootstrip采样,在训练时有一部分样本

SIGAI机器学习第十八集 线性模型2

之前讲过SVM,是通过最大化间隔导出的一套方法,现在从另外一个角度来定义SVM,来介绍整个线性SVM的家族. 大纲: 线性支持向量机简介L2正则化L1-loss SVC原问题L2正则化L2-loss SVC原问题L2正则化SVC对偶问题L1正则化L2-loss SVC原问题多类线性支持向量机实验环节libsvm和liblinear的比较实际应用 线性支持向量机简介: 原文地址:https://www.cnblogs.com/wisir/p/11979508.html

经典算法题每日演练——第二十五题 块状链表

原文:经典算法题每日演练--第二十五题 块状链表 在数据结构的世界里,我们会认识各种各样的数据结构,每一种数据结构都能解决相应领域的问题,每一种数据结构都像 是降龙十八掌中的某一掌,掌掌毙命... 当然每个数据结构,有他的优点,必然就有它的缺点,那么如何创造一种数据结构 来将某两种数据结构进行扬长避短,那就非常完美了.这样的数据结构也有很多,比如:双端队列,还有就是今天讲的 块状链表, 我们都知道 数组 具有 O(1)的查询时间,O(N)的删除,O(N)的插入... 链表 具有 O(N)的查询时

大白话5分钟带你走进人工智能-第二十五节决策树系列之信息增益和信息增益率(4)

                                                       第二十五节决策树系列之信息增益和信息增益率(4) 上一节我们讲解了决策树的分裂条件以及评估纯度的其中一个方式,基尼系数.本节的话,我们再讲解一个评估纯度的方式,基于信息增益的方式,即ID3树使用的评估方式.它办的事跟Gini系数一样,也是评价纯度,但是它更客观一点,但它算起来比Gini系数稍慢一点,它办的事跟Gini系数一样,也是评价纯度,但是它更客观一点,算起来比Gini系数稍慢一点,

Gradle 1.12用户指南翻译——第二十五章. Scala 插件

其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://github.com/msdx/gradledoc/tree/1.12. 直接浏览双语版的文档请访问: http://gradledoc.qiniudn.com/1.12/userguide/userguide.html. 另外,Android 手机用户可通过我写的一个程序浏览文档,带缓存功能的,目前

第二十五个知识点:使用特殊的素数定义$GF(p)$和$GF(2^n)$的方法。

第二十五个知识点:使用特殊的素数定义\(GF(p)\)和\(GF(2^n)\)的方法. 在我们之前看到的博客中,当实现密码学方案时,一个最频繁调用的操作就是模运算.不幸的是,尽管模块化的使用非常广泛,但是它不能像其它算术运算(如加法和乘法)那样容易的执行.蒙哥马利表达提供了一种解决方案,这里我们讨论另一种解决方法--伪梅森素数规约. 定义:如果一个素数\(p\)被写成如下形式,那么就称\(p\)位伪梅森素数.其中\(b=2,c=1\)时就是梅森素数. \[ P = b^n-c,其中0<|c|<

centos lamp/lnmp阶段复习 第二十五节课

centos  lamp/lnmp阶段复习   第二十五节课 上半节课 下半节课 f

第二十五天 慵懒的投射在JDBC上的暖阳 —Hibernate的使用(四)

6月4日,晴天."晴日暖风生麦气,绿阴幽草胜花时."      "道"是只有中国人才懂得并孜孜以求的特殊的宇宙存在感的体验.全世界只有中文才能阐释"道"的全部涵义.然而所谓阐释,并不重在定义,更多的还是感受. "道"既在"虚无"之内,又超越了"虚无",成为中国文化最平常但又最玄妙的一种境界. 老庄认为:道是宇宙的本体,即是宇宙万物的老祖宗.    老外认为:Tao is the sour