2024年最新【吴恩达机器学习笔记】十二、降维_主成分数量选择(1)

并且PCA不是线性回归,虽然与线性回归比较相似。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0LhKnUkM-1670200062562)(吴恩达机器学习.assets/image-20211118093226322.png)]

上图左侧代表的是线性回归图像,而右侧则是PCA,可以发现线性回归问题中是找到样本竖直方向与直线的距离的最小误差,而PCA中则是样本与直线的垂直距离。还有一点不同就是,线性回归是要预测y值的,而PCA并没有什么预测的概念,本身作用是用于降维,而特征之间并没有什么特殊关系。

接下来,我们来讲讲PCA算法的详细步骤,但在此之前,我们首先要执行的是均值标准化,这里的流程实际上是和之前有监督学习的数据处理步骤是一样的。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cchxNySw-1670200062565)(吴恩达机器学习.assets/image-20211118101012675.png)]

并且如果特征值相差过大,还需要进行特征缩放。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XgyE1VfF-1670200062566)(吴恩达机器学习.assets/image-20211118094846128.png)]

如果你想减少数据即从N维降到K维,首先你要计算协方差矩阵(covariance matrix),要注意的是上面sigma矩阵和求和sigma是完全不一样的,虽然符号十分相似。然后再计算**奇异值分解(svd)**得到U,S,V矩阵,而svd函数可以通过数值库找到对应的代码。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q3uMKrv6-1670200062568)(吴恩达机器学习.assets/image-20211118095402373.png)]

而得到的USV中的U矩阵尤为关键,它是一个n阶方阵,我们要取其中的前k项从而组成Ureduce矩阵,然后计算其与样本向量的乘机得到z,这里的样本可以用训练集中的也可以用交叉验证集中的。

4. 主成分数量选择

我们在使用PCA的时候还要考虑到k的选择,以下就是我们选择k的标准。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8B4ubBMC-1670200062570)(吴恩达机器学习.assets/image-20211118102142247.png)]

你要计算平均平方投影误差与总平方误差,然后使两者相除的数值尽量的小,我们一般想让这个值尽量小于1%,或者我们也可以说尽量有大于99%的方差被保留即大于99%的数据被保留。

所以我们要该如何去选取k呢,下面左侧的方法就比较笨拙,通过不断尝试k值,然后反复计算平均平方投影误差和总平方投影误差,这样每次都会调用一次奇异化分解,导致效率变低。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oWDFyImM-1670200062571)(吴恩达机器学习.assets/image-20211118103233090.png)]

所以我们会用上图右侧的方法,利用之前奇异化分解得到的矩阵中的S矩阵,然后将之前的算式改成上图右侧的算式,这样我们就只用计算一次奇异化分解,每次只用计算只用调用S矩阵中的值即可,同样只用尽量让上面算式结果小于0.01,下面就是具体算式。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Au532Rgo-1670200062572)(吴恩达机器学习.assets/image-20211118103945918.png)]

5. 压缩重现

我们前面通过投影将高维转化为低维,同样我们也可以通过压缩后的数据将低维重现为高维。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j6iym39v-1670200062573)(吴恩达机器学习.assets/image-20211118104636862.png)]

重现后的x都在之前映射的直线上,不等于原来的x,但都接近于原来的x,具体步骤通过Ureduce乘以z即可。

6. 应用PCA的建议

我们在进行监督学习时有时候会碰到样本数据量特别大的情况,这时候直接运用逻辑回归、支持向量机等算法可能会运行的比较慢,这时候我们可以通过PCA来降维从而加速监督学习。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gsMInUs5-1670200062575)(吴恩达机器学习.assets/image-20211118133902927.png)]

我们可以从训练集中提取出x特征(注意只能是训练集),然后通过PCA算法将这些特征压缩成z,上面的这个例子是将10000维降到了1000维,实际中可能没这么夸张,可能会降1/5或者1/10之类,并保留大部分的方差。

现在,我们就可以来总结一下PCA的应用了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-11Nu6Wp5-1670200062576)(吴恩达机器学习.assets/image-20211118134320285.png)]

PCA可以用于数据的压缩,从而减少存储数据的内存或者磁盘,或者加速学习算法。

当然PCA还可以应用于可视化,我们一般运用2D或3D进行可视化。

还有一点要提的是,不要用PCA去防止过拟合情况。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4onumrpE-1670200062577)(吴恩达机器学习.assets/image-20211118134916379.png)]

也许,你用PCA去防止过拟合得到的效果不错,即使你保留了99%的方差,但仍然有可能会丢失一些有价值的信息,所以这里建议使用正则化去防止过拟合是更好的选择。

还有一个误区就是,很多人会滥用PCA,有些人甚至会在项目计划开始时就使用PCA,这里建议先不使用PCA去尝试训练模型,因为有时候可能不使用PCA也能达到同样的效果,就不用花很多时间在PCA的计算上面了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dZSHcDoB-1670200062578)(吴恩达机器学习.assets/image-20211118135437524.png)]

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

需要这份系统化资料的朋友,可以戳这里获取

  • 15
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值