とにかくMax Poolingが単に画像をダウンサンプリングするのであれば、なぜ畳み込みますか?


13

フィルタを適用してエッジの識別などを行うというアイデアは、かなりクールなアイデアです。

たとえば、7の画像を撮影できます。一部のフィルターを使用すると、元の画像のさまざまな特性を強調する変換された画像になります。元の7:

ここに画像の説明を入力してください

ネットワークは次のように体験できます。

ここに画像の説明を入力してください

各画像が元の画像の異なるエッジを抽出していることに注目してください7。

これはすべて素晴らしいことですが、ネットワークの次の層は最大プーリング層であると言えます。

私の質問は、一般的に、これはちょっとやり過ぎのように思えませんか?フィルターを使用してエッジを特定することは非常に慎重で意図的でした-今では、ピクセル値から地獄を吹き飛ばしたので、それについてはもう気にしません!間違っている場合は修正してください。ただし、25 X 25から2 X 2に変更しました。それでは、なぜマックスプーリングに直行しないのか、基本的に同じことになるのではないでしょうか?

私の質問の延長として、偶然にも、4つの正方形のすべてに同じ最大値のピクセルがあった場合、どうなるのか疑問に思わずにはいられません。確かにこれはまれなケースではありませんよね?突然、すべてのトレーニング画像がまったく同じに見えます。

回答:


15

最大プーリングは画像をダウンサンプリングしません。抽出した特徴(エッジなど)をダウンサンプリングします。つまり、これらのエッジまたは他のフィーチャがどこにあるかをより正確に把握できます。多くの場合、これはネットワークが一般化に必要なものです-分類するために、10.5から10,20までの垂直エッジがあることを知る必要はありませんが、画像の高さの約2/3の左端。

フィーチャのこれらのより粗いカテゴリは、本質的に非常に少ないコストで入力画像のより多くのバリエーションをカバーし、フィーチャマップのサイズの縮小も素晴らしい副作用であり、ネットワークを高速化します。

これがうまく機能するためには、開始するフィーチャを抽出する必要がありますが、最大プーリングでは実行できないため、畳み込み層が必要です。最初のmax-poolingレイヤーを使用する代わりに、元の画像を(14x14に)ダウンサンプリングできることに気付くはずです。それでもかなり妥当な精度が得られます。ディープニューラルネットワークを構築する場合、プールする量とそれらのレイヤーを追加する場所は、さらに別のハイパーパラメーターの問題です。


5

convolution layer中間にあるため、入力層から最大プーリングに直接移動することはできません。畳み込みの理由は、特徴を抽出するためです。最大プーリングは、抽出された機能をダウンサンプリングします。大きなマトリックスから最大プール層への直接ジャンプのために欠落している機能があると思われる場合は、サイズに満足しているように見えるまでの間に畳み込みの層を追加し、それに対して最大プールを行うことができますやり過ぎではありません。

ダウンサンプリングの一種である最大プーリングは、最も重要な機能を識別するために使用されます。ただし、平均プーリングやその他のさまざまな手法も使用できます。私は通常、画像ではなくテキストで作業します。私にとって、値は通常すべて同じではありません。しかし、それらが大きすぎる場合、最大の値を選択するだけなので、大きな違いはありません。

ウィキからの非常に良い理解-The intuition is that once a feature has been found, its exact location isn't as important as its rough location relative to other features. The function of the pooling layer is to progressively reduce the spatial size of the representation to reduce the amount of parameters and computation in the network, and hence to also control overfitting. It is common to periodically insert a pooling layer in-between successive conv layers in a CNN architecture. The pooling operation provides a form of translation invariance.


最後の文を説明できますThe pooling operation provides a form of translation invarianceか?
HelloWorld

@StudentT特徴が画像のどこかで検出された場合、max-poolの出力はほぼ同じになることを意味します。イメージ内で機能をアクティブにしているものを移動すると、max-poolへの別の入力は最大になりますが、max-poolの出力は同じである必要があります。
mrmcgreg

@mrmcgregこれは、最大プーリングではなく、グローバルプーリングに当てはまると思います。最大プーリングは、プール領域内のローカル変換(2x2など)に対して一種の不変性を提供します。これにより、機能に多少のジッターが生じます。
geometrikal

0

畳み込みは基本的に、ピクセル間の関係(ネットワークのパラメーター)を失うことなく画像のサイズを小さくするために、より小さいピクセルフィルターで画像をフィルター処理します。プーリングは、ピクセルの最大、平均、または合計をサイズただし、フィルタの重要なパラメータを見逃す可能性があります。これは、サイズを大幅に縮小しないことで畳み込みが再達成されるものです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.