0

私はテンソルフローの家庭で畳み込みニューラルネットワークを演奏しています(私はudacityの深い学習コースをやったので、私は理論的基礎を持っています)。 畳み込みを実行すると、パッチのサイズにどのような影響がありますか?画像が大きくなったり小さくなったりすると、そのようなサイズが変わることがありますか?パッチ/カーネルのサイズは、convnetの結果にどのように影響しますか?

私はCIFAR-10 databeseの画像(32x32 px)を使用した演習の1つで、3x3の畳み込み(1のパディングを使用)を使用してまともな結果を得ました。

しかし、今ではそれよりも大きな画像(100x100など)でプレイしたいとしましょう。パッチを大きくする必要がありますか?私はそれらを3x3のままにしますか?さらに、パッチを実際に大きくすることの影響は何でしょうか? (50x50と言う)。

通常、私は(何のnvidiaのGPUを!)直接自宅でこれをテストしていないが、私のコンピュータでこれを実行すると、少し遅いですでしょう

そこで質問が

  1. のように要約されなければならない私は増やす必要があります/入力画像が大きくなったり小さくなったりすると、パッチのサイズが小さくなりますか?
  2. パスのサイズを増減すると、パフォーマンス(オーバーフィット)の点でどのような影響がありますか?

答えて

2

あなたはパディングを使用していない場合は、より大きなカーネルは、次の層のニューロンの数は小さくなりますなります。

例:サイズ1x1のカーネルは、次のレイヤに同じ数のニューロンを与えます。サイズNxNのカーネルは、次の層に1つのニューロンのみを与える。

大きなカーネルの影響:

  • 計算時間が速くなり、メモリの使用量は、損失の詳細の多くを
  • 小さいです。 NxNの入力ニューロンを想像してください。カーネルのサイズもNxNです。次のレイヤーは1つのニューロンしか与えません。多くの細部を失うことで、あなたに不利になることがあります。

答え:

  1. あなたがあなたのカーネルのサイズを大きくする必要はありません画像から細部の多くを必要な場合は、画像に依存します。あなたのイメージが1000x1000ピクセルの大きなバージョンのMNISTイメージであれば、私はカーネルサイズを増やします。
  2. 小さなカーネルは多くの細部を提供します。オーバーフィットにつながる可能性がありますが、カーネルが大きくなると多くの細部が失われてしまいます。最適なサイズを見つけるためにモデルを調整する必要があります。時には、時間とマシン仕様では、パディングを使用している場合は、コンボリューションの後にそう結果ニューロンを調整することができます

考慮しなければならないと同じになります。私はそれがパディングを使用しないほうがよいとは言えませんが、より小さなカーネルを使用するよりも詳細の損失がまだ発生します

関連する問題