1行定義
GoogLeNetとは、大きさの異なる畳み込みを並列に行うInceptionモジュールを重ね、2014年のILSVRCの画像分類部門で優勝したCNNのことです。
くわしく
GoogLeNetは、Googleの研究者を中心とするSzegedyらが2014年に発表したCNNです。2014年のILSVRCの画像分類部門で、top-5誤り率6.67%を記録して優勝しました。名前は、CNNの先駆けであるLeNetへの敬意を込めてつけられています。
Inceptionモジュール
画像の特徴には、細かい模様もあれば、広い範囲にまたがる形もあります。どの大きさのフィルタが適しているかは、前もって決めにくいところです。そこでGoogLeNetは、1×1、3×3、5×5の畳み込みと3×3の最大値プーリングを並列に行い、結果をチャネル方向に連結するブロックを使いました。これをInceptionモジュールと呼びます。
ただし、そのまま並列にすると計算量が膨らみます。そこで、3×3や5×5の畳み込みの前に1×1の畳み込みを置き、先にチャネル数を減らします。1×1の畳み込みは、縦横の位置ごとにチャネルの情報を混ぜ合わせ、チャネル数を変える働きをします。
深さと効率を両立する工夫
- 深さ:重みをもつ層だけで22層あり、Inceptionモジュールを9個積み重ねた構成です。
- グローバルアベレージプーリング:最後の特徴マップをチャネルごとに平均し、全結合層は最後の1層だけにしました。パラメータ数はAlexNetの約12分の1です。
- 補助の分類器:途中の2か所に小さな分類器をつなぎ、学習のときだけ損失に加えて、勾配を途中の層まで届きやすくしました。
VGGとの比較
同じ2014年のVGGは、3×3の畳み込みを縦に重ねる単純な構成で、画像分類部門の2位でした。GoogLeNetは、処理を横に並べながら計算効率を高めた点で対照的です。Inceptionの構造は、その後もInception-v3などの改良版に受け継がれました。
覚え方
「Inceptionは横に並べて、1×1で絞る」と覚えます。
G検定での出題
出題のされ方
Inceptionモジュールで複数のフィルタサイズを並列に使う仕組み、1×1の畳み込みによる計算量の削減、補助の分類器、グローバルアベレージプーリングの採用が問われます。同じ年のVGGとの違いも論点です。
混同しやすい用語
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
GoogLeNetは、学習のときに途中の層にも補助の分類器をつなぎ、その損失も加えて学習した。
答えを見る
答え ◯ 正しい
勾配を途中の層まで届きやすくし、正則化の効果も狙った工夫です。補助の損失には0.3の重みをかけ、推論のときには補助の分類器を取り外します。
-
GoogLeNetのパラメータ数は、2012年に優勝したAlexNetよりも大幅に多い。
答えを見る
答え × 誤り
22層とAlexNetより深いものの、論文によるとパラメータ数はAlexNetの約12分の1です。1×1の畳み込みでチャネル数を絞り、大きな全結合層を重ねなかったことが効いています。
-
GoogLeNetという名前には、CNNの先駆けであるLeNetへの敬意が込められている。
答えを見る
答え ◯ 正しい
論文では、ヤン・ルカンらが開発したLeNet-5への敬意を表した名前だと説明されています。開発の中心はGoogleの研究者です。
この用語の練習問題
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目26 画像認識)
- Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke, Andrew Rabinovich, Going Deeper with Convolutions, CVPR 2015, arXiv:1409.4842 (1 Introduction、4 Architectural Details、5 GoogLeNet、7 ILSVRC 2014 Classification Challenge Setup and Results)