机器学习笔记(16):聚类(1)

本文来自之前在Udacity上自学机器学习的系列笔记。这是第16篇,介绍了什么是聚类(1),介绍K-均值、单链路聚类和基于密度的聚类三种。

K-均值(K-Means)
K-均值可以分为两个步骤,第一步是分配,第二步是优化。对于M个数据点划分为k类的问题,首先假设K个初始聚类中心;然后,计算各个数据点到这k个中心的距离,按照最近原则分配到各个中心;接着,计算每个聚类的均值点,作为新的聚类中心;最后,重复地按照最近原则进行分配和优化,直至每个聚类的数据点距离其中心足够小,而每个聚类中心距离足够大为止。

上面提到的距离常用的有欧氏距离,假设数据点都是N维的向量,那么数据点的距离为:
d_{x_1, x_2} = \sqrt{\sum_{i=1}^{N}(x_1^i-x_2^i)^2}

上面提到的距离足够小,可以使用损失函数来定义,也就是判断各个聚类的数据点到聚类均值点的均方误差。即

E=\sum_{k=1}^{K} \sum_{x_i \in C_k} ||x_i - \mu_k||_2

其中

\mu_k = \frac{1}{N_k} \sum_{x_i \in C_k} x_i

N_kC_k簇内的数据点个数。

通过最小化E,可以得到稳定的最小化的结果。

K-均值聚类的优点是原理简单,容易解释,但是缺点是当数据量较大时,计算量也较大,需要通过反复地尝试来寻找适合的K值。

单链路聚类
单链路聚类(Single Linkage Clustering)是一种层次凝聚聚类算法(Hierarchical Agglomerative Clustering)。它的过程是:首先将M个数据点都看成M个聚类,将两个聚类之间的距离定义为两个聚类之中最接近的点之间的距离;然后,合并两个最接近的聚类;接着,按照这种合并规则,继续重复(n-k)次,其中k是我们希望划分为的聚类的个数。

比如说下面的a到g,七个点,按照上面的流程可以得到两个聚类。

image.png

这种方法从下到上进行聚类,就像化学当中的凝聚的概念一样。上面提到的距离除了可以是最小距离,还可以使用平均距离。

单链路聚类的优点是,它具备确定的唯一答案,而且是最小生成树。另外,这个算法的运行时间是O(n^3),考虑到最差的情况下,n个点需要分为k个聚类,我们需要运行n/2次,而在每次运行时,需要考虑任意两点之间的距离,也就是n^2次。它存在的缺点也是当数据量比较大时,计算量也比较大。

基于密度的聚类
这种聚类方法称为DBSCAN,即Density-based Saptial Clustering of Applications with Noise。

聚类看成是数据空间中的密集区域,聚类由数据点的密度比较低的区域分隔开来。 DBSCAN算法基于“密集区域”和“噪声”的概念,对于密集区域的每个点,在给定半径的邻域内必须至少包含多少数量的点来得到聚类的结果。

对于K-均值和层次聚类的方法,它们适用于数据分布呈球状或者凸簇的数据,且容易受到噪声的影响。在现实生活中,数据分布往往是不规则的,而且包含噪声。

eps定义为围绕一个数据点的半径。MinPts定义为在这个半径内至少包含多少个点的数量。

如果一个数据点在既定的半径内包含多于MinPts个数的邻近点,那么这个点就是核心点。

如果一个数据点在既定的半径内包含少于MinPts个数的邻近点,但它是某个核心点的邻近点,那么这个点就是边界点。

如果一个点既不是核心点,也不是边界点,那么这个点就是噪声或者异常点。

image.png

DBSCAN的流程是:

  1. 根据每个点在既定的eps内的邻近点个数,确定核心点;
  2. 对于每个核心点(如果尚未分配到一个聚类),那么创建一个新的聚类;
  3. 递归查找核心点的eps内的相邻点,并将其分配给与核心点相同的聚类。如果存在一个点c有足够的相邻点,同时a和b点也在其中,那么a和b就称为是密度相连的。
  4. 遍历数据集中其余未查看的点,不属于任何聚类的点就是噪声。

具体可以参考:

https://www.geeksforgeeks.org/dbscan-clustering-in-ml-density-based-clustering/

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,809评论 6 513
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,189评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 167,290评论 0 359
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,399评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,425评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,116评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,710评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,629评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,155评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,261评论 3 339
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,399评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,068评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,758评论 3 332
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,252评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,381评论 1 271
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,747评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,402评论 2 358

推荐阅读更多精彩内容