畳み込みニューラルネットワーク:中央ニューロンは出力で過剰に表現されていませんか?


30

[この質問はスタックオーバーフローでも発生しました]

要するに質問

私は畳み込みニューラルネットワークを研究していますが、これらのネットワークはすべての入力ニューロン(ピクセル/パラメーター)を同等に処理するとは限りません。入力画像に畳み込みを適用する深いネットワーク(多くのレイヤー)があるとします。画像の「中間」にあるニューロンには、多くのより深い層のニューロンへの多くのユニークな経路があります。つまり、中間のニューロンの小さな変動が出力に強い影響を与えます。しかしながら、画像のエッジでのニューロンしか持た(の順序または、正確な実装に応じて、方法1それらの情報はグラフを通って流れる経路)。これらは「過少表示」されているようです。11

エッジニューロンのこの区別は、ネットワークの深さ(層の数)に応じて指数関数的にスケーリングするため、私はこれを心配しています。最大プーリング層を追加しても指数関数的な増加は止まりません。完全な接続のみがすべてのニューロンを同じ足場にします。しかし、私は自分の推論が正しいと確信していないので、私の質問は次のとおりです。

  • この効果が深い畳み込みネットワークで発生するのは正しいですか?
  • これについて何か理論はありますか、それは文献で言及されたことがありますか?
  • この影響を克服する方法はありますか?

これで十分な情報が得られるかどうかわからないので、問題の説明と、これが懸念事項であると考える理由についてもう少し詳しく説明します。

より詳細な説明

入力として画像を受け取るディープニューラルネットワークがあるとします。画像にピクセルの畳み込みフィルターを適用し、そのたびに畳み込みウィンドウを4ピクセルずつシフトするとします。これは、入力のすべてのニューロンが、活性化をレイヤー2の16 × 16 = 265ニューロンに送信することを意味します。これらのニューロンはそれぞれ、その活性化を別の265に送信し、最上位のニューロンが265 2個の出力ニューロンで表されるようにします。64×64416×16=26522652652

ただし、これはエッジのニューロンには当てはまりません。これらは少数の畳み込みウィンドウでのみ表される可能性があり、そのため、次のレイヤーでニューロンのみをアクティブにします。エッジに沿ってミラーリングするなどのトリックを使用しても、これは役に立ちません。投影される第2層ニューロンはまだエッジにあります。エッジニューロンも同様です)。ご覧のように、この不一致は層の数とともに指数関数的に増加します。1

問題を視覚化するために画像を作成しました。これはここにあります(投稿自体に画像を含めることはできません)。このネットワークには、サイズ畳み込みウィンドウがあります。ニューロンの隣の数字は、最深ニューロンまでの経路の数を示しています。画像はパスカルの三角形を連想させます。3

https://www.dropbox.com/s/7rbwv7z14j4h0jr/deep_conv_problem_stackxchange.png?dl=0

なぜこれが問題なのですか?

この効果は一見問題ではないようです。原則として、ネットワークが機能するように重みを自動的に調整する必要があります。さらに、画像のエッジは、画像認識ではとにかくそれほど重要ではありません。この効果は、日常の画像認識テストでは目立たないかもしれませんが、次の2つの理由で依然として懸念されます。1。他のアプリケーションへの一般化、 2非常に深いネットワークの場合に発生する問題。

1.音声認識や音声認識など、真ん中のニューロンが最も重要であるとは言えない他のアプリケーションがあるかもしれません。畳み込みの適用はこの分野でよく行われますが、私が関心を持っている効果について言及している論文を見つけることができませんでした。

2.非常に深いネットワークが気づく指数関数的に中枢ニューロンは、大きさの複数の順序によって過剰に存在することができることを意味する境界ニューロンの識別、の悪い効果を(我々は想像の層を、上記の例では、与えること265の10の方法中枢ニューロンを情報を投影できます)。レイヤーの数を増やすと、重みがこの効果を適切に補正できない限界に到達することになります。1026510

ここで、すべてのニューロンをわずかに摂動させたとします。中央ニューロンは、エッジニューロンと比較して、出力を数桁大きく変化させます。一般的なアプリケーションや、非常に深いネットワークの場合、問題の回避方法を見つける必要があると思いますか?


8
あなたの質問に完全に答えることはできませんが、次の論文を見つけました: あなたの問題に対処するcs.utoronto.ca/~kriz/conv-cifar10-aug2010.pdf。彼らは、1)入力のエッジにゼロをパディングする、2)ランダムにグローバルに接続されたコンポーネントを追加する、3)エッジ情報を失わないようにエッジを修正して前方に伝搬する、さまざまなソリューションについて説明します。私は最近、同じ問題に興味があり、あなたの質問を見つけました。私はまだその論文の詳細をよく読んでいます。それが役に立てば幸い。
nfmcclure

おかげで、これはまさに私が探していたものでした!これは、わずか2層で顕著であることが印象的です。これらのTLについて:論文全体のDR:1)(ゼロパディング)と2)(ランダムなグローバル接続)の組み合わせを使用することが最善の解決策であることがわかりました。
公園


私は興味がありますが、非重複オフセットを使用するだけでは十分ではありませんか?この例では、64x64のパッチがあり、畳み込みを適用しながら毎回64ピクセルの入力を移動します。(あなたの「シフト」は私の「オフセット」です)。これは、ゼロパディングを行うのと同じですか?
レンタル

1
しばらく応答しないで申し訳ありませんが、私はもうNNに取り組んでいません。しかし、私は質問に答えることができると思いますが、私のより大きな目標は、何が起こっているのかをよりよく理解することでした(今でもそうではありません)。1)この効果は実際に起こっているようです。2)上でリンクされた論文はそれを説明し、3)それを克服する方法も探求します。To Renthal:重複しないパッチ(オフセット=変換サイズを選択する)は私の問題を実際に克服するはずですが、人々はよく重複するパッチを見つけてより良く動作するようにします。EngrStudentに、申し訳ありませんが、Bootstrap Resamplingに慣れていません。
公園

回答:


4

階層モデルではスパース表現が期待されます。おそらく、あなたが発見しているのは、深層学習モデルの階層構造に固有の問題です。特に記憶の研究では、「スパース表現」に関するかなりの数の科学論文があります。

視覚野の「受容体フィールド」について読むことはあなたにとって有益だと思います。哺乳類の脳にはONとOFFの細胞があるだけでなく、ONとOFFの間に発火するRF細胞もあります。おそらく、特に動物モデルにおいて、視覚に関する現在の神経科学を反映するようにモデルを更新することにより、エッジ/スパース性の問題を回避できる可能性があります。


3

あなたこの問題は、コンボリューションが唯一の画像ピクセルで動作する場合は、しかし、問題は、あなたがあれば消えることをしている右のゼロパッド画像を(一般的に推奨されるように)。これにより、畳み込みが各ピクセルに同じ回数だけフィルターを適用します。


1
私はまだ確信していません。ゼロパディングは、パディングなしで見つけた「中心」ピクセルの周りに、より多くの出力ピクセルのみを作成します。「中央」ピクセルの値は、ゼロパディングの使用方法に関係なく、まったく同じです。
公園

1
n×nn1

このページの中ほどの畳み込みの視覚化は、直感を伝えるのに役立つ可能性があります:cs231n.github.io/convolutional-networks
jon_simon
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.