机器学习——聚类分析
聚类分析
K-means算法
- 算法简要步骤
- 随机选取K个样本点(不一定来自样本数据)作为初始的质心
- 第一次迭代,将所有样本分配到这K个类中
- 对每个样本计算其到两个聚类中心的欧式距离(一般)将其分配到距离最近中心所在簇中
- 重新计算聚类中心,将其更新为该簇所有点的平均值。
- 计算本次迭代的准则函数 J c J_c Jc为新的簇中心的每个属性与簇中所有点属性距离平方的累加
- 重复2步骤的1、2、3步,直到聚类中心不再变化或者达到最大迭代次数或者 J c J_c Jc足够小
K-中心算法
算法简要步骤
-
随机选取K个中心点,通过距离(一般选用曼氏距离)划分样本
-
计算中心点被非中心点代替的总代价
C j i h = d j m i n − d j − > 原 中 心 点 C_{jih} = d_{jmin} - d_{j->原中心点} Cjih=djmin−dj−>原中心点: C j i h 代 表 O i 被 O h 代 替 , O j 被 重 新 分 配 的 代 价 , d j m i n 代 表 O i 被 O h 代 替 后 O j 到 所 有 中 心 的 最 小 值 , d j − > 原 中 心 点 代 表 O j 到 原 来 中 心 点 的 距 离 C_{jih}代表O_i被O_h代替,O_j被重新分配的代价,d_{jmin}代表O_i被O_h代替后O_j到所有中心的最小值,d_{j->原中心点}代表O_j到原来中心点的距离 Cjih代表Oi被Oh代替,Oj被重新分配的代价,djmin代表Oi被Oh代替后Oj到所有中心的最小值,dj−>原中心点代表Oj到原来中心点的距离
T C i h = ∑ j = 1 A C j i h , T C i h 是 O i 被 O h 替 代 后 的 总 代 价 TC_{ih} = \displaystyle\sum_{j = 1}^{A}C_{jih},TC_{ih}是O_i被O_h替代后的总代价 TCih=j=1∑ACjih,TCih是Oi被Oh替代后的总代价
-
选取一个最小代价,使 O h 替 代 O i O_h替代O_i Oh替代Oi
-
重复2,3步骤,直到代价不再减少为止
DBSCAN算法
-
相关概念
- 邻域:对于任意给定样本x和距离 ε \varepsilon ε,x的邻域是指到样本x的距离不超过 ε \varepsilon ε的样本集合
- 核心对象:若样本x的 ε \varepsilon ε邻域内至少包含特定数目(MinPts)的样本,则x是一个核心对象
- 密度直达:若样本b在a的 ε \varepsilon ε邻域内,且a是核心对象,则称样本b由样本a密度直达
- 密度可达:对于样本a、b,如果存在样例 p 1 , p 2 , . . . , p n p_1,p_2,...,p_n p1,p2,...,pn,其中, p 1 = a , p n = b p_1 = a,p_n= b p1=a,pn=b,且序列中每一个样本都与它前一个样本密度直达,则称样本a与b密度可达
- 密度相连:对于样本a和b,若存在样本k是的a与k密度可达,且k与b密度可达,则a与b密度相连
-
相关算法
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!