请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

当n_components等于X的特征个数时,X.dot(self.components_.T).dot(self.components_) == X 吗?

感觉是个没什么意义的问题,因为n_components等于X的特征个数时并没有降维,我只是试了一下transform,再inverse_transform,发现和原数据重合了,但是数学不好证不出来

正在回答

1回答

liuyubobobo 2018-04-12 16:21:19

是的哦。这个问题也可以直观地想一下:我们将一个三维空间,映射到一个三维空间,由于空间维度不减少,所以所有的信息都不需要丢失。这样映射之后,再inverse回来,可以完全恢复出原来的数据:)



0 回复 有任何疑惑可以回复我~
  • 提问者 慕尼黑2107805 #1
    可以数学证明一下X.dot(self.components_.T).dot(self.components_) = X吗?
    回复 有任何疑惑可以回复我~ 2018-04-12 16:30:02
  • liuyubobobo 回复 提问者 慕尼黑2107805 #2
    self.components_ 的每一列互为正交单位向量,所以self.components_是一个正交矩阵。所以self.components_.T等于self.components_的逆。所以self.components_.T * self.components_ = E。所以X*E = E。
    回复 有任何疑惑可以回复我~ 2018-04-12 17:23:46
  • 提问者 慕尼黑2107805 #3
    非常感谢!
    回复 有任何疑惑可以回复我~ 2018-04-12 18:09:22
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信