Coursera 机器学习 第8章(上) Unsupervised Learning 学习笔记

8 Unsupervised Learning
8.1 Clustering
8.1.1 Unsupervised Learning: Introduction
集群(聚类)的概念。
什么是无监督学习:对于无标记无关联标记的数据,要求算法分析出数据的结构。
什么是聚类:将未加标签的数据分成有紧密关系的子集或者簇。

 

做道题:

 

ABC

 

 

8.1.2 K-Means Algorithm
讨论什么是K均值以及K均值的使用。K均值算法是一种迭代的聚类方法。

用图来展示K均值更加直观:
1.因为本例要将数据分为2类,所以要随进选择2个聚类中心(cluster centroid)。绿色的点表示的是未标记的样本。


2.迭代执行簇分配(centroid assignment)和移动聚类中心(Move the cluster centroids):
while 聚类中心不再移动
  簇分配,检查没有标记的点,将点的颜色染成距离它最近的那个聚类中心的颜色。(例子中是将图中的绿点根据距离红叉或者篮叉更近分配到两个不同的聚类中心)。
  移动聚类中心,计算点的各维度的均值,将中心移动到与自己同一颜色的点群的均值位置。(将红叉或者篮叉移动到和它一样颜色的那堆点的均值处)。
end

具体过程从左向右,从上向下:

 

 

 

K均值算法描述:
输入:K个类别;训练集。


运行:簇分配+移动聚类中心。

如果遇到没有分配点的聚类中心,直接移除或者再随机找一个聚类中心,通常移除更加常见。算法见下图:

1.随机初始化K个聚类中心u1,u2,...,uK

2.while 聚类中心不再变化

  簇分配:对于训练集的每个样本x(i),置c(i)=距离x(i)最近的聚类中心编号k。这里就是求mink||x(i)-uk||2的k。

  移动聚类中心:对于每个聚类中心k,置uk=(所有c(i)=k的样本点的均值)。

end

 

做道题:

 

答案:

K均值的应对没有很好分开的簇:
市场细分的例子:将T恤分为小中大号。


下一节中讨论如何让K均值表现得更好一些

 

8.1.3 Optimization Objective
1.K均值的代价函数。保证K均值的正常运行。
2.如何利用K均值的代价函数来帮助K均值来找到更好的簇,避免局部最优解。
一些定义:c(i)、uk和uc(i)

K均值的代价函数也叫失真代价函数(distortion cost function)。

K均值算法的原理是最小化代价函数J的过程:簇分配就是在聚类中心不变时,求使代价函数J最小的c(1)...c(m);移动聚类中心就是在c(1)...c(m)不变的情况下,求使代价函数最小的uk

 

做道题:

 

D

回归问题中有可能因为学习率设置过大产生随着迭代次数增加,cost function反倒增大的情况。但聚类是不会产生这样的问题的,因为每一次聚类都保证了使J下降,且无学习率做参数。

下节课帮助K均值找到更好的簇以及同时避免局部最优解。

 

 

8.1.4 Random Initialization
如何初始化K均值聚类中心,这会引导我们如何避开局部最优来构建K均值。

随机初始化:
1.K<m。

2.随机选择K个训练样本。

3.使聚类中心等于这些被选的K个样本。

KMeans的运行结果取决于KMeans的初始化。

避免局部最优的方法,提高K均值找到有可能的聚类的几率的方法是多次随机初始化。具体而言就是

1.随机初始化K均值。

2.执行K均值。

3.得到一系列的c,u值。

4.计算代价函数。

将以上4步多次执行,选取代价函数最小的一次作为最终结果。


如果聚类的k选取的比较小,多次随机初始化通常就会有个较好的局部最优解;但是如果k很大,那么多次随机初始化的效果就不太明显。

 

做道题:


C

 

 

8.1.5 Choosing the Number of Clusters
如何选择聚类分类数目K。没有自动选择的好方法:看可视化的图;看聚类分类的输出结果;手动决定(最常用)。
选择聚类的数目是困难的是因为数据中有多少个类通常是模棱两可的。比如下图:相同的数据样本情况


无监督学习中样本没有标签,所以结果没有清晰的答案。

 

其中的可能有用的一个方法:肘部法则(Elbow Method)。具体就是取不同的类别值K,分别计算不同K下的代价函数J,画图:

左图中出现一个突变点,这个点对应的K值就是可能的较好的分类数目K。在这个K前后,代价函数值有突变。K=3前代价函数值下降速度较快;K=3后代价函数值下降速度慢。像这样K=3的点,就是肘点(elbow)。但实际上也有可能出现像右边的图的情况,这时的肘点就没有左图那么明显。

 

出现上图右侧的情况时,更好地选择分类数目K的方法其实是看运行K均值的目的是什么。

 

比如T恤的例子:可以分为{S,M,L},也可以分为{XS,S,M,L,XL},具体看需求和目的。

 

做道题:

 

C

 

练习:

 

BD

 

C

 

CD

 

B

 

CD

 

AB

 

posted @ 2016-03-10 20:37  Deribs4  阅读(1091)  评论(0编辑  收藏  举报