编程语言
首页 > 编程语言> > 机器学习(十三)无监督学习:聚类算法

机器学习(十三)无监督学习:聚类算法

作者:互联网

文章目录


Log

2022.02.11开始学习第十三章
2022.02.12继续学习
2022.02.14今天继续弄
2022.02.17事情终于忙完了,回来学习
2022.02.18继续弄第十三章
2022.02.21接连不断的事情要做,接着又开学了,又有了更多的事,遥遥无期,抽时间弄吧
2022.02.22弄完十三章


一、无监督学习(Unsupervised learning introduction)

1. 简介

2. 聚类算法的应用

在这里插入图片描述

  1. 市场分割: 将数据库中客户的信息根据市场进行不同的分组,从而实现对其分别销售或者根据不同的市场进行服务改进。
  2. 社交网络分析: 通过邮件最频繁联系的人及其最频繁联系的人来找到一个关系密切的群体。
  3. 组织计算机集群: 在数据中心里,计算机集群经常一起协同工作,可以用它来重新组织资源、重新布局网络、优化数据中心以及通信数据。
  4. 了解银河系的构成: 利用这些信息来了解一些天文学的知识。

二、K-means 算法(K-means algorithm)

1. 直观理解 K 均值算法

在这里插入图片描述

2. K 均值算法的规范表达

I n p u t : − K    ( n u m b e r    o f    c l u s t e r s ) − T r a i n i n g    s e t    { x ( 1 ) , x ( 2 ) , . . .   , x ( m ) }   x ( i ) ∈ R n ( d r o p    x 0 = 1    c o n v e n t i o n ) \begin{aligned} &Input:\\ &\qquad - K\ \ (number\ \ of\ \ clusters)\\ &\qquad - Training\ \ set\ \ \{x^{(1)},x^{(2)},...\ ,x^{(m)}\}\\\ \\ &\quad x^{(i)}\in\R^n(drop\ \ x_0=1\ \ convention) \end{aligned}  ​Input:−K  (number  of  clusters)−Training  set  {x(1),x(2),... ,x(m)}x(i)∈Rn(drop  x0​=1  convention)​

3. K 均值算法的应用:分离不佳的簇的问题(non-separated clusters)

三、优化目标(Optimization objective)

1. 失真代价函数(the distortion cost function)

2. K 均值算法的细节

四、随机初始化(Random initialization)

1. 随机初始化(具体做法)

2. 多次随机初始化(解决局部最优解问题)

Random    initialization: f o r    i = 1    t o    100 { R a n d o m l y    i n i t i a l i z e    K – m e a n s . R u n    K – m e a n s . G e t    c ( 1 ) , . . .   , c ( m ) , μ 1 , . . .   , μ K . C o m p u t e    c o s t    f u n c t i o n ( d i s t o r t i o n ) J ( c ( 1 ) , . . .   , c ( m ) , μ 1 , . . .   , μ K ) }   P i c k    c l u s t e r i n g    t h a t    g a v e    l o w e s t    c o s t    J ( c ( 1 ) , . . .   , c ( m ) , μ 1 , . . .   , μ K ) \begin{aligned} &\textbf{Random\ \ initialization:}\\ &for\ \ i=1\ \ to\ \ 100\{\\ &\qquad\qquad Randomly\ \ initialize\ \ K\text{\textendash}means.\\ &\qquad\qquad Run\ \ K\text{\textendash}means.Get\ \ c^{(1)},...\ ,c^{(m)},\mu_1,...\ ,\mu_K.\\ &\qquad\qquad Compute\ \ cost\ \ function(distortion)\\ &\qquad\qquad\qquad J(c^{(1)},...\ ,c^{(m)},\mu_1,...\ ,\mu_K)\\ &\qquad\qquad\}\\\ \\ &Pick\ \ clustering\ \ that\ \ gave\ \ lowest\ \ cost\ \ J(c^{(1)},...\ ,c^{(m)},\mu_1,...\ ,\mu_K) \end{aligned}  ​Random  initialization:for  i=1  to  100{Randomly  initialize  K–means.Run  K–means.Get  c(1),... ,c(m),μ1​,... ,μK​.Compute  cost  function(distortion)J(c(1),... ,c(m),μ1​,... ,μK​)}Pick  clustering  that  gave  lowest  cost  J(c(1),... ,c(m),μ1​,... ,μK​)​

五、选取聚类数量(Choosing the number of clusters)

1. 肘部法则(the Elbow Method)

2. 以后续目的为聚类数量的取值依据

总结

标签:...,qquad,均值,学习,mu,算法,聚类
来源: https://blog.csdn.net/weixin_53312629/article/details/122870624