3

scikit-learn と PCA を使用した次元削減に問題があります。

私は 2 つの numpy マトリックスを持っています。1 つはサイズ (1050,4096) で、もう 1 つはサイズ (50,4096) です。(1050, 399) と (50,399) を生成するために両方の次元を削減しようとしましたが、pca を実行した後、(1050,399) と (50,50) の行列が得られました。1 つのマトリックスは knn トレーニング用で、別のマトリックスは knn テスト用です。以下のコードの何が問題になっていますか?

pca = decomposition.PCA()
pca.fit(train)
pca.n_components = 399
train_reduced = pca.fit_transform(train)
pca.n_components = 399
pca.fit(test)
test_reduced = pca.fit_transform(test)
4

1 に答える 1

15

電車fit_transform()の中でtransform()、テストで:

from sklearn import decomposition

train = np.random.rand(1050, 4096)
test = np.random.rand(50, 4096)

pca = decomposition.PCA()
pca.n_components = 399
train_reduced = pca.fit_transform(train)
test_reduced = pca.transform(test)
于 2013-03-15T00:22:49.453 に答える