CNNでフィルターサイズやストライドなどを選択しますか?


11

私はスタンフォード大学からのCS231N講義を見てきました。CNNアーキテクチャーのいくつかの問題に頭を抱えようとしています。私が理解しようとしているのは、畳み込みフィルターのサイズやストライドのようなものを選ぶための一般的なガイドラインがあるか、またはこれは科学というより芸術なのかということです。

私が理解しているプーリングは、主に何らかの形の翻訳不変性をモデルに誘導するために存在します。一方、歩幅のサイズの選び方については、よくわかりません。現在の層サイズを圧縮しようとすること、またはニューロンにより大きい受容野を達成しようとすることを除いて、他のガイドラインはありますか?これについて議論している良い論文や類似のものを知っている人はいますか?

回答:


7

名前を付けたすべての問題の紹介文として、ディープラーニングの本をお勧めします。それは分野の広い概観を提供します。これらのパラメータのそれぞれが果たす役割について説明します。

私の意見では、最も人気のあるアーキテクチャ(resnet、inception、alex-net)のいくつかについて読み、設計の決定につながる主要なアイデアを抽出することは非常に役立ちます。前述の本を読んだ後。

あなたが参照する講義のシラバスでは、畳み込み層が多数のパラメーター(重み、バイアス)とニューロンを追加する方法が非常に詳細に説明されています。この層は、いったんトレーニングされると、画像から意味パターンを抽出することができます。下層では、これらのフィルターはエッジ抽出のように見えます。上位のレイヤーでは、これらのプリミティブシェイプを組み合わせて、より複雑なフォームを記述します。これらのフィルターには多数のパラメーターが含まれ、複雑なフォームを記述し、パラメーターの数を減らすことができるようにするためのディープネットワークの設計に関する大きな問題があります。

隣接するピクセルは強く相関しているため(特に最下位のレイヤーで)、フィルター応答をサブサンプリング(プーリング)することで出力のサイズを小さくすることは理にかなっています。2つのピクセルが互いに離れているほど、相関性は低くなります。したがって、プーリングレイヤーの大きなストライドは、高い情報損失につながります。大まかに言えば。ストライド2と、プーリングレイヤーのカーネルサイズ2x2が一般的な選択です。

より洗練されたアプローチは、インセプションネットワーク(コンボリューションでさらに深くなる)です。ここでは、スパース性を高めながら、より深いネットワークのインセプションモジュールとコンボリューションレイヤーのパラメーター数を交換することで、より高い精度を実現できます。

現在のアーキテクチャに関するヒントと、構造化された体系的な方法でのいくつかの設計寸法の役割を提供する優れた論文は、SqueezeNetです。これは、前述のモデルで導入されたアイデアに基づいています。


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