MMD_5a_Clustering

聚类概述

定义

距离的定义

计算聚类过程中点和cluster的距离,有以下几种方式:

算法的分类

启发式算法

概述

启发式算法有两种方法,从下而上或者从上而下。 以从下而上为例,一开始每一个obes就是一个cluster,然后根据距离,不断地结合两个更近的cluster到一个cluster,达到一定的收敛条件后停止。

KEY POINTS

如何代表cluster

如何决定距离远近

没有欧氏距离怎么办

终止条件

总结

K-MEANS算法

特点

  1. 假设欧氏距离,也就是欧式空间是存在的
  2. 一开始必须确定k
  3. 初始集群先随机选择centroid点,个数等于k(朴素的方法是随机选择,但是容易产生距离太近属于一个cluster的点,影响分类结果)。

过程

首先先选择k个初始点当做群的中心,然后数据集中的所有点根据与群中心的远近划分属于哪个群。然后在根据群的性质取群的中心点,然后再次划分所有点属于的群,不断往复,直到群的中心不发生变化,达到稳定的状态停止。

KEY-POINTS

选择k

策略是:多选择几个k,看看average distance to centroid如何变化。 理论上,随着k的增加,这个值应该越变越小,但是减少的幅度也越来越小,我们需要的就是那个拐点。

选择初始点

初始点的选择很有学问,不能够太近都属于一个cluster,这样的话其他的cluster就发现不了。 所以,应该让点越分散越好。

复杂度

BFR算法

大数据集的难题

前面讨论的启发式算法的复杂度是O(n3)O(n^3),使用priority queue的话能减低到O(n2logn)O(n^2logn)。 KMEANS的复杂度是KNKN,但是收敛很慢,也不适用于大数据集。

因此,我们需要一种算法,能够处理数据量很大的分类问题。

概述

BFR(Bradley-Fayyad-Reina)算法,是KMEANS的变种,适用于大数据的分类(数据量只能在disk中存储,不可能全部放在memory里)。

这个算法的基础是一个很重要的假设:

assumes each cluster is normally distributed around a centroid in Euclidean space.

假设

假设的存在,使得每个cluster长得都像下图这样:

  1. axis-aligned
  2. normal distribution among each cluster in each dimension

算法

概述

三类点

DS点的更新与数据特征

整个流程

细节

怎么判断点离群中心是不是够近以加入DS

怎么判断2个CS是不是应该合成一个

CURE算法

其他算法的限制

步骤1

核心思想就是先用一些样本训练出大概的样子,并且用4个数据很好地用样本代替了总体。

步骤2

总结

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人工智能头条

实战Google深度学习框架:TensorFlow计算加速

2685
来自专栏ASP.NET MVC5 后台权限管理系统

ASP.NET MVC5+EF6+EasyUI 后台管理系统(38)-Easyui-accordion+tree漂亮的菜单导航

本节主要知识点是easyui 的手风琴加树结构做菜单导航 有园友抱怨原来菜单非常难看,但是基于原有树形无限级别的设计,没有办法只能已树形展示 先来看原来的效果 ...

3116
来自专栏WOLFRAM

三维图形绘制指定区域的方法

1383
来自专栏专知

【下载】PyTorch 实现的YOLO v2目标检测算法

【导读】目标检测是计算机视觉的重要组成部分,其目的是实现图像中目标的检测。YOLO是基于深度学习方法的端到端实时目标检测系统(YOLO:实时快速目标检测)。YO...

4586
来自专栏北京马哥教育

实战Google深度学习框架:TensorFlow计算加速

作者:才云科技Caicloud,郑泽宇,顾思宇 要将深度学习应用到实际问题中,一个非常大的问题在于训练深度学习模型需要的计算量太大。比如Inception-v3...

2987
来自专栏WOLFRAM

标准先行和非线性图像处理滤波器

1112
来自专栏WD学习记录

21个项目玩转深度学习 学习笔记(2)

事实上,必须先读入数据后才能进行计算,假设读入用时0.1s,计算用时0.9秒,那么没过1s,GPU都会有0.1s无事可做,大大降低了运算的效率。

2561
来自专栏素质云笔记

SSD+caffe︱Single Shot MultiBox Detector 目标检测+fine-tuning(二)

承接上一篇SSD介绍:SSD+caffe︱Single Shot MultiBox Detector 目标检测(一) 如果自己要训练SSD模型呢,关键...

89510
来自专栏PaddlePaddle

【进阶篇】命令行参数使用案例

编写|PaddlePaddle 排版|wangp 1 本地训练 本地训练的实验,诸如图像分类,自然语言处理等,通常都会使用下面这些命令行参数 paddle ...

3044
来自专栏AI研习社

Github 项目推荐 | 类 Keras 的 PyTorch 深度学习框架 —— PyToune

PyToune 是一个类 Keras 的 Pytorch 深度学习框架,可用来处理训练神经网络所需的大部分模板代码。 用 PyToune 你可以: 更容易地训练...

34210

扫码关注云+社区