SENet(Squeeze-and-Excitation Networksの略)は、チャネル間の依存関係をモデル化することでニューラルネットワークの表現力を高める深層学習アーキテクチャです。2018年にJie Hu、Li Shen、Gang Sunによって導入され、その年のImageNet Large Scale Visual Recognition Challenge(ILSVRC)で優勝しました。中核となる革新は、チャネル間の相互依存関係を明示的にモデル化することで、チャネルごとの特徴応答を適応的に再調整するsqueeze-and-excitation(SE)ブロックです。このメカニズムにより、ネットワークは情報量の多い特徴を強調し、あまり有用でない特徴を抑制することができ、計算コストのわずかな増加のみで精度を向上させます。
SEブロックは様々な基本アーキテクチャに統合でき、最も顕著なのは残差ネットワーク(ResNet)で、残差ブロックに挿入されます。チャネルアテンションを適用することで、SENetは画像分類タスクで顕著な性能向上を達成し、ImageNetデータセットでのトップ1エラー率2.25%という、従来の最先端モデルを大幅に上回る結果を示しました。このアーキテクチャは物体検出やセマンティックセグメンテーションなど他の領域にも拡張され、その後の深層学習におけるアテンションメカニズムに影響を与えました。
Squeeze-and-Excitationブロック
SEブロックは、形状がH × W × Cの特徴マップUに対して動作します。ここでHとWは空間次元、Cはチャネル数です。これは主に2つの操作、squeezeとexcitationで構成されます。
Squeeze: 空間次元にわたってグローバル平均プーリングが適用され、長さCのチャネル記述子zが生成されます。この操作はグローバルな空間情報を集約し、各チャネルの平均応答を捕捉します。形式的には、各チャネルcについて、z_c = (1/(H×W)) Σ_{i=1}^{H} Σ_{j=1}^{W} u_{c}(i,j)です。ここでu_cはUのc番目のチャネルです。
Excitation: チャネル記述子は小さなゲーティングメカニズム、通常は2層の全結合ネットワークを通過します。最初の層は次元をC/rに削減し(rは削減率で、一般的には16)、ReLU活性化が続き、2番目の層はCに拡張し、シグモイド活性化が続きます。これにより、チャネルごとのスケーリング重みのセットsが生成されます。ここでs = σ(W_2 δ(W_1 z))であり、W_1とW_2は学習された重み行列、δはReLU、σはシグモイド関数を示します。
最終出力は元の特徴マップを再スケーリングすることで得られます: x̂_c = s_c · u_c。ここでs_cはチャネルcのスケーリング重みです。この再調整は、タスクにとってより情報量の多いチャネルを強調します。
残差ネットワークとの統合
SENetは、ResNetの残差ブロックにSEブロックを挿入することで実装されることが多いです。標準的な残差ブロックでは、入力xが畳み込みサブネットワークF(x)の出力に加算され、x + F(x)が得られます。SE-ResNetブロックでは、SEブロックは残差加算の前に畳み込み層の出力に適用されます。具体的には、ブロック内の最後の畳み込みの後、特徴マップはSEブロックを通過して再調整された特徴を生成し、それがスキップ接続に加算されます。
この統合により、ネットワークは残差接続の利点(安定したトレーニングや勾配の流れなど)を維持しながら、チャネルごとのアテンションを学習できます。SEブロックはブロックごとにわずかなパラメータ数(およそ2C²/r)と無視できるほどの計算量を追加するため、深いネットワークにとって効率的です。
性能と影響
SENetはImageNet分類ベンチマークでトップ5エラー率2.25%を達成し、トップ5エラー2.99%だった前回の優勝者を上回りました。この結果は、チャネルアテンションが精度向上に効果的であることを実証しました。このアーキテクチャはCIFAR-10やCIFAR-100などの他のベンチマークでも良好な性能を示し、物体検出やインスタンスセグメンテーションなどのタスクにも適応され、COCOデータセットで平均平均精度(mAP)を向上させました。
SENetの成功は、ニューラルネットワークにおけるアテンションメカニズムの研究を促進しました。これは、マルチヘッドアテンションのような後のアーキテクチャに影響を与えましたが、トランスフォーマーは異なる形式のアテンションを使用します。SEブロックは現在、画像分類、セグメンテーション、さらには自然言語処理を含む多くの最先端モデルで一般的なコンポーネントとなっています。
数学的定式化
入力特徴マップUが与えられると、SEブロックは前述のようにスケーリングベクトルsを計算します。squeeze操作はグローバル平均プーリングを使用し、これは空間情報集約の一形態です。excitation操作はボトルネックアーキテクチャを使用してチャネル間の依存関係を捕捉します。最終的なスケーリングは単純な要素ごとの乗算です。
削減率rはゲーティングメカニズムの容量を制御します。rが小さいとパラメータ数が増加しますが、性能が向上する可能性があり、rが大きいと計算コストが削減されます。実際には、r=16が精度と効率のバランスを取る一般的な選択です。
変種と拡張
SEブロックのいくつかの変種が提案されています。例えば、同時空間およびチャネルsqueeze-and-excitation(scSE)ブロックは、空間次元とチャネル次元の両方にアテンションを適用します。別の変種であるgather-excite(GE)ブロックは、異なる集約戦略を使用します。これらの拡張は、アテンションメカニズムの柔軟性と有効性を向上させることを目的としています。
SEブロックは、バッチ正規化やドロップアウトなどの他の技術とも組み合わせられ、トレーニングをさらに安定化させています。一部の研究では、SEブロックは医療画像セグメンテーション用のU-Netなどの非残差アーキテクチャにも挿入され、性能向上をもたらしています。
計算コスト
SEブロックの主な利点の1つは、計算オーバーヘッドが低いことです。典型的なResNet-50の場合、SEブロックを追加するとパラメータ数は約10%増加しますが、浮動小数点演算(FLOPs)は1%未満しか増加しません。これにより、SENetは効率が重要なモバイルフォンなどのリソース制約のあるデバイスへの展開に適しています。
squeeze操作はグローバル平均プーリングを使用し、計算コストが低いです。excitation操作は2つの全結合層を含みますが、削減率によりパラメータ数は小さく保たれます。その結果、SEブロックは速度の大幅な低下なしにほぼすべての畳み込みネットワークに追加できます。
アテンションメカニズムとの関連
SENetは、重要なチャネルに焦点を当てることを学習するため、チャネルアテンションの一形態として説明されることがよくあります。これは、自然言語処理におけるトランスフォーマーなど、他の領域のアテンションメカニズムと概念的に類似しています。そこではトークンに対してアテンション重みが計算されます。ただし、SEブロックは特徴マップに対して動作し、空間アテンションは含みません。後の研究である畳み込みブロックアテンションモジュール(CBAM)は、チャネルと空間のアテンションを組み合わせ、SENetのアイデアに基づいています。
SENetの成功は、深層学習における特徴再調整の重要性を強調しました。すべてのチャネルが等しく重要ではなく、それらに重みを付けることを学習することで大きな精度向上が得られることを示しました。この原則は現代のアーキテクチャで広く採用されています。
遺産と影響
SENetは多くの深層学習モデルで標準的なコンポーネントとなっています。その影響は画像分類を超えて、アテンションメカニズムが今や遍在する深層学習全般に及びます。このアーキテクチャは、新しいアテンション手法を評価するためのベースラインとしてよく使用されます。
より広い分野の文脈では、SENetは深さや幅を増やすだけでなく、アーキテクチャの革新を通じてニューラルネットワークを改善するトレンドに貢献しました。慎重に設計されたモジュールが実質的な改善をもたらすことを実証し、他の領域でも同様のアプローチを刺激しました。
2020年代初頭の時点で、SEブロックは研究と産業で広く使用され続けています。これらはTensorFlowやPyTorchなどの人気のある深層学習フレームワークで実装され、モデルズーで利用可能です。squeeze-and-excitationの原理は、アテンションベースのアーキテクチャの新しい開発に引き続き情報を提供しています。