【发布时间】:2020-02-17 20:53:43
【问题描述】:
标题中的问题。拨打pca.fit(X) 后,假设我拨打了pca.fit_transform(new_X)。 new_X 是否被 PCA 自动居中?文档在这一点上不清楚。
【问题讨论】:
标签: python scikit-learn pca
标题中的问题。拨打pca.fit(X) 后,假设我拨打了pca.fit_transform(new_X)。 new_X 是否被 PCA 自动居中?文档在这一点上不清楚。
【问题讨论】:
标签: python scikit-learn pca
来自文档:
使用奇异值分解的线性降维 将数据投影到低维空间。输入数据是 在应用 SVD 之前,居中但未针对每个特征进行缩放。
https://scikit-learn.org/stable/modules/generated/sklearn.decomposition.PCA.html
fit_transform 相当于在同一个输入矩阵上连续运行fit 和transform。 fit 函数计算使数据居中的均值,transform 函数使用在fit 期间计算的均值应用均值居中。
因此,要适应一个矩阵,并将从该矩阵学习的居中参数应用到另一个矩阵(例如,将在训练集上学习的模型应用到测试/验证集时),您需要使用 @分别为 987654329@ 和 transform。
【讨论】:
fit_transform 以输入矩阵为中心,或者只是fit?