我想在应用线性回归之前使用主成分分析来减少一些噪音。在线性回归中使用PCA
我有1000个样本和200个特征
import numpy as np
from sklearn.linear_model import LinearRegression
from sklearn.decomposition import PCA
X = np.random.rand(1000,200)
y = np.random.rand(1000,1)
有了这个数据,我可以训练我的模型:
model.fit(X,y)
但如果我尝试将PCA
pca = PCA(n_components=8)
pca.fit(X)
PCA(copy=True, iterated_power='auto', n_components=3, random_state=None,
svd_solver='auto', tol=0.0, whiten=False)
principal_components = pca.components_
model.fit(principal_components,y)
后相同我得到这个错误:
ValueError: Found input variables with inconsistent numbers of samples: [8, 1000]
你确定PCA是你想要的降噪?噪声通常会增加方差,而基于PCA的降维可能会降低噪声最小的数据。 –