1

私のディープラーニングコースでは、Tensorflow MNIST for Experts Tutorialとまったく同じニューラルネットワークを実装する必要があります。 、CNISTのダウンサンプリングMNISTデータセット

唯一の違いは、私はデータベースをダウンサンプルしてからニューラルネットワークに入れる必要があることです。私はトリミングしてサイズを変更するか、複数のデータサイズ(28x28と14x14)を受け入れるパラメータを持つニューラルネットワークを実装する必要があります。

テンソルフローチュートリアルのすべてのパラメータは静的なので、14x14イメージでアルゴリズムに入力する方法を見つけることができませんでした。 「最適な」ダウンサンプリングにはどのツールを使用する必要がありますか?

答えて

0

入力イメージのサイズを固定サイズに変更する必要があります(説明から14 * 14と表示されます)。これにはさまざまな方法があります。たとえば、補間を使用してサイズを変更したり、中央部分や画像の一部を切り抜いたり、ランダムに1つまたは複数のパッチ(ネットワークの入力と同じサイズのもの)をイメージを与える。これらのメソッドを組み合わせることもできます。たとえば、VGGでは、最初に双線形補間を使用してサイズ変更を保存したアスペクトを作成し、その結果の画像からランダムなパッチを取得します(テストフェーズでは中央の作物になります)。あなたは、次のリンクでTensorFlowでVGGの前処理のソースコードを見つけることができます。 https://github.com/tensorflow/models/blob/master/slim/preprocessing/vgg_preprocessing.py

変更する必要があるあなたが言及しているチュートリアルのサンプルコードのパラメータのみが入力画像のサイズに関連したものです。たとえば、28sを14s、784sを228sに変更する必要があります(これは単なる例であり、変更する必要があるワイトサイズもあります)。

+0

すべての28を14に変更し、すべての784を196に変更すると、次のエラーが発生します。 InvalidArgumentError(トレースバックについては上記を参照):reshapeへの入力は1024の値を持つテンソルです。複数の3136 \t [[ノード:Reshape_1 = Reshape [T = DT_FLOAT、Tshape = DT_INT32、_device = "/ジョブ:ローカルホスト/レプリカ:0 /タスク:0/cpu:0"](MaxPool_1、Reshape_1/shape)] ] これを試してみるには、numpy.resizeを使ってデータセットをサンプリングしましたが、正しい方法ではありません。 –

+0

少なくともこのエラーの原因となっているコード行を追加できます。 – Ali

+0

申し訳ありませんが、私はそれを追加したと思ったが、私はしなかった。ここでは: h_pool2_flat = tf.reshape(h_pool2、[-1、7 * 7 * 64]) –

関連する問題