Clustering
# Clustering
聚类
# 聚类算法
# K-Mean
- 很常见的聚类算法
# 输入
- n 维向量的点集
# 输出
- 每个点的类标签
# 算法
- 确定初始的类中心点 $\mu_1, \\ …, \\ \mu_k$ (e.g. 随机)
- 计算点集中的每个点与哪个中心最近, 则这个点标上此类的标签
- 重新计算类中心点, 使该类所有点到该点的总距离最小
- 重复2,3步, 直到无变化或到达精度要求
# DBSCAN
- 基于密度的聚类算法
- 动画: DBSCAN - bilibili
# 概念
- 核心点 core point/core object: 辐射半径内至少有 n 个其他点
- 非核心点
- 辐射半径: 一个自定义的半径
- 离群点: 辐射半径内一个其他点都没有
# 输入
- 辐射半径
- n: 成为核心点需要周围有 n 个点
# 输出
- 每个点的簇
# 算法
- 找到所有核心点
- 从任意一个核心点开始, 将其与其半径内的所有核心点加入第一个簇
- 重复2直到对所有核心点处理完成
- 将所有核心点周围的非核心点加入该簇(没说冲突怎么处理)
- 剩下的点是离群点