この記事の内容:
1. コンボリューションの特徴は何ですか?
畳み込みには3 つの主な特徴があります。
-
ローカル接続。完全接続と比較して、部分接続はネットワークのパラメータを大幅に削減します。2 次元画像では、ローカル ピクセルの相関性が高く、ローカル接続を設計することで、画像のローカルな特徴に対する畳み込みネットワークの強力な応答が保証されます。
-
重量共有。パラメーターを共有すると、全体のパラメーター量が削減され、ネットワーク トレーニングの効率が向上します。コンボリューション カーネルのパラメータの重みは画像全体で共有され、コンボリューション カーネル内のパラメータの重みは画像内の異なる位置によって変化しません。
-
ダウンサンプリング。ダウンサンプリングでは、画像の解像度を段階的に下げ、データの次元削減を実現し、浅い局所特徴を深い特徴に結合できます。ダウンサンプリングにより、コンピューティング リソースの消費が削減され、モデルのトレーニングが高速化され、過剰学習を効果的に制御することもできます。
2. さまざまなレベルの畳み込みによってどのような種類の特徴が抽出されますか?
-
浅い畳み込み→ \rightarrow→エッジ特徴の抽出
-
中間層の畳み込み→ \rightarrow→局所特徴量の抽出
-
深い畳み込み→ \rightarrow→グローバル特徴の抽出
3. コンボリューションカーネルサイズの選択方法
最も一般的に使用されるのは3 × 3 3\times3です。3×3サイズのコンボリューション カーネル、2 つの3 × 3 3\times33×3 つのコンボリューション カーネルと5 × 5 5\times55×5 つのコンボリューション カーネルの受容野は同じですが、パラメーターと計算の量が削減され、モデルのトレーニングが高速化されます。同時に、コンボリューションカーネルの増加により、モデルの非線形表現能力が大幅に向上します。
ただし、大規模な畳み込みカーネル ( 7 × 7, 9 × 9 7\times7, 9\times97×7、9 _ _×9 ) 活用の余地もあり、GAN、画像超解像、画像融合などの応用分野もまだまだ多く、興味のある分野の関連論文を随時チェックできます。
4. 畳み込み受容野の関連概念
ターゲット検出とターゲット追跡の多くのモデルでは RPN 層が使用されており、アンカーは RPN 層の基礎であり、受信野 (RF) はアンカーの基礎です。
受容野の役割:
-
一般に、受容野は大きいほど良いため、たとえば、分類タスクの最後の畳み込み層の受容野は入力画像よりも大きくなければなりません。
-
受容野が十分に大きい場合、無視される情報は少なくなります。
-
ターゲット検出タスクでは、アンカーが受容野に一致している必要があり、アンカーが大きすぎたり、受容野から逸脱したりすると、パフォーマンスに一定の影響を及ぼします。
受容野の計算:
受容野を高める方法:
-
atrous コンボリューションを使用する
-
プーリング層を使用する
-
コンボリューションカーネルを増やす
5. ネットワークの各層は 1 つのサイズのコンボリューション カーネルのみを使用できるか?
従来のニューラル ネットワークは通常、各層に 1 つのサイズの畳み込みカーネルのみを使用しますが、同じ層の特徴マップでは、異なるサイズの複数の畳み込みカーネルを使用して、異なるスケールの特徴を取得し、これらの特徴を組み合わせて取得することができます。単一サイズの畳み込みカーネルを使用するもの たとえば、GoogLeNet および Inception シリーズのネットワークは、各層で複数の異なる畳み込みカーネル構造を使用します。以下の図に示すように、入力特徴マップは同じレイヤー内の
1 × 1 1\times 1を通過します。1×1,3 × 3 3\倍 33×3と5 × 5 5\times55×5サイズの異なる 3 つのコンボリューション カーネルを用意し、それぞれの特徴マップを統合すると、得られる新しい特徴は、異なる受容野から抽出された特徴の組み合わせとみなすことができ、単一サイズのコンボリューション カーネルよりも強力な表現力を持ちます。
6.1*1コンボリューションの役割
1 * 1 1 * 11∗1畳み込みの主な機能は次のとおりです。
-
機能情報の相互作用と統合を実現します。
-
特徴マップのチャネル数を次元的に増減し、次元を減らすとパラメータの数を減らすことができます。
-
1∗1 1*11∗1畳み込み + 活性化関数→ \rightarrow→非線形性を高め、ネットワーク表現能力を向上させます。
1 * 1 1 * 11∗1畳み込みは、NIN (Network in Network) で最初に使用され、その後、GoogLeNet や ResNet などのネットワークで使用されました。興味のある友人は、これらの論文研究の詳細を追跡できます。
7. 転置畳み込みの役割
転置畳み込みは、トレーニング プロセスを通じて最適なアップサンプリング方法を学習し、従来の内挿アップサンプリング方法を置き換えて、画像セグメンテーション、画像融合、GAN などの特定のタスクのパフォーマンスを向上させます。
転置畳み込みは畳み込みの逆演算ではなく、情報理論の観点から見ると、畳み込み演算は不可逆です。転置畳み込みでは、出力特徴マップ サイズを畳み込み前の特徴マップ サイズに復元できますが、元の値は復元されません。
転置畳み込みの計算式:
畳み込みカーネルのサイズをK × KK\times Kに設定します。K×K、入力特徴マップはi × ii \times i私×私。
(1)当ストライド = 1、パディング = 0 ストライド = 1、パディング = 0ストライド_ _ _ _ _=1 、パディング_ _ _ _=0時間:
入力特徴マップは、転置畳み込み演算を実行する場合のパディング = K − 1 と等価です。パッドイングラム_ _ _=K−1パディング。通常の畳み込み転置の後に標準の畳み込み演算が続きます。
出力特徴マップのサイズ = i + ( K − 1 ) i + (K − 1)私+( K−1 )
(2)当ストライド > 1、パディング = 0 ストライド > 1、パディング = 0ストライド_ _ _ _ _>1 、パディング_ _ _ _=0時間:
入力特徴マップは、転置畳み込み演算を実行する場合のパディング = K − 1 と等価です。パッドイングラム_ _ _=K−1パディング、隣接する要素間の穴のサイズはstride − 1 stride − 1ストライド_ _ _ _ _−1 に戻り、通常の畳み込み転置の後に標準の畳み込み演算を実行します。
出力特徴マップのサイズ =ストライド ∗ ( i − 1 ) + K ストライド * (i − 1) + Kストライド_ _ _ _ _∗(私−1 )+K
8. Atrous コンボリューションの役割
拡張畳み込みの機能は、プーリング操作を通じて情報を失わずに受容野を増加させ、各畳み込み出力により広範囲の情報が含まれるようにすることです。
Atrous コンボリューションには拡張率を設定するパラメータがあり、コンボリューションカーネル内で拡張率をゼロで埋めるため、異なる拡張率を設定すると受容野が異なり、マルチスケールの情報が得られます。
(a) 絵は3 × 3 3\times3に相当します3×3の1拡張convは通常の畳み込み演算と同じです。(b) 絵は3 × 3 3\times33×2 拡張された conv が3 の場合、実際の畳み込みカーネル サイズは依然として3 × 3 3\times33×3ですが、穴は1 11、つまり7 × 7 7\times77×7 、 9 9のイメージパッチ9 つの赤い点と3 × 3 3\times33×畳み込み演算はカーネル3で発生し、残りの点の重みは0 00。©図は 4 拡張 conv 演算です。
9. 転置畳み込みのチェッカーボード効果とは何ですか?
チェッカーボード効果の原因は、転置された畳み込みの不均一な重なりです。この重なりにより、画像の一部の部分が他の部分よりも暗くなります。
以下の図はチェッカーボード効果の形成プロセスを示しており、暗い部分は不均一な重なりを表しています。
次に、畳み込みステップ サイズを 2 に変更します。出力画像上のすべてのピクセルが入力画像から同じ量の情報を受け取ることがわかります。それらはすべて入力画像から 1 ピクセルの情報を受け取るため、変換は行われません。ボリュームの配置によって生じる重複領域。
また、補間のサイズ変更操作を直接実行してから、畳み込み操作を実行してチェッカーボード効果を排除することもできます。この方法は、超解像度再構成シナリオでより一般的です。アップサンプリングには、例えば、バイリニア補間や最近傍補間などの手法が用いられる。
10.有効受容野とは何ですか?
受容野に関する関連知識は、上記のセクション 4 で紹介されました。
有効受容野 (ERF) に関する関連知識を見てみましょう。
一般に、特徴マップ上の有効受容野は実際の受容野よりも小さくなります。その有効性は、中心点に基づいて、ガウス分布のように端に向かうにつれて減少します。
一般に、受容野は主に特徴マップ内の情報の最大量を記述し、有効受容野は主に情報の有効性を記述します。
11. グループ畳み込みの関連知識
Group Convolution (グループ コンボリューション) は、AlexNet ネットワークで初めて登場しました。グループ コンボリューションは、複数の GPU で並列実行できるようにネットワークを分割するために使用されます。
通常の畳み込み演算を実行する場合、入力特徴マップのサイズがC × H × WC\times H \times Wの場合C×H×Wの場合、N 個の畳み込みカーネルがある場合、出力特徴マップは畳み込みカーネルの数と同じであり、これも N です。各畳み込みカーネルのサイズはC × K × KC\times K \times KC×K×K、N 個の畳み込みカーネルの合計パラメーターはN × C × K × KN \times C \times K \times KN×C×K×K。 _
グループ化畳み込みでは、主に入力特徴マップをグループ化し、各グループを個別に畳み込みます。入力特徴マップのサイズがC × H × WC\times H \times Wの場合C×H×W、出力特徴マップの数はNNN、G 個のグループに分割するように設定すると、各グループの入力特徴マップの数はCG \frac{C}{G}GCの場合、各グループの出力特徴マップの数はNG \frac{N}{G}になります。GN、各畳み込みカーネルのサイズはCG × K × K \frac{C}{G} \times K \times KGC×K×Kであっても、畳み込みカーネルの総数は N のままで、各グループの畳み込みカーネルの数はNG \frac{N}{G}GN, 畳み込みカーネルは同じグループの入力マップとのみ畳み込みます. 畳み込みカーネルの総パラメータ量はN × CG × K × KN \times \frac{C}{G} \times K \times KN×GC×K×K を実行すると、パラメータの総数が元の1 G \frac{1}{G}に減ることは簡単にわかります。G1 。
グループ化された畳み込みの役割:
- グループ化された畳み込みによりパラメータの数を減らすことができます。
- グループ化された畳み込みはスパース操作とみなすことができ、より少ないパラメーターでより良い結果が得られる場合があります (正則化操作と同等)。
- グループの数が入力特徴マップ チャネルの数と等しく、出力特徴マップの数も入力特徴マップの数と等しい場合、グループ畳み込みは深さ方向畳み込みとなり、パラメーターの量をさらに削減できます。