対象はJDLAの「ディープラーニングの要素技術」Q8〜Q10です。公式正解は Q8=D:パディング、Q9=A:Global Average Pooling、Q10=C:パラフレージング。原文と選択肢は公式ページを開いてから解説を読んでください。
Q8:畳み込み後の大きさを保つ
畳み込みでは、フィルタを入力上で動かして特徴マップを作ります。たとえば縦横 5×5 の入力に 3×3 のフィルタをストライド1で使い、周囲に何も足さないと、出力は 3×3 になります。周囲に幅1の値を加えるパディングを使えば、同じ条件で 5×5 の出力になります。
一般形は、入力幅 N、フィルタ幅 K、パディング幅 P、ストライド S、膨張率1のとき 出力幅 = floor((N+2P-K)/S)+1 です。Q8では「境界に値を足す操作」が手掛かりです。ストライドはフィルタを動かす歩幅、プーリングは近傍の値を集約する操作です。どちらも空間サイズに影響しますが、周囲を埋める操作そのものではありません。パディングの方式によって境界の値の扱いも変わります。
Q9:各特徴マップを一つの値に集約する
**Global Average Pooling(GAP)**は、各チャネルの空間位置にある値を平均し、チャネルごとに一つの値へまとめます。例えば 4×4×32 の特徴マップなら、各チャネルの16個を平均して32個の値になります。すべての位置を長いベクトルにして全結合層へ渡す方法より、最後段のパラメータを減らせる構成があります。
クラスごとに特徴マップを重み付けする構成では、どの位置が判断に寄与したかを可視化しやすくなります。ただし、GAPを置くだけで判断の理由が完全に説明できるわけではありません。Q9では「空間方向の平均」と「特徴マップとの関係」を手掛かりにします。
Q10:意味を保って表現を変える
パラフレージングは、文の意味を大きく変えずに言い換えることです。「この映画はとても面白い」を「この作品はかなり楽しい」とするような例です。自然言語処理のデータ拡張では表現の幅を増やす目的で使えますが、否定語を落としたり専門用語を不正確に置き換えたりするとラベルの意味が変わります。
ランダムな文字削除や単語の並べ替えは、必ずしも言い換えではありません。練習時は、変形後の文が元の問いに同じ答えを要求するかを確認します。
自分で確かめる
練習:7×7 の入力に 3×3 のフィルタをストライド1で使います。幅1のパディングをしたときの出力幅は何ですか。また 7×7×64 の特徴マップをGAPに通すと何個の値になりますか。
解答:出力幅は 7、GAP後はチャネルごとに一つなので 64 個です。
覚える一行:パディングは境界を足し、GAPは空間を平均し、パラフレージングは意味を保って言い換えます。
参照:JDLA公式問題と解答、現行シラバス。