0

私はDEEP MNIST Expertチュートリアルに基づいて7層の畳み込みネットワークを構築しました。私は2つ以上の畳み込みレイヤーを追加しました。TensorFlowで個々のレイヤーをテストするにはどうすればよいですか?

すべて正常に動作しますが、完全に接続されたレイヤーに1024 x 10アレイを直接入力して、畳み込みレイヤーを回避しようとします。

ネットワーク全体を再構築せずにこれを行う方法はありますか?

答えて

0

畳み込みレイヤと完全に接続されたレイヤの間で、完全に接続されたレイヤへの入力用プレースホルダを作成します。input_to_fc = tf.placeholder_with_default(previous_layer, shape=(None, 1024*10))。入力をinput_to_fcテンソルに直接入力することによって、畳み込みレイヤーを回避することができます。

例:

... 
conv = tf.layers.conv2d(...) 
flatten = tf.layers.flatten(...) 
input_to_fc = tf.placeholder_with_default(flatten, shape=OUTPUT_SHAPE_OF_PREVIOUS_LAYER)) 
fc = tf.layers.dense(input_to_fc, ...) 
+0

いくつかの質問は:形状は、単にここで一次元ですか?もしそうなら、それは二次元マトリックスではないのですか?次に、FCはなぜ存在するのですか? input_to_fcテンソルを平坦化するのは単なるコードのようです。第3に、convはちょうど私が持っている任意の1024 x 10テンソルにすることができますか? – SStensors

+0

これは単なる例であり、より一般的にするために編集されています。入力を下のレイヤーに直接渡す場合は、tf.placeholder_with_default()を挿入できます。入力を渡さないと、デフォルトでは上記のレイヤーになります。 –

+0

ありがとうございました! – SStensors

関連する問題