2024-11-16-机器学习方法:无监督学习(1) 聚类(上)

文章目录

  • [机器学习方法:无监督学习(1) 聚类(上)](#机器学习方法:无监督学习(1) 聚类(上))
    • [1. 聚类的基本概念](#1. 聚类的基本概念)
      • [1.1 聚类的概念](#1.1 聚类的概念)
      • [1.2 聚类的功能](#1.2 聚类的功能)
      • [1.3 聚类的算法](#1.3 聚类的算法)
    • [2. 相似度或距离](#2. 相似度或距离)
      • [2.1 闵可夫斯基距离](#2.1 闵可夫斯基距离)
      • [2.2 相关系数](#2.2 相关系数)
      • [2.3 夹角余弦](#2.3 夹角余弦)
    • [3 类或簇](#3 类或簇)
      • [3.1 类的特征](#3.1 类的特征)
    • [4 类与类之间的距离](#4 类与类之间的距离)
  • 小结

机器学习方法:无监督学习(1) 聚类(上)

学习起来,李航老师的《机器学习方法》的第二大部分------无监督学习,这本书后续的学习都不打算看课了,准备看书写总结,并结合github上的代码进行学习,加油,干起来。

1. 聚类的基本概念

1.1 聚类的概念

聚类是针对给定的样本,依据它们特征的相似度或距离,将其归并到若干个"类"或"能的数据分析问题 。一个类是给定样本集合的一个子集。直观上,相似的样本聚集在相同的不相似的样本分散在不同的类。这里,样本之间的相似度或距离起着重要作用。

1.2 聚类的功能

聚类的目的是通过得到的类或簇来发现数据的特点或对数据进行处理,在数据挖掘、式识别等领域有着广泛的应用。聚类属于无监督学习,因为只是根据样本的相似度或距离*其进行归类,而类或簇事先并不知道。

1.3 聚类的算法

聚类算法很多,本章介绍两种最常用的聚类算法:层次聚类(hierarchicalclusterimg)k均值聚类(k-means clustering)。

层次聚类 又有聚合(自下而上)和分裂(自上而下)两方法。聚合法开始将每个样本各自分到一个类,之后将相距最近的两类合并,建立一个新的类,重复此操作直到满足停止条件,得到层次化的类别。分裂法开始将所有样本分到一个类之后将已有类中相距最远的样本分到两个新的类,重复此操作直到满足停止条件,得到层化的类别。

k均值聚类 是基于中心的聚类方法,通过迭代,将样本分到k个类中,使得每个本与其所属类的中心或均值最近,得到k个"平坦的"、非层次化的类别,构成对空间的分。

2. 相似度或距离

聚类的对象是观测数据或样本集合。假设有几个样本,每个样本由m个属性的特征组成。样本集合可以用矩阵X表示:

X = [ x i j ] m ∗ n = [ x 11 x 12 ⋯ x 1 n x 21 x 22 ⋯ x 2 n ⋮ ⋮ . . . ⋮ x m 1 x m 2 ⋯ x m n ] X = [x_{ij}]{m*n}=\begin{bmatrix} x{11}&x_{12}&\cdots &x_{1n}\\ x_{21}&x_{22}&\cdots &x_{2n}\\ \vdots&\vdots&...&\vdots\\ x_{m1}&x_{m2}&\cdots &x_{mn}\end{bmatrix} X=[xij]m∗n= x11x21⋮xm1x12x22⋮xm2⋯⋯...⋯x1nx2n⋮xmn

2.1 闵可夫斯基距离

参考百科 闵可夫斯基距离

定义14.1 给定样本集合 X,X 是m 维实数向量空间 R m R^m Rm中点的集合,其中 x i , x j ∈ X x_i,x_j \in X xi,xj∈X, x i = ( x 1 i , x 2 i , ⋯   , x m i ) , T x_i=(x_{1i},x_{2i},\cdots,x_{mi}), ^T xi=(x1i,x2i,⋯,xmi),T , x j = ( x 1 j , x 2 j , ⋯   , x m j ) , T x_j=(x_{1j},x_{2j},\cdots,x_{mj}), ^T xj=(x1j,x2j,⋯,xmj),T,样本 x i x_{i} xi与样本 x j x_{j} xj的闵可夫斯基距

离(Minkowski distance)定义为

d i j = ( ∑ i = 1 n ∣ x k i − x k j ∣ p ) 1 p d_{ij}=\color{red}(\displaystyle\sum_{i=1}^{n}|{x_{ki}-x_{kj} }|^p)^{\frac{1}{p}} dij=(i=1∑n∣xki−xkj∣p)p1

这里 p ≥ 1 p \geq 1 p≥1。当 p = 2 p=2 p=2 时成为欧氏距离(Euclidean distance),即

d i j = ( ∑ i = 1 n ∣ x k i − x k j ∣ 2 ) 1 2 d_{ij}=\color{red}(\displaystyle\sum_{i=1}^{n}|{x_{ki}-x_{kj} }|^2)^{\frac{1}{2}} dij=(i=1∑n∣xki−xkj∣2)21

当 p = 1 p=1 p=1时称为曼哈顿距离(Manhattan distance),即

d i j = ∑ i = 1 n ∣ x k i − x k j ∣ d_{ij}=\color{red}\displaystyle\sum_{i=1}^{n}|{x_{ki}-x_{kj} }| dij=i=1∑n∣xki−xkj∣

当 p = ∞ p=∞ p=∞ 时称为切比雪夫距离(Chebysbev distance),取各个坐标数值差的绝对值的最大值,即

d i j = ( max ⁡ k ∣ x k i − x k j ∣ ) d_{ij}=\color{red}(\displaystyle\max_{k}|{x_{ki}-x_{kj} }|) dij=(kmax∣xki−xkj∣)

2.2 相关系数

样本之间的相似度也可以用相关系数(correlation coeficient)来表示。相关系数的绝对值越接近1,表示样本越相似:越接近0,表示样本越不相似。

2.3 夹角余弦

样本之间的相似度也可以用夹角余弦(cosine)来表示。夹角余弦越接近1,表示样相似;越接近 0,表示样本越不相似。

3 类或簇

聚类得到的类或簇本质是样本的子集一如果一个聚类方法属于一个类或类的交集为空集,那么该方法称为硬聚类(hard clustering)方法,否则,如果一个样本可以属于多个类或类的交集不为空集,那么该方法称为软聚类(soft clustering)方法。

用G表示类或簇(cluster),用 x i , x j x_{i},x_{j} xi,xj表示类中的样本,用 x G x_G xG 表示G 中祥本的个数,用 d i j d_{ij} dij表示样本 x i x_i xi与样本 x j x_j xj之间的距离。类或簇有多种定义,下面给出几个常见的定义。

定义14.5 设T为给定的正数,若对于集合G 中任意两个样本 x i , x j x_{i},x_{j} xi,xj, 使得

d i j ≤ T d_{ij} \leq T dij≤T

3.1 类的特征

可以通过不同角度来刻画,常用的特征有下面三种:

  • (1)类的均值 x ˉ G \bar{x}_G xˉG

  • (2)类的直径(diameter) D G D_G DG

  • (3)类的样本散布矩阵(scatter matrix) A G A_G AG与样本协方差矩阵(covariancematrix) S G S_G SG

    类的样本散布矩阵(scatter matrix) A G A_G AG

    样本协方差矩阵(covariancematrix) S G S_G SG

4 类与类之间的距离

小结

加油,共勉吧!

相关推荐
AIwenIPgeolocation12 分钟前
埃文科技携手河南企业代表团亮相第十九届广州中博会
人工智能·科技
Qingniu0115 分钟前
【青牛科技】 GC1288:散热风扇领域中 LA6588 / 三洋的理想替代者
人工智能·分布式·科技·单片机·嵌入式硬件·电脑·散热风扇
萧鼎42 分钟前
探索PyCaret:一个简化机器学习的全栈库
人工智能·机器学习
啵啵鱼爱吃小猫咪43 分钟前
迭代学习公式
学习·机器人
宋一诺331 小时前
机器学习—再次决定下一步做什么
人工智能·python·机器学习
乘风而来的思绪1 小时前
机器学习极简史
人工智能·机器学习
FellAveal1 小时前
【机器学习】如何配置anaconda环境(无脑版)
python·机器学习·anaconda
明明真系叻1 小时前
第二十一周机器学习笔记:动手深度学习之——数据操作、数据预处理
笔记·深度学习·机器学习
文柏AI共享1 小时前
机器学习-朴素贝叶斯
人工智能·机器学习·自然语言处理·分类
我想回家种地1 小时前
渗透学习笔记之Windows基础
笔记·学习