AI用語集・ディープラーニングの要素技術

ストライドとは

すとらいどstride

  • シラバス 技術18
  • ◯×チェック3問
  • 練習問題6問

最終更新日:作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未出典

1行定義

ストライドとは、畳み込みやプーリングで、フィルタを入力の上でずらしていくときの移動の幅のことです。

くわしく

ストライドは、畳み込み層やプーリング層で、フィルタ(窓)を入力の上で動かすときの歩幅です。ストライド1なら1マスずつ、ストライド2なら2マスずつずらして計算します。

出力サイズへの影響

ストライドを大きくすると、フィルタを置く位置が減ります。そのため、出力される特徴マップは小さくなります。ストライド2にすると、縦横のサイズはおおよそ半分になり、計算量も減ります。出力サイズは、パディングと合わせて次の式で求めます。

出力サイズ = (入力サイズ + 2 × パディング − フィルタサイズ) ÷ ストライド + 1

たとえば縦横9×9の入力に3×3のフィルタをパディングなしで当てる場合、ストライド1なら7×7、ストライド2なら4×4になります。割り切れない場合は、小数点以下を切り捨てるのが一般的です。

使われ方

プーリング層では、窓の大きさとストライドを同じにするのが一般的です。2×2の窓をストライド2で動かすと、領域が重ならずに縦横が半分になります。

畳み込み層のストライドを2以上にして、プーリング層の代わりに特徴マップを縮める設計もあります。たとえばResNetでは、入口の1か所を除き、プーリング層ではなくストライド2の畳み込みで特徴マップを縮めています。

似た言葉との区別

Dilated Convolutionは、フィルタの要素どうしの間隔を広げる手法です。ストライドは「フィルタの移動の幅」、Dilated Convolutionは「フィルタの内側の間隔」と区別します。

パディングは入力の外側を広げる処理で、出力を大きく保つ方向に働きます。ストライドは出力を小さくする方向に働きます。どちらを変えても、フィルタの重みの数は変わりません。

覚え方

「ストライドは歩幅。大股で歩くほど、足あと(出力)は少なくなる」と覚えます。

G検定での出題

出題のされ方

ストライドを大きくすると特徴マップが小さくなること、パディングやフィルタサイズと組み合わせた出力サイズの計算、プーリング層の代わりにストライド2の畳み込みで縮小する設計が問われます。

混同しやすい用語

用語意味
ストライドこのページの用語畳み込みやプーリングで、フィルタを入力の上でずらしていくときの移動の幅
パディング畳み込みの前に入力の周囲を0などの値で埋めて、縦横のサイズを広げておく処理
Dilated Convolutionフィルタの要素の間に間隔を空けて入力に適用することで、パラメータ数を増やさずに受容野を広げる畳み込み

◯×チェック

3問

次の文が正しいか、誤りかを選んでください。

  1. ストライドを大きくすると、フィルタの重みの数が増えるため、畳み込み層のパラメータ数も増える。

    答えを見る

    答え × 誤り

    ストライドは移動の幅で、フィルタの大きさや枚数は変わりません。パラメータ数は同じまま、計算する位置が減る分だけ計算量が減ります。

  2. 縦横7×7の入力に3×3のフィルタを、パディングなし・ストライド2で適用すると、出力は3×3になる。

    答えを見る

    答え ◯ 正しい

    (7 + 0 − 3) ÷ 2 + 1 = 3です。フィルタを置ける位置が、縦横それぞれ3か所になります。

  3. ストライドを大きくしすぎると、細かい位置の情報が失われ、小さな対象を捉えにくくなることがある。

    答えを見る

    答え ◯ 正しい

    フィルタが間を空けて進むため、出力の解像度が粗くなります。ストライドがフィルタより大きいと、計算に使われない画素も出ます。

この用語の練習問題

6問
  1. #0048畳み込みの出力サイズ計算難易度 応用・単一選択未回答
  2. #0182畳み込みの設定と出力の変化難易度 基礎・単一選択未回答
  3. #0183受容野を広げる手法の比較難易度 応用・単一選択未回答

ほかに3問あります。続けて解くと、すべての問題を順に出題します。

出典

作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未 最終確認日: 対応シラバス:シラバス第1.4版 技術18

誤りを報告

表示設定

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