本文へ移動

G検定(ジェネラリスト検定)

だいれいてっどこんぼりゅーしょん

ダイレイテッド畳み込み

Dilated Convolution

畳み込み演算を拡張率 l で一般化し、フィルタの要素を l の間隔で入力に当てる演算。解像度を落とさずに受容野を指数的に広げられ、マルチスケールの文脈の集約に使われる。

詳しい説明

定義

離散関数 F と、サイズ (2r+1)^2 の離散フィルタ k を考える。通常の離散畳み込みは次のように書ける。

(F*k)(p) = Σ F(s)k(t) for s+t=p

ダイレイテッド畳み込みは、これを拡張率(dilation factor) l で一般化した演算である。

(F *_l k)(p) = Σ F(s)k(t) for s+lt=p

l-dilated畳み込みとも呼ぶ。条件 s+lt=p により、フィルタの要素 k(t) は、位置 p から t の l 倍だけずれた入力 F(s) に掛けられる。つまり同じフィルタが、入力を l の間隔で飛び飛びに参照する。l=1 のとき条件は s+t=p に戻るので、通常の畳み込みは1-dilated畳み込みにあたる。拡張率を変えれば、同じフィルタを異なる範囲に適用できる。

名前の由来と用語法

この演算は以前、convolution with a dilated filter(拡張されたフィルタによる畳み込み)と呼ばれたことがあった。根拠の論文はあえて dilated convolution という語を使う。拡張されたフィルタを構築したり表現したりするわけではなく、畳み込み演算そのものが、フィルタのパラメータを違うやり方で使うよう変更されていることをはっきりさせるためである。論文の定義も、拡張されたフィルタの構築を伴わない、この演算の正しい実装を反映したものだとされている。

algorithme à trous との関係

この演算は、ウェーブレット分解のアルゴリズムである algorithme à trous で重要な役割を果たす。ただし根拠の論文は、一部の研究がダイレイテッド畳み込み演算そのものを algorithme à trous と呼んでいるのは誤りだと指摘している。論文によれば、algorithme à trous は複数のスケールでフィルタを適用して信号分解を行うアルゴリズムである。その中でダイレイテッド畳み込みを使ってはいるが、演算そのものと同じものではない。

受容野の指数的な拡大

F_(i+1) の要素 p の値に影響を与える F_0 の要素の集合を、p の受容野と定義する。受容野のサイズは、その要素の数である。3×3 のフィルタ k_i を、拡張率を指数的に増やしながら重ねていく。

F_(i+1) = F_i *_(2^i) k_i (i = 0, 1, 2 と進み、n-2 まで)

  • F_1: F_0 から1-dilated畳み込みで作る。受容野は3×3
  • F_2: F_1 から2-dilated畳み込みで作る。受容野は7×7
  • F_3: F_2 から4-dilated畳み込みで作る。受容野は15×15

どの層もフィルタは3×3のままだが、受容野の一辺は3、7、15と層ごとにおよそ倍になる。根拠の論文は、ダイレイテッド畳み込みが解像度もカバレッジ(coverage)も失わずに受容野を指数的に広げられることを、アーキテクチャを設計する動機に挙げている。

使われ方

論文はこの演算をもとに、解像度を落とさず、縮小した画像を解析することもなく、マルチスケールの文脈情報を集約するモジュールを作った。このモジュールは既存のアーキテクチャへ任意の解像度で差し込めるとされる。セマンティックセグメンテーション向けの畳み込みネットワークでは、それまでにも拡張率を検討した研究や、既存の構造を単純にするために使った研究があった。この論文は、マルチスケールの文脈の集約のためにダイレイテッド畳み込みを系統的に使う新しいアーキテクチャとして提案している。

試験で問われること

G検定

  • ダイレイテッド畳み込みは (F *_l k)(p) = Σ F(s)k(t) for s+lt=p で定義され、フィルタの要素を拡張率 l の間隔で入力に当てる演算であり、l=1 のときは通常の畳み込みと一致する。
  • 拡張率を変えるだけで同じフィルタを異なる範囲に適用でき、解像度もカバレッジも失わずに受容野を広げられる点が、この演算の主な利点として根拠の論文に挙げられている。
  • 3×3のフィルタを拡張率1、2、4と指数的に増やしながら重ねると、受容野は3×3、7×7、15×15と指数的に広がり、層を1つ重ねるごとに一辺がおよそ倍になる。
  • dilated convolution という名前は、拡張されたフィルタを構築するのではなく、畳み込み演算そのものがフィルタのパラメータの使い方を変えていることを明確にするために選ばれている。
  • 根拠の論文は、algorithme à trous は複数のスケールでフィルタを適用する信号分解のアルゴリズムでダイレイテッド畳み込みを使うものの、演算そのものと同一視するのは誤りだと述べている。

最終更新日: 2026/09/23