前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >机器学习入门 7-2 使用梯度上升法求解主成分分析

机器学习入门 7-2 使用梯度上升法求解主成分分析

作者头像
触摸壹缕阳光
发布2019-11-13 10:20:10
6930
发布2019-11-13 10:20:10
举报
本系列是《玩转机器学习教程》一个整理的视频笔记。上一小节介绍了使用主成分分析法对数据进行降维的原理,最终将采用主成分分析法进行降维的问题规约成求目标函数最大值的优化问题,同时也提到了求解最大值的搜索策略梯度上升法。这一小节,具体的来推导使用梯度上升法求解主成分分析法的公式。

梯度上升法求解主成分分析

优化中有最小化的损失函数以及最大化的效用函数,在一般情况下使用g(X)来表示损失函数,因此此处的最大化效用函数使用f(X)来表示。其实梯度上升法和梯度下降法的基本原理是一样的,只不过梯度下降法参数更新向着梯度下降的方向,而梯度上升法参数更新向着梯度上升的方向,推导的公式都是一致的"下一个参数值 = 当前参数值 - 学习率 * 梯度"。因此不论是梯度下降法还是梯度上升法最重要的还是要求目标函数对参数的梯度。

对于效用函数f(X)来说,w是未知参数,简单来说就是通过梯度上升法来寻找合适的w参数,使得f(X)对应的函数值最大,其余的x都是已知的,当然由于主成分分析法是非监督学习没有标签,从f(X)中也可以看出,没有对应的y标签。

此时将式子进一步整理,如下图所示:

梯度是一个n维的向量,这是因为w是一个n维向量,特征空间一共有n维,相应的在这个特征空间中表示一个轴也是使用一个n维的向量,梯度表示一个方向,在这个n维空间中,每一个方向也是一个n维的向量。当然式子推导成上面的样子已经可以进行编程实现了。在梯度下降法的时候,我们对比了for循环和向量化的方式求解梯度,得益于向量化的一些优化,使得向量化的效率比for循环效率高很多,因此我们继续将上面的式子进行向量化的处理。其实和前面求解梯度下降法的向量化类似。

这样我们就得到了梯度向量化的表示,我们可以使用计算维度的方式来判断一下,Xw的转置是(1, m)的向量,而X样本矩阵是(m, n)的矩阵,(Xw)转置与X点乘之后结果维度为(1, n),通常将向量表示成一个(n, 1)的列向量。因此我们需要对上面向量化结果的式子进行转置操作。如下图所示:

总的来说通过向量化的方式求解梯度如下所示:

求解主成分分析需要最大化一个效用函数,我们使用梯度上升法的方式来求解,而梯度上升法主要在于求解梯度,因此本小节推导了向量化的梯度公式,有了这个梯度值,我们就可以使用与梯度下降法整体框架类似的梯度上升法来搜索最优参数。不过在具体实现的过程中还需要注意一些事情,下一小节就将具体的实现使用梯度上升法求解主成分分析。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI机器学习与深度学习算法 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档