关于梯度上升法求解PCA相关衍生问题
来源:7-5 高维数据映射为低维数据

毕设入门学习
2019-04-26
老师您好,学习梯度上升法处理PCA后,有几个疑惑点想向您请教:
-
与 求均值再求协方差的PCA求解方法 相比,使用梯度上升/下降方法 求解PCA的优势在哪里?(会更快吗?)
-
SGD可以用来求解PCA,那么
(1)Adam, RMSprop之类自适应学习率的算法可以求解PCA吗?(会不会有些杀鸡用牛刀?)
(2)如果输入数据高维且稀疏,与SGD算法相比,这些自适应学习率的算法求解PCA有优势吗?谢谢老师!期待您的回复!
写回答
1回答
-
1)
使用梯度上升法求解PCA问题完全没有优势。我在这个课程中选择梯度上升法求解PCA,完全是因为这个思路不需要引入过多的数学概念,大家就可以理解PCA。不然的话,需要讲协方差矩阵,特征值和特征向量,以及为什么能达到降维的目的,对一般同学来说太难了。通常,完整的推导PCA的这个数学解,也是研究生课堂上的事情。鉴于我这个课程是机器学习的入门课程,我不想用太多数学知识让大家劝退,所以决定使用梯度上升发求解PCA问题。
PCA的标准解法是通过求解协方差矩阵的特征值和特征向量完成。通常一个问题有完美的数学解的时候,使用数学方式解决,无论是从性能还是精度,都远远高于搜索算法。
2)
由于PCA问题可以用搜索算法求解。所以,你说的算法都ok。但关键还是在于PCA问题有标准的数学解,毕竟它本身就是一个线性问题。所以,数学解是最好的解法:)
继续加油!:)
512019-04-27
相似问题