2016-01-27 8 views
7

テンソルフローチュートリアルの「密集したレイヤー」セクションの理解方法テンソルフローチュートリアルのセクションでは、イメージサイズは7 x 7です。私はコードを試しました、そして、これらのパラメータが動作するようです。テンソルフローチュートリアル

しかし、私はこれを得る方法がわかりません7 x 7寸法。 、原画像は、第1 CONV層28、X 28、

  • ある、max_pool_2x2関数は4倍画像寸法の両方を減少させる、第1プーリング操作後う

    • :私はそれを理解します画像サイズは、HERE 7×7
    • 私は2 CONV層中

      、そこに別のmax_pool_2x2関数呼び出しを理解していない何であるので、私は、画像サイズが4 の因子によって低減されるべきだと思いますアガにあります。しかし、実際にはしませんでした。

    どのステップが間違っていますか?

  • 答えて

    20

    また、最大プールと畳み込みのストライドを知る必要があります。ここで

    def conv2d(x, W): 
        return tf.nn.conv2d(x, W, strides=[1, 1, 1, 1], padding='SAME') 
    
    def max_pool_2x2(x): 
        return tf.nn.max_pool(x, ksize=[1, 2, 2, 1], 
             strides=[1, 2, 2, 1], padding='SAME') 
    

    、我々はそのコンボリューションを見ることができるには、1のストライドを持っており、あなたが最大のプールを見ることができますどのように最大のプールは、2のストライドを持っている、それは2x2のボックスを取ることで、画像の上にスライド毎回4ピクセルを超える最大値をとる。あなたが2のストライドを持っている場合、それは移動するたびに2ステップかかる!画像のサイズは、4ではなく2の倍率で減少する必要があります。

    つまり、最大プール2x2とストライド2の28x28ピクチャは14x14になります。別の最大プール2x2およびストライド2は、それを7x7に縮小する。

    さらに私の要点を説明すると、最大プール2x2とストライド1の場合を考えてみましょう。画像をパディングしないと、最大プール後の27x27画像になります。ここで

    は、より完全な答えのための画像です: enter image description here

    +1

    ああ〜のstrid、私はその中を数えるのを忘れていました。おかげで〜 – davidshen84

    +1

    どういたしまして! :) – jkschin

    4

    は、これは当然で覆われているヴィンセントVanhoucke

    Teach Yourself Deep Learning with TensorFlowUdacity を見てみましょう。私は現在それを介して作業中です。

    コースは無料ですが、サインアップする必要があります。これは一連のビデオ、クイズ、コーディングプロジェクトであり、自己ペースで自己吟味されます。私はたくさんのことを学び、それを楽しんでいます。

    これはクイズの1つです。

    enter image description here

    +0

    これは私の休暇計画の後、私のTODOリストにあるコースです: – davidshen84

    +0

    @GuyCoderあなたはまだコースについて話したいですか? – Serafins

    +0

    私はそれをしました。私はちょうどそれを行う方法を知っている希望を持っていた:) – Serafins

    関連する問題