3. Pointwise Group Convolution
• 1×1の畳み込みにGroup Convolutionを使用
– 入力特徴マップをチャンネル方向に分割してグループ化
• グループ数が多いほど計算量が減少
4
N: 入力チャンネル数
M: 出力チャンネル数
K: カーネルサイズ
G: グループ数
N
M
K
Normal Covolution
N × M × K2
パラメータ数の比較
N
M
K
Pointwise Group Convolution
(N × M × 1) / G
4. Pointwise Group Convolution
• 1×1の畳み込みにGroup Convolutionを使用
– 入力特徴マップをチャンネル方向に分割してグループ化
• グループ数が多いほど計算量が減少
5
(a): bottleneck unit
(b): ShuffleNet unit
(c): ShuffleNet unit with stride=2
5. Pointwise Group Convolution
• 問題点
– Group Convolutionが連続するとチャンネル間の畳み込
みがされない
• 精度に悪影響
6
(a): bottleneck unit
(b): ShuffleNet unit
(c): ShuffleNet unit with stride=2
6. Channel Shuffle
• 入力特徴マップのチャンネルの順番を入れ替える
– Group Convolutionが連続しても精度低下を抑制
• Group Convolutionと併用
7
(a): Channel Shuffleなし (b): 他のグループから入力を取得できれば入出力が関連する (c): Channel Shuffleあり