机器学习吴恩达课程总结(四)

12. 第十二章 支持向量机(Support Vector Machines,SVM)

12.1 优化目标(optimization objective)

  1. 逻辑回归的另一种观点

    h θ ( x ) = 1 1 + e − θ T x {h_\theta }(x) = {1 \over {1 + {e^{ - {\theta ^T}x}}}} hθ(x)=1+eθTx1

    • y = 1 y = 1 y=1,我们想要 h θ ( x ) ≈ 1 {h_\theta }(x) \approx 1 hθ(x)1,即 e − θ T x ≫ 0 {e^{ - {\theta ^T}x}} \gg 0 eθTx0
    • y = 0 y = 0 y=0,我们想要 h θ ( x ) ≈ 0 {h_\theta }(x) \approx 0 hθ(x)0,即 e − θ T x ≪ 0 {e^{ - {\theta ^T}x}} \ll 0 eθTx0

    cos ⁡ t ( h θ ( x ) , y ) = − ( y log ⁡ ( h θ ( x ) ) + ( 1 − y ) log ⁡ ( 1 − h θ ( x ) ) ) = − y log ⁡ ( 1 1 + e − θ T x ) − ( 1 − y ) log ⁡ ( 1 − 1 1 + e − θ T x ) \cos t({h_\theta }(x),y) = - ({\rm{y}}\log ({h_\theta }(x)) + (1 - {\rm{y}})\log (1 - {h_\theta }(x))) = - y\log ({1 \over {1 + {e^{ - {\theta ^T}x}}}}) - (1 - y)\log (1 - {1 \over {1 + {e^{ - {\theta ^T}x}}}}) cost(hθ(x),y)=(ylog(hθ(x))+(1y)log(1hθ(x)))=ylog(1+eθTx1)(1y)log(11+eθTx1)

    image-20220403163046116

    使用 cos ⁡ t 1 ( z ) , cos ⁡ t 0 ( z ) \cos {t_1}(z),\cos {t_0}(z) cost1(z),cost0(z)分别替代 − log ⁡ ( 1 1 + e − θ T x ) , − log ⁡ ( 1 − 1 1 + e − θ T x ) - \log ({1 \over {1 + {e^{ - {\theta ^T}x}}}}), - \log (1 - {1 \over {1 + {e^{ - {\theta ^T}x}}}}) log(1+eθTx1),log(11+eθTx1)

  2. SVM

min ⁡ θ C ∑ i = 1 m [ y ( i ) cos ⁡ t 1 ( θ T x ( i ) ) + ( 1 − y ( i ) ) cos ⁡ t 0 ( θ T x ( i ) ) ] + 1 2 ∑ j = 1 n θ j 2 \mathop {\min }\limits_\theta C\sum\limits_{i = 1}^m {[{y^{(i)}}\cos {t_1}({\theta ^T}{x^{(i)}}) + (1 - {y^{(i)}})\cos {t_0}({\theta ^T}{x^{(i)}})]} + {1 \over 2}\sum\limits_{j = 1}^n {{\theta _j}^2} θminCi=1m[y(i)cost1(θTx(i))+(1y(i))cost0(θTx(i))]+21j=1nθj2 C C C为常数

SVM假设不输出概率,进行直接的预测:
在这里插入图片描述

12.2 大间隔直观理解(Large Margin Intuition)

min ⁡ θ C ∑ i = 1 m [ y ( i ) cos ⁡ t 1 ( θ T x ( i ) ) + ( 1 − y ( i ) ) cos ⁡ t 0 ( θ T x ( i ) ) ] + 1 2 ∑ j = 1 n θ j 2 \mathop {\min }\limits_\theta C\sum\limits_{i = 1}^m {[{y^{(i)}}\cos {t_1}({\theta ^T}{x^{(i)}}) + (1 - {y^{(i)}})\cos {t_0}({\theta ^T}{x^{(i)}})]} + {1 \over 2}\sum\limits_{j = 1}^n {{\theta _j}^2} θminCi=1m[y(i)cost1(θTx(i))+(1y(i))cost0(θTx(i))]+21j=1nθj2

image-20220403164108812

  • y = 1 y = 1 y=1,我们想要 θ T x ≥ 1 {\theta ^T}x \ge 1 θTx1,而不再仅仅是 ≥ 0 \ge 0 0
  • y = 0 y = 0 y=0,我们想要 θ T x ≥ − 1 {\theta ^T}x \ge -1 θTx1,而不再仅仅是 ≤ 0 \le 0 0

SVM决策边界(SVM Decision Boundary):线性可分离的情况,支持向量机的间隔, min ⁡ θ C 0 + 1 2 ∑ j = 1 n θ j 2 \mathop {\min }\limits_\theta C0 + {1 \over 2}\sum\limits_{j = 1}^n {{\theta _j}^2} θminC0+21j=1nθj2

  • C C C非常大时,想要将每个训练集中的样本都分类正确,对噪声敏感
  • C C C不是特别大时,允许部分样本分类错误,对噪声不敏感,甚至线性不可分离的情况,SVM也能做的很好。
  • C C C相当于 1 λ {1 \over \lambda } λ1

image-20220403165429467

12.3 大间隔分类器的数学原理

约定:
在这里插入图片描述
∥ u ∥ = l e n g t h o f v e c t o r u = u 1 2 + u 2 2 ∈ R \parallel u\parallel = length{\kern 1pt} {\kern 1pt} of{\kern 1pt} {\kern 1pt} vector{\kern 1pt} {\kern 1pt} u = \sqrt {u_1^2 + u_2^2} \in R u=lengthofvectoru=u12+u22 R

image-20220403171010674

P P P等于 v v v u u u上的映射, u T v = P ∙ ∥ u ∥ = u 1 v 1 + u 2 v 2 ∈ R {u^T}v = P \bullet \parallel u\parallel = {u_1}{v_1} + {u_2}{v_2} \in R uTv=Pu=u1v1+u2v2R

决策边界: min ⁡ θ 1 2 ∑ j = 1 n θ j 2 \mathop {\min }\limits_\theta {1 \over 2}\sum\limits_{j = 1}^n {{\theta _j}^2} θmin21j=1nθj2 C C C非常大时。

简化分析: θ 0 = 0 , n = 2 {\theta _0} = 0,n = 2 θ0=0,n=2

1 2 ∑ j = 1 n θ j 2 = 1 2 ( θ 1 2 + θ 2 2 ) = 1 2 ( θ 1 2 + θ 2 2 ) 2 = 1 2 ∥ θ ∥ 2 {1 \over 2}\sum\limits_{j = 1}^n {{\theta _j}^2 = } {1 \over 2}(\theta _1^2 + \theta _2^2) = {1 \over 2}{(\sqrt {\theta _1^2 + \theta _2^2} )^2} = {1 \over 2}\parallel \theta {\parallel ^2} 21j=1nθj2=21(θ12+θ22)=21(θ12+θ22 )2=21θ2

θ T x ( i ) = P ( i ) + ∥ θ ∥ = θ 1 x 1 ( i ) + θ 2 x 2 ( i ) {\theta ^T}{x^{(i)}} = {P^{(i)}} + \parallel \theta \parallel = {\theta _1}x_1^{(i)} + {\theta _2}x_2^{(i)} θTx(i)=P(i)+θ=θ1x1(i)+θ2x2(i)

image-20220403172429929

12.4 核函数1(Kernels)

非线性决策边界:

image-20220403172614272

θ 0 + θ 1 x 1 + θ 2 x 2 + θ 3 x 1 x 2 + θ 4 x 1 2 + θ 5 x 2 2 + . . . ≥ 0 {\theta _0} + {\theta _1}{x_1} + {\theta _2}{x_2} + {\theta _3}{x_1}{x_2} + {\theta _4}{x_1}^2 + {\theta _5}{x_2}^2 + ... \ge 0 θ0+θ1x1+θ2x2+θ3x1x2+θ4x12+θ5x22+...0,预测 y = 1 y = 1 y=1

定义新特性: f 1 = x 1 , f 2 = x 2 , f 3 = x 1 x 2 , . . . {f_1} = {x_1},{f_2} = {x_2},{f_3} = {x_1}{x_2},... f1=x1,f2=x2,f3=x1x2,...,是否有更好的方法呢?

给定 x x x,计算新的特征取决于在与地标( l ( 1 ) , l ( 2 ) , l ( 3 ) {l^{(1)}},{l^{(2)}},{l^{(3)}} l(1),l(2),l(3))的接近程度。

image-20220403173219939

f 1 = s i m i l a r i t y ( x , l ( 1 ) ) = exp ⁡ ( − ∥ x − l ( 1 ) ∥ 2 2 σ 2 ) {f_1} = similarity(x,{l^{(1)}}) = \exp ( - {{\parallel x - {l^{(1)}}{\parallel ^2}} \over {2{\sigma ^2}}}) f1=similarity(x,l(1))=exp(2σ2xl(1)2),衡量 x , l ( 1 ) x,{l^{(1)}} x,l(1)的相似度。

核函数标记为: κ ( x , l ( i ) ) \kappa (x,{l^{(i)}}) κ(x,l(i))

12.5 核函数2

如何得到 l ( 1 ) , l ( 2 ) , l ( 3 ) , . . . {l^{(1)}},{l^{(2)}},{l^{(3)}},... l(1),l(2),l(3),...

带核函数的SVM:

  • 训练集: { ( x ( 1 ) , y ( 1 ) ) , ( x ( 2 ) , y ( 2 ) ) , . . . , ( x ( m ) , y ( m ) ) } \{ ({x^{(1)}},{y^{(1)}}),({x^{(2)}},{y^{(2)}}),...,({x^{(m)}},{y^{(m)}})\} {(x(1),y(1)),(x(2),y(2)),...,(x(m),y(m))}
  • 选择 l ( 1 ) = x ( 1 ) , l ( 2 ) = x ( 2 ) , . . . , l ( m ) = x ( m ) {l^{(1)}} = {x^{(1)}},{l^{(2)}} = {x^{(2)}},...,{l^{(m)}} = {x^{(m)}} l(1)=x(1),l(2)=x(2),...,l(m)=x(m)
  • 计算 f f f f 1 = s i m i l a r i t y ( x , l ( 1 ) ) {f_1} = similarity(x,{l^{(1)}}) f1=similarity(x,l(1)),…, f m = s i m i l a r i t y ( x , l ( m ) ) {f_m} = similarity(x,{l^{(m)}}) fm=similarity(x,l(m)) f f f作为训练时用的特征
  • min ⁡ θ C ∑ i = 1 m [ y ( i ) cos ⁡ t 1 ( θ T f ( i ) ) + ( 1 − y ( i ) ) cos ⁡ t 0 ( θ T f ( i ) ) ] + 1 2 ∑ j = 1 n θ j 2 \mathop {\min }\limits_\theta C\sum\limits_{i = 1}^m {[{y^{(i)}}\cos {t_1}({\theta ^T}{f^{(i)}}) + (1 - {y^{(i)}})\cos {t_0}({\theta ^T}{f^{(i)}})]} + {1 \over 2}\sum\limits_{j = 1}^n {{\theta _j}^2} θminCi=1m[y(i)cost1(θTf(i))+(1y(i))cost0(θTf(i))]+21j=1nθj2

为什么不将核函数的技巧应用于逻辑回归,因为当结合逻辑回归会变得很慢,一些优化是针对核函数和SVM的。

SVM参数:

  • C ( = 1 λ ) C( = {1 \over \lambda }) C(=λ1)
    • C C C:低偏差,高方差——过拟合
    • C C C:高偏差,低方差——欠拟合
  • σ 2 {{\sigma ^2}} σ2
    • σ 2 {{\sigma ^2}} σ2:特征 f f f非常平滑。高偏差,低方差——欠拟合
    • σ 2 {{\sigma ^2}} σ2:特征 f f f非常不平滑。高偏差,低偏差,高方差——过拟合

image-20220403180541401

12.6 使用SVM

使用SVM软件包解决参数 θ \theta θ计算问题。

注意两点:

  • 参数 C C C的选择
  • 核函数的选择
  1. 无核函数(线性核函数),得到一个线性分类器。当 n n n很大, m m m很小时可行。但是,在一个非常高维的特征空间中,尝试拟合非常复杂的函数,如果训练集很小的话,可能过拟合。

  2. 高斯核函数(Gaussian kernel):

    f i = exp ⁡ ( − ∥ x − l ( 1 ) ∥ 2 2 σ 2 ) {f_i} = \exp ( - {{\parallel x - {l^{(1)}}{\parallel ^2}} \over {2{\sigma ^2}}}) fi=exp(2σ2xl(1)2)

    需要选择 σ 2 {{\sigma ^2}} σ2

    n n n很小, m m m很大时可以拟合非线性。

核函数注意:如果原特征取值范围相差很大,可能 f f f很大程度上只由一些特征决定了。

其他的核函数:String kernel,chiIsquare’kernel, histogram intersec2on’kernel,…

注意:不是所有的相似性函数 s i m i l a r i t y ( x , l ) similarity(x,l) similarity(x,l)都是有效的内核。(需要满足名为 "默瑟定理 "的技术条件,以确保SVM包的优化正确运行,并且不发生分歧)。

多分类:

许多SVM学习包内置了多分类方法,使用一对多进行多分类。

逻辑回归 VS SVM:

n n n表示特征数量, m m m表示训练样本数量

  1. 如果 n n n相对 m m m很大(如: n = 10000 , m = 10 ∼ 1000 n = 10000,m = 10 \sim 1000 n=10000,m=101000),使用逻辑回归或者线性核函数的SVM
  2. 如果 n n n较小 m m m中等(如: n = 1 ∼ 1000 , m = 10 ∼ 10000 n = 1 \sim 1000,m = 10 \sim 10000 n=11000,m=1010000),使用高斯核函数SVM
  3. 如果 n n n较小 m m m很大(如: n = 1 ∼ 1000 , m = 50000 + n = 1 \sim 1000,m = 50000 + n=11000,m=50000+),使用逻辑回归或者线性核函数的SVM

神经网络可能在大多数情况下表现良好,但是训练可能较慢。

13. 聚类(Clustering)

13.1 无监督学习(Unsupervised Learning Introduction)

训练集: { x ( 1 ) , x ( 2 ) , . . . , x ( m ) } \{ {x^{(1)}},{x^{(2)}},...,{x^{(m)}}\} {x(1),x(2),...,x(m)}

image-20220403212956938

聚类算法应用:市场分割;社交网络分析;服务器组织;天文数据分析

image-20220403213205744

13.2 K均值聚类算法(k-means algorithm)

K均值聚类算法:

  • 输入:K(聚类数量);训练集: { x ( 1 ) , x ( 2 ) , . . . , x ( m ) } \{ {x^{(1)}},{x^{(2)}},...,{x^{(m)}}\} {x(1),x(2),...,x(m)} x ( i ) ∈ R n {x^{(i)}} \in {R^n} x(i)Rn默认 x 0 = 1 x_0^{} = 1 x0=1
  • 随机初始化K个类中心 u 1 , u 2 , . . . , u k ∈ R n {u_1},{u_2},...,{u_k} \in {R^n} u1,u2,...,ukRn
  • 簇分配(cluster assignment step):将每个点赋予离其最近的类中心点。(新聚类)
  • 更新簇中心(move centroid):计算每类数据点的均值作为新的类中心。(新中心)
  • 重复上述步骤直到收敛,即聚类结果不变

13.3 优化目标(Optimization objective)

c ( i ) {c^{(i)}} c(i)表示 x ( i ) {x^{(i)}} x(i)当前被分配给哪个类别; u k {u_k} uk表示类中心k; u c ( i ) {u_{{c^{(i)}}}} uc(i)表示 x ( i ) {x^{(i)}} x(i)当前被被分配给哪个类中心。

优化目标: J ( c ( 1 ) , . . . , c ( m ) , . . . , u 1 , . . . , u K ) = 1 m ∑ i = 1 m ∥ x ( i ) − u c ( i ) ∥ 2 J({c^{(1)}},...,{c^{(m)}},...,{u_1},...,{u_K}) = {1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}} - {u_{{c^{(i)}}}}{\parallel ^2}} J(c(1),...,c(m),...,u1,...,uK)=m1i=1mx(i)uc(i)2

min ⁡ c ( 1 ) , . . . , c ( m ) , . . . , u 1 , . . . , u K J ( c ( 1 ) , . . . , c ( m ) , . . . , u 1 , . . . , u K ) \mathop {\min }\limits_{{c^{(1)}},...,{c^{(m)}},...,{u_1},...,{u_K}} J({c^{(1)}},...,{c^{(m)}},...,{u_1},...,{u_K}) c(1),...,c(m),...,u1,...,uKminJ(c(1),...,c(m),...,u1,...,uK)

可以证明:

  • 第一步:簇分配(新聚类)是在优化 c ( 1 ) , . . . , c ( m ) {c^{(1)}},...,{c^{(m)}} c(1),...,c(m),而保持 u 1 , . . . , u K {u_1},...,{u_K} u1,...,uK不变
  • 第二步:更新簇中心(新中心)是在优化 u 1 , . . . , u K {u_1},...,{u_K} u1,...,uK,而保持 c ( 1 ) , . . . , c ( m ) {c^{(1)}},...,{c^{(m)}} c(1),...,c(m)不变
  • k-means其实就是分两步最小化 J ( c ( 1 ) , . . . , c ( m ) , . . . , u 1 , . . . , u K ) = 1 m ∑ i = 1 m ∥ x ( i ) − u c ( i ) ∥ 2 J({c^{(1)}},...,{c^{(m)}},...,{u_1},...,{u_K}) = {1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}} - {u_{{c^{(i)}}}}{\parallel ^2}} J(c(1),...,c(m),...,u1,...,uK)=m1i=1mx(i)uc(i)2,然后反复迭代直至收敛

13.4 随机初始化(Random initialization)

满足以下条件:

  • 应该有 K < m K < m K<m
  • 随机挑选 K K K个训练样本
  • 设置 u 1 , . . . , u K {u_1},...,{u_K} u1,...,uK等于这 K K K个训练样本

由于初始化的不同,K均值聚类算法可能会落在局部最优。为解决局部最优,特别是 K = 2 ∼ 10 K = 2 \sim 10 K=210时,采用下述方案有较大改善:重复运行50~1000次k-means取最优。

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

  1. “肘”法(Elbow method):

image-20220403224040465

可以解决一些问题,但不能应对所有问题。

  1. 有时,你正在运行k-means去聚类,为了下一步的工作。这样可以根据在接下来工作的表现,作为选择 K K K的准则。

14. 第十四章 降维(Dimensionality Reduction)

14.1 目标1:数据压缩

目的:减少空间;算法加速

减少数据量,如:二维到一维,三维到二维

矩阵的维数一般是说向量中值的个数,注意:向量默认是竖向的

14.2 目标2:可视化

常常将高维数据映射为三维或二维进行可视化。

14.3 主成分分析问题规划(Principal Component Analysis,PCA)

问题描述:减少数量n维到k维,即寻找k个基向量 u ( 1 ) , u ( 2 ) , . . . , u ( k ) {u^{(1)}},{u^{(2)}},...,{u^{(k)}} u(1),u(2),...,u(k)表示所有数据,并且映射错误最小。

PCA不是线性回归。

14.4 主成分分析算法(Principal Component Analysis,PCA)

训练集: { x ( 1 ) , x ( 2 ) , . . . , x ( m ) } \{ {x^{(1)}},{x^{(2)}},...,{x^{(m)}}\} {x(1),x(2),...,x(m)}

  1. 数据预处理:包括特征缩放或者均值平均。

    计算 u j = 1 m ∑ i = 1 m x j ( i ) {u_j} = {1 \over m}\sum\limits_{i = 1}^m {x_j^{(i)}} uj=m1i=1mxj(i),然后用代 x j − u j s j {{{x_j} - {u_j}} \over {{s_j}}} sjxjuj x j ( i ) {x_j^{(i)}} xj(i)

    如果不同的特征范围不同,特征缩放是十分必要的。k维空间是原n维空间的低维子空间(dimensional sub-space)

  2. 计算协方差矩阵(convariance matrix)

    Σ = 1 m ∑ i = 1 m ( x ( i ) ) ( x ( i ) ) T \Sigma = {1 \over m}\sum\limits_{i = 1}^m {({x^{(i)}}){{({x^{(i)}})}^T}} Σ=m1i=1m(x(i))(x(i))T,其中 Σ \Sigma Σ s i g m a sigma sigma矩阵。

  3. 计算奇异值分解(eigenvectors of sigma)

    [ u , s , v ] = s v d ( s i g m a ) [u,s,v] = svd(sigma) [u,s,v]=svd(sigma),其中 u u u是我们需要的

    u = [ u ( 1 ) , u ( 2 ) ⏟ k , . . . , u ( m ) ] ∈ R n × n u = \left[ {\underbrace {{u^{(1)}},{u^{(2)}}}_k,...,{u^{(m)}}} \right] \in {R^{n \times n}} u=k u(1),u(2),...,u(m)Rn×n,取 u u u的前k个向量即可。

  4. x ∈ R n ⇒ z ∈ R k x \in {R^n} \Rightarrow z \in {R^k} xRnzRk

    KaTeX parse error: Undefined control sequence: \matrix at position 86: …(i)}} = \left[ \̲m̲a̲t̲r̲i̲x̲{ {u^{(1)}} \…

14.5 主成分数量选择

映射误差平方均值: 1 m ∑ i = 1 m ∥ x ( i ) − x a p p r o i x ( i ) ∥ 2 {1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}} - x_{approix}^{(i)}{\parallel ^2}} m1i=1mx(i)xapproix(i)2;数据总变化: 1 m ∑ i = 1 m ∥ x ( i ) ∥ 2 {1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}}{\parallel ^2}} m1i=1mx(i)2

尝试选择k使得最小化下面的值,即最大化的保留所有差异性:

image-20220404121047030
1 m ∑ i = 1 m ∥ x ( i ) − x a p p r o i x ( i ) ∥ 2 1 m ∑ i = 1 m ∥ x ( i ) ∥ 2 ≤ 0.01 {{{1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}} - x_{approix}^{(i)}{\parallel ^2}} } \over {{1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}}{\parallel ^2}} }} \le 0.01 m1i=1mx(i)2m1i=1mx(i)xapproix(i)20.01,等价于99%的方差被保留

选择k的方法:

尝试不同的k的取值, k = 1 , 2 , . . . k = 1,2,... k=1,2,...,计算 z ( 1 ) , z ( 2 ) , . . . , z ( m ) , x a p p r o i x ( 1 ) , x a p p r o i x ( 2 ) , . . . , x a p p r o i x ( m ) {z^{(1)}},{z^{(2)}},...,{z^{(m)}},x_{approix}^{(1)},x_{approix}^{(2)},...,x_{approix}^{(m)} z(1),z(2),...,z(m),xapproix(1),xapproix(2),...,xapproix(m),查看是否满足 1 m ∑ i = 1 m ∥ x ( i ) − x a p p r o i x ( i ) ∥ 2 1 m ∑ i = 1 m ∥ x ( i ) ∥ 2 ≤ 0.01 {{{1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}} - x_{approix}^{(i)}{\parallel ^2}} } \over {{1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}}{\parallel ^2}} }} \le 0.01 m1i=1mx(i)2m1i=1mx(i)xapproix(i)20.01。但是这样计算代价太高,可以利用 [ u , s , v ] = s v d ( s i g m a ) [u,s,v] = svd(sigma) [u,s,v]=svd(sigma)中的 s s s计算。

1 m ∑ i = 1 m ∥ x ( i ) − x a p p r o i x ( i ) ∥ 2 1 m ∑ i = 1 m ∥ x ( i ) ∥ 2 ≤ 0.01 ⇒ 1 − ∑ i = 1 k s i i ∑ i = 1 n s i i ≤ 0.01 {{{1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}} - x_{approix}^{(i)}{\parallel ^2}} } \over {{1 \over m}\sum\limits_{i = 1}^m {\parallel {x^{(i)}}{\parallel ^2}} }} \le 0.01 \Rightarrow 1 - {{\sum\limits_{i = 1}^k {{s_{ii}}} } \over {\sum\limits_{i = 1}^n {{s_{ii}}} }} \le 0.01 m1i=1mx(i)2m1i=1mx(i)xapproix(i)20.011i=1nsiii=1ksii0.01,k从小到大遍历选择最小满足条件的k。

14.6 压缩重现

Z = U T X ⇒ X a p p r o i x = U Z ≈ X Z = {U^T}X \Rightarrow {X_{approix}} = UZ \approx X Z=UTXXapproix=UZX

14.6 应用PCA的建议

监督学习加速:

训练集: { ( x ( 1 ) , y ( 1 ) ) , ( x ( 2 ) , y ( 2 ) ) , . . . , ( x ( m ) , y ( m ) ) } \{ ({x^{(1)}},{y^{(1)}}),({x^{(2)}},{y^{(2)}}),...,({x^{(m)}},{y^{(m)}})\} {(x(1),y(1)),(x(2),y(2)),...,(x(m),y(m))}

对输入进行PCA, { ( x ( 1 ) , y ( 1 ) ) , ( x ( 2 ) , y ( 2 ) ) , . . . , ( x ( m ) , y ( m ) ) } ⇒ { ( z ( 1 ) , y ( 1 ) ) , ( z ( 2 ) , y ( 2 ) ) , . . . , ( z ( m ) , y ( m ) ) } \{ ({x^{(1)}},{y^{(1)}}),({x^{(2)}},{y^{(2)}}),...,({x^{(m)}},{y^{(m)}})\} \Rightarrow \{ ({z^{(1)}},{y^{(1)}}),({z^{(2)}},{y^{(2)}}),...,({z^{(m)}},{y^{(m)}})\} {(x(1),y(1)),(x(2),y(2)),...,(x(m),y(m))}{(z(1),y(1)),(z(2),y(2)),...,(z(m),y(m))}

注意:在训练集上进行PCA映射计算,但是该映射可以应用到验证集和测试集上。

应用PCA:

  • 压缩:
    • 减少占用内存
    • 学习算法加速
  • 可视化
  1. 不要用PCA去解决过拟合问题。
  2. 什么时候不适合使用PCA?首先使用原始的输入进行实验,如果没有得到预期效果,再考虑采用PCA。PCA毕竟是降维,还是会有信息损失!而且增加了额外的工作量。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值