欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction

程序员文章站 2024-01-18 22:53:22
...

8-2 Dimensionality Reduction 课程内容

此文为Week8 中Dimensionality Reduction的部分。

8-2-1 Motivation

Motivation I: Data Compression

维数约减 (dimensionality reduction):如果你有上百或者上千的特征变量,很容易有非常冗余的特征变量。可用于数据压缩。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
在更典型的维数约减例子中我们可能有1000维的数据,我们可能想降低到100维也就是 100D。但是因为能画的图是有限制的,所以我要用的例子是 3D 到 2D 或者 2D 到 1D 的。
维数约减的作用就是把所有数据投影到一个二维平面上。 把数据从三维降到二维的过程就是维数约减 。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction

Motivation II: Visualization

假如我们已经收集了大量 统计数据集,有关全世界不同国家的50个特征。【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
为了很好的观察数据,可以使用降维的方法。
我们可以提出一种不同的特征表示方法使用一个二维的向量z来代替x,在这种情况下我们可以使用一对数字 z1和z2,从某种程度来说这两个数总结了50个数。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction

8-2-2 Principal Component Analysis

Principal Component Analysis Problem Formulation

对于降维问题来说,目前最流行最常用的算法是主成分分析法 (Principal Componet Analysis, PCA)。

假设我们有这样的一个数据集,这个数据集含有二维实数空间内的样本X。假设我想对数据进行降维,从二维降到一维。也就是说我想找到 一条直线将数据投影到这条直线。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
PCA 所做的就是寻找一个低维的面。在这个例子中,数据投射在一条直线上面使得这些蓝色小线段的平方和 达到最小值,这些蓝色线段的长度时常被叫做投影误差。所以 PCA 所做的就是寻找 一个投影平面,对数据进行投影,使得这个能够最小化。在应用PCA之前通常的做法是先进行均值归一化特征规范化**,使得特征 x1 和 x2 均值为0 数值在可比较的范围之内。

PCA 的目标:如果我们将数据从二维降到一维的话,我们将试着寻找 一个向量u(i) 属于 n 维空间中的向量,寻找一个对数据进行投影的方向使得投影误差能够最小。对于PCA 我们要寻找 k 个向量来对数据进行投影。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
事实上PCA不是线性回归,尽管看上去有一些相似,但是它们确实是两种不同的算法。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
PCA 是是寻找到一个低维的平面,对数据进行投影以便最小化投影误差的平方,最小化每个点与投影后的对应点之间的距离的平方值。

Principal Component Analysis Algorithm

在使用 PCA 之前 我们通常会有一个数据预处理的过程。拿到某组有 m 个无标签样本的训练集,一般先进行均值归一化 (mean normalization),然后还可以进行特征缩放 (feature scaling) ,这根据你的数据而定。

这跟我们之前在监督学习中提到的均值归一和特征缩放是一样的,实际上,它们是完全一样的步骤。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
进行完以上这些数据预处理后,接下来就正式进入 PCA 的算法部分。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction

8-2-3 Applying PCA

Reconstruction from Compressed Representation

PCA 作为压缩算法, 可以将1000维数据压缩为100维的特征向量。或者有三维数据而将其压缩为二维表达形式。所以, 如果这是一个压缩算法, 应该有办法从这个压缩的表达法返回到原始高维数据的近似值。 所以给定“zi“ 这可能是100维, 怎么回到 原来的表达式, xi , xi 可能是1000维呢?
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
我们还称此过程为原始数据的重建,我们试图从压缩的表达形式重建原始值 x 。

Choosing the Number of Principal Components

在 PCA 算法中,我们把n维特征变量降维到k维特征变量。k也被称作主成分的数量,或者说是我们保留的主成分的数量。

平均平方映射误差 (Average Squared Projection Error) :x和其在低维表面上的映射点之间的距离的平方。PCA 就是要将这个量最小化 。
数据的总变差 (Total Variation) :这些样本x(i)的 长度的平方的均值。它的意思是 “平均来看我的训练样本距离零向量多远?平均来看我的训练样本距离原点多远?”

一个常见的选择K值的经验法则是选择能够使得***它们之间的比例小于等于0.01***的最小的k值。 换言之,用PCA的语言说就是保留了99%的差异性。取值范围是 90 95 99 也可能低到保留85%的差异性,这些都是比较典型的取值范围,可能从95到99 是人们最常用的取值范围。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction

【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
在使用 PCA 进行压缩时通常采用的决定k值的方法是,对协方差矩阵调用一次 svd 函数,然后用这个公式 来找出满足这个表达式的最小的k值。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction

Advice for Applying PCA

通过 PCA 来提高监督学习算法的速度。
很高维的特征向量运行会比较慢,通过使用 PCA 我们 能够降低数据的维数,从而使得算法能够更加高效地运行。
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
PCA 定义了从 x到z的对应关系,这种从 x 到 z的对应关系只可以通过在训练集上运行

就分类的精确度而言,数据降维后对学习算法几乎没有什么影响。如果我们将降维用在低维数据上,我们的学习算法会运行得更快。

迄今为止我们讨论过的有关PCA的应用中,第一个是数据压缩,主要应用其实也就是对于不同的应用来选择K值。

一个对PCA 不好的应用方面就是使用它来避免过拟合
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction

【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
PCA通常都是被用来压缩数据的以减少内存使用或硬盘空间占用,或者用来可视化数据。同时,PCA是最常用的方法之一,也是一种强有力的无监督学习算法。

测验 Dimensionality Reduction

【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction
【含课程pdf & 测验答案】吴恩达-机器学习公开课 学习笔记 Week8-2 Dimensionality Reduction

课程链接

https://www.coursera.org/learn/machine-learning/home/week/8

课件

课件链接

相关标签: 机器学习入门