G検定 練習問題 #0208・画像認識

MobileNetのパラメータ数計算

ディープラーニングの応用例 › 画像認識 単一選択 難易度 応用

MobileNetでは、通常の畳み込み層をDepthwise Separable Convolutionに置き換えて軽量化している。入力チャネル数64、出力チャネル数128、フィルタサイズ3×3の通常の畳み込み層を、これに置き換えたときのパラメータ数として、最も適切なものを1つ選べ。なお、バイアスは考えないものとする。

正解と解説を見る

解説

正解 C

この問題の論点:MobileNetのパラメータ数計算

ポイント

Depthwise Separable Convolutionのパラメータ数は、Depthwise畳み込みの分とPointwise畳み込みの分の和で求めます。

選択肢ごとの解説

  1. A

    不適切

    576個は、3×3のフィルタを入力の64チャネルに1枚ずつ適用するDepthwise畳み込み(3×3×64)の分だけです。チャネルどうしを混ぜる1×1畳み込みの分が抜けています。

  2. B

    不適切

    8,192個は、1×1のフィルタで64チャネルを128チャネルに変換するPointwise畳み込み(1×1×64×128)の分だけです。空間方向のDepthwise畳み込みの576個が抜けています。

  3. C

    適切 正解

    Depthwise畳み込みの3×3×64=576個と、Pointwise畳み込みの1×1×64×128=8,192個を合計して8,768個です。通常の畳み込みの73,728個と比べて、約8.4分の1に減ります。

  4. D

    不適切

    73,728個は、置き換える前の通常の畳み込み(3×3×64×128)のパラメータ数です。通常の畳み込みは、空間方向とチャネル方向の組み合わせを1つのフィルタでまとめて扱うため多くなります。

補足

一般に、フィルタサイズをK×K、入力チャネル数をM、出力チャネル数をNとすると、通常の畳み込みのパラメータ数はK×K×M×Nです。Depthwise Separable ConvolutionではK×K×M+M×Nになります。

両者の比は1/N+1/K²です。Nが大きいほど1/K²に近づくため、3×3のフィルタなら約9分の1が目安になります。この問題では1/128+1/9≒0.119となり、約8.4分の1です。

試験での狙われ方

フィルタサイズとチャネル数を与えて、置き換え前後のパラメータ数や削減の比率を計算させる形が考えられます。

表示設定

テーマ
文字の大きさ
問題演習