本周主要讲的是聚类和降维。

聚类

  聚类是一种无监督的学习,应用实例有把一堆文章按主题分类,将T恤的尺寸分成几类,例如SML号等。这里讲的是K-Means。
K-Means其实原理很简单,主要是三步:

  1. 初始化K类的初始中心点。
  2. 计算每一个样本点到K中心点的距离,找出最小的距离,就定这个点为第k类。
  3. 计算每一类所有样本的均值点,更新中心点。
  4. 重复2.3.直到算法收敛。

所以其实K-Means的优化目标就是:
吴恩达机器学习笔记week 8

其中2.3步分别优化的是J wrt c和J wrt μ
吴恩达机器学习笔记week 8
  第一个好理解,就是固定了c(i),然后找每个点距离最近的c(i)。然而第二个可能不是那么直观,其实主要是对于N个点来说,如果希望优化1N(x(i)μc(i)),那么就要找到他们的平均点。
这一点稍稍补充一下,给一个解析解:
假设X是某个点,Y是N个固定点,这个固定点按照列向量排列。那么其实:

minXiNXyi2=minXtr[(X1TY)(X1TY)T]

那么就是:
tr[(X1TY)(X1TY)T]X=0

矩阵的迹的相关导数性质
tr[(X1TY)(X1TY)T]X=2NX2Y1=0

那么:
X=1NY1

这样第二步其实就是对μk的优化。

方法二直接对上边那个求导数,就是(Xyi)=0所以X=1/Nyi

另外有几点:
1. 初始化的时候,最好随机选取几个样本点,这样也能快点收敛。
2. 如果类别比较少,比方说3~5类,可能容易收敛到局部最优,那么就多试几次,然后取cost最小就可以了。
3. 如何选取K呢?其实有一个elbow定理,就是对K=1,2,3.。。计算cost,会发现cost出现一个elbow的拐点。这个时候就取拐点就好了。但是有的时候可能没有拐点,那么可以从商业价值的方向考虑,例如衣服分几个尺寸比较好?这个就是商业问题了。

PCA

  PCA用来降维。
吴恩达机器学习笔记week 8
  也就是将各个样本向量往样本子空间进行投影,尽量往方差大的地方投。直观上是这么表述,数学上就是:
吴恩达机器学习笔记week 8
  这个优化问题的解析解就是对样本特征的协方差矩阵进行奇异值分解。
  不过首先还是得对样本的各个特征做一个归一化处理,否则会比较不公平,本来一些特征的方差相对较大,但是由于绝对数量小,导致无法作为主分量。

也就是Σ=PTDP,然后Z=PsTXPs是前k个特征向量组成的P的子矩阵。
然后如果想投影回去,就是X=PssZP的逆矩阵,也就是P的转置矩阵的前k个向量然后再转置的。具体为啥就不描述了,线性代数的内容。

说几个要点,
吴恩达机器学习笔记week 8
吴恩达机器学习笔记week 8
吴恩达机器学习笔记week 8

相关文章:

  • 2021-06-04
  • 2021-06-30
  • 2021-07-31
  • 2021-11-23
  • 2021-07-04
猜你喜欢
  • 2021-08-14
  • 2022-01-16
  • 2021-06-09
  • 2021-12-07
  • 2021-04-06
  • 2021-10-07
相关资源
相似解决方案