V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
huzhikuizainali
V2EX  ›  机器学习

PCA 之前为什么要先对数据进行标准化?

  •  
  •   huzhikuizainali · 2022-05-01 22:10:58 +08:00 · 1407 次点击
    这是一个创建于 939 天前的主题,其中的信息可能已经有所发展或是发生改变。

    PCA 之前要先对数据进行

    A 、均值化(每个样本减去均值,使样本均值变成 0),

    B 、然后标准化:每个样本数据除以标准差,样本数据的标准差变成 1

    A 、比较好理解,没有 1 、 就无法将求主成分问题转化为线性代数的求协方差矩阵二次型表达式极值的问题。但是 B 、的作用是什么呢?他只不过会使协方差矩阵变成相关系数矩阵。可是变成相关系数矩阵有什么用呢?或者说不用相关系数矩阵求“最大方差”,就用协方差矩阵,难道不能找到最大方差的第一主成分方向么?

    PromethiumL
        1
    PromethiumL  
       2022-05-04 11:08:45 +08:00   ❤️ 1
    如果数据带单位,各维度的 range 可能差距很大,就会导致协方差矩阵的特征向量长度可能相差很大。
    这种情况下投影到主成分方向上后,总共解释的方差就不能达到最大,某一些主成分本来解释的方差没能够体现出来。
    (我去复习了一下这个回答 https://stats.stackexchange.com/a/69159/36229
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2785 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 15:12 · PVG 23:12 · LAX 07:12 · JFK 10:12
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.