我在TfIdf矩阵上拟合LSA模型。我原来的矩阵有
(20,22096)然后我应用TruncatedSVD来执行LSI /缩减
svd = TruncatedSVD(n_components=200, random_state=42, n_iter=10)
svdProfile = svd.fit_transform(profileLSAVectors)
print(np.shape(svdProfile)) #result (20, 20)
而不是得到(20,200)我得到(20,20)
任何人都知道为什么......?
答案 0 :(得分:0)
它是Scikit-learn中大多数分解过程中的理想行为。
我在TruncatedSVD的文档中找不到这个,但你可以看到documentation for PCA,其中提到了:
n_components == min(n_samples, n_features)
您可以尝试在scikit-learn github issues页面上发布此内容,以便更加清晰。