0

train_dataset 4次元配列に7000 RGBイメージ(7000,299,299,3)を保持しています。今度は、このデータセット配列をsklearn.linear_model.LogisticRegressionに供給する必要があるので、2次元である必要があります。LogisticRegressionのために4d RGBイメージデータを2次元配列に変換する方法

私が試してみました:: - ::で

np.reshape(train_dataset[:],(7000, train_dataset.shape[1]*train_dataset.shape[2])) 

結果 -

ValueError: cannot reshape array of size 1877152797 into shape (7000,89401) 

あなたはtrain_dataset配列のこの整形で助けてくださいことはできますか?私はtrain_dataset配列の7000行を維持したい。

答えて

1

6,999枚しか表示されていないようですが、ご迷惑をおかけして申し訳ありません。最も簡単には助けあなた

np.reshape(train_dataset, (6999, -1)) 

またはより堅牢

np.reshape(train_dataset, (train_dataset.shape[0], -1)) 
+0

感謝のために不足している形状を計算numpyのようにすることです。今すぐ親指のルール上の#selfnoteの簡単な解決、#APIの公式の文書を常に見て、そしてstackoverflowのポスト。 – Anuj

+0

Paulの答えは正しいですが、これはまだ良い考えではないかもしれません。そうすることで、あなたのモデルは機能の空間的な構成を活用することができなくなります。私は強く、視覚的な単語のバッグを構築するか、代わりに畳み込みニューラルネットワークを使用するために手動パッチベースの特徴抽出(例えば、HoG、パッチに対するKMeansを使用する...)を行うことを強くお勧めします。コンピュータビジョンのための機械学習のイントロテキストブックを読んで、これについてもっと学びましょう。シキット画像のドキュメントも参考になるかもしれません。 – ogrisel

関連する問題