博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
统计学习精要(The Elements of Statistical Learning)课堂笔记(二十四):聚类
阅读量:3516 次
发布时间:2019-05-20

本文共 1375 字,大约阅读时间需要 4 分钟。

聚类讲的比较简单...怎么感觉老师不怎么待见unsupervised learning捏?...

---------------笔记开始---------------------

1. 一般概念

1)分类与聚类(分类标识)

评测纯度。我们有测试集 {

xi}

,这样定义纯度为 pk=mkNk1,k

.

2) 输入

  • 特征向量的表示: {
    xi,1iN},xiRp
  • 相似矩阵的表示: S={
    sij,1i,jN}
    ,其中相似度的计算可以是 sij=(xix¯,xjx¯)
  • 的内积。显然,向量表示很容易可以计算相似度表示。
  • 距离矩阵的表示(不相似度): D={
    d(i,j),1i,jN}
    ,其中距离可以用二阶范数定义,比如 d(i,j)=xixj2

    3) 输出: {

    ck}

    ,对应K个聚类。这里还分为:

    • 非层次的
    • 层次的(类似于树结构)

    2. K-means方法(非层次聚类)

    (注意不要和KNN搞混了,都是K开头的...)

    1) K-means方法(特征表示)

    输入: {

    xi,1iN}

    ,K——聚类的个数。

    算法:

    初始化,随机选定类中心 {

    ck}

    .

    • (i)根据 {
      ck}
    分配 xi
  • 到距离最近的类。
  • (ii)修改 {
    ck}
    ,使得 c(k)=mean(xi|xiCk)
    • 。重复上面两步。

    2) K-medoids方法(相似度表示)

    输入:s,k

    初始化。然后根据 argmincks(xi,ck)

    分配 xi ,再按照 argmaxckxCks(xi,ck)

    确定新的中心。

    3) 模糊的K-means方法

    输入: {

    xi,1iN}

    ,K

    初始化。

    • (i) xi
    ,计算 xick,k ,然后根据这个距离的比重来“软”分配 xi
  • (需要归一化分配权重)。
  • (ii) ck ,利用 ck 中的 xi
    • 进行加权平均。

    重复上述两步。

    4) 谱聚类(向量表示)

    输入: {

    xi,1iN}

    ,K

    然后对原始数据做转换,形成新的数据集 {

    zi,1iN}

    ,然后再做K-means聚类。

    其中转换的步骤如下:

    • (i) 计算相似矩阵S
    • (ii) 计算L=D-S,其中 D=D1DN
    Di=Nj=1Dij
  • (iii)计算L最小的K个特征值对应的特征向量
  • (iv)让U= (u1,,uk) ,则 zi
    • 是U的第i行,这样就从p维降到了K维。
    • (v)对Z进行K-means聚类。

    3. 层次聚类

    1) 自底向上的方法(聚合)

    初始:每个 xi

    都为一类

    而后对于最相似的两类,合并到一类。对于类的最相似,可以定义为距离最近的类。而对于距离,则可以定义为三者之一:

    • (i) dAB=mind(i,j),iA,jB
  • ,称之为单连。
  • (ii) dAB=maxd(i,j),iA,jB
  • ,称之为全连。
  • (iii) dAB=d(i,j)AB
    • .

    2) 自顶向下的方法(分裂)

    初始:所有的x作为一类。选用一种非层次的方法进行聚类,递归使用。

    例子:二分法。

    初始: G={

    xi}

    H=

    。而后选择离G最远的一个点g。

    修改 G=Gg

    H=Hg

    。重复步骤,选择离H近的离G远的逐渐加入H。

    直到分不动了,彻底分为两类。

转载地址:http://ncvqj.baihongyu.com/

你可能感兴趣的文章
N1-环境配置
查看>>
N2-审计方法与步骤
查看>>
N3-常见的INI配置
查看>>
代码审计 N4 常见危险函数和特殊函数(一)
查看>>
MySQL笔记
查看>>
计算机运算方法之(原码 补码 反码 移码)
查看>>
计算机组成原理之(二进制与十进制互相转换,数的定点表示与浮点数表示)例题:设浮点数字长16位,其中阶码5位(含有1位阶符),尾数11位(含有1位数符)
查看>>
冒泡排序及其优化
查看>>
选择排序(java代码实现)
查看>>
插入排序
查看>>
哈夫曼树java代码实现
查看>>
快速排序
查看>>
vue路由高亮的两种方式
查看>>
vue router 报错: Uncaught (in promise) NavigationDuplicated {_name:""NavigationDuplicated"... 的解决方法
查看>>
vue跳转页面的两种方式
查看>>
存储器题目解析(持续更新中....)
查看>>
存储器知识要点
查看>>
Cache模拟器的实现
查看>>
实验2:MIPS指令系统和MIPS体系结构
查看>>
设计模式七大原则
查看>>