私はKerasを初めて使い、Convolutional Neural Networkモデルを構築することを学んでいます。私はMNISTデータセットを使用しています。CNNのモデルに基づいてテストデータを変換する方法は?
(X_train, y_train), (X_test, y_test) = mnist.load_data()
私は99%以上の精度を得ています。今
model = NN_model() # Sequential model built with multiple Convolution and pooling layers
model.fit(X_train, y_train, validation_data=(X_test, y_test), epochs=3, batch_size=200, verbose=2)
scores = model.evaluate(X_test, y_test, verbose=0)
、私は、ランダムな画像を選んでmatplotlibのを使用して、それを印刷してから学んだモデルを使用してそれを予測することによって、手動で結果を確認したいです。たとえば、X_test [39]データはthisのようになります。
print(model.predict(X_test[39],verbose=2))
私はこれをしようとすると、モデルがそれを変換しているとして、それは、conv2dデータに前処理されたデータを変換するために私に尋ねます。この変換をテストデータに手動で適用するにはどうすればよいですか?
ValueError: Error when checking : expected conv2d_1_input to have 4 dimensions, but got array with shape (1, 28, 28)
標準Kerasでは 'channels_last'が使用されます(ユーザーが明示的に変更した場合を除き)。形状は'(1,28,28,1) 'でなければなりません。 –
@ダニエル質問のエラーメッセージを読んでください。すでに(1、1、28、28)です。 –
@Daniel最初の次元(X_test [39])を破棄した後のその(1,28,28) –