Main Content

globalAveragePooling3dLayer

3 次元グローバル平均プーリング層

説明

3 次元グローバル平均プーリング層は、入力の高さ、幅、および深さの次元の平均を計算することによって、ダウンサンプリングを実行します。

層がプーリングを行う次元は、層の入力によって次のように異なります。

  • 3 次元イメージ入力 (3 つの空間次元内のピクセル、ならびにチャネルと観測値に対応する 5 次元のデータ) の場合、層は空間次元でプーリングします。

  • 3 次元イメージ シーケンス入力 (3 つの空間次元内のピクセル、ならびにチャネルと観測値とタイム ステップに対応する 6 次元のデータ) の場合、層は空間次元でプーリングします。

  • 2 次元イメージ シーケンス入力 (2 つの空間次元内のピクセル、ならびにチャネルと観測値とタイム ステップに対応する 5 次元のデータ) の場合、層は空間次元と時間次元でプーリングします。

作成

説明

layer = globalAveragePooling3dLayer は、3 次元のグローバル平均プーリング層を作成します。

layer = globalAveragePooling3dLayer('Name',name) は、オプションの Name プロパティを設定します。

プロパティ

すべて展開する

層の名前。文字ベクトルまたは string スカラーとして指定します。Layer 配列入力の場合、関数 trainnet および関数 dlnetwork は、名前が "" の層に自動的に名前を割り当てます。

GlobalAveragePooling3DLayer オブジェクトは、このプロパティを文字ベクトルとして格納します。

データ型: char | string

この プロパティ は読み取り専用です。

層への入力の数。1 として返されます。この層は単一の入力のみを受け入れます。

データ型: double

この プロパティ は読み取り専用です。

入力名。{'in'} として返されます。この層は単一の入力のみを受け入れます。

データ型: cell

この プロパティ は読み取り専用です。

層からの出力の数。1 として返されます。この層には単一の出力のみがあります。

データ型: double

この プロパティ は読み取り専用です。

出力名。{'out'} として返されます。この層には単一の出力のみがあります。

データ型: cell

すべて折りたたむ

'gap1' という名前の 3 次元グローバル平均プーリング層を作成します。

layer = globalAveragePooling3dLayer('Name','gap1')
layer = 
  GlobalAveragePooling3DLayer with properties:

    Name: 'gap1'

Layer 配列に 3 次元グローバル平均プーリング層を含めます。

layers = [ ...
    image3dInputLayer([28 28 28 3])
    convolution3dLayer(5,20)
    reluLayer
    globalAveragePooling3dLayer
    fullyConnectedLayer(10)
    softmaxLayer]
layers = 
  6x1 Layer array with layers:

     1   ''   3-D Image Input              28x28x28x3 images with 'zerocenter' normalization
     2   ''   3-D Convolution              20 5x5x5 convolutions with stride [1  1  1] and padding [0  0  0; 0  0  0]
     3   ''   ReLU                         ReLU
     4   ''   3-D Global Average Pooling   3-D global average pooling
     5   ''   Fully Connected              10 fully connected layer
     6   ''   Softmax                      softmax

ヒント

  • イメージ分類ネットワークでは、最後の全結合層の前に globalAveragePooling3dLayer を使用して、パフォーマンスを犠牲にすることなく活性化のサイズを縮小できます。活性化のサイズが縮小されるということは、下流の全結合層の重みが少なくなり、ネットワークのサイズが縮小されることを意味します。

  • 分類ネットワークの最後の方で、fullyConnectedLayer の代わりに globalAveragePooling3dLayer を使用できます。グローバル プーリング層には学習可能なパラメーターがないため、過適合が発生しにくくなり、ネットワークのサイズを縮小できます。これらのネットワークにより、入力データの空間変換に対するロバスト性を向上させることにもなります。代わりに、全結合層を globalMaxPooling3dLayer に置き換えることもできます。globalMaxPooling3dLayerglobalAveragePooling3dLayer のどちらがより適切かは、データ セットによって異なります。

    全結合層の代わりにグローバル平均プーリング層を使用するには、グローバル平均プーリング層の入力のチャネル数が分類タスクのクラス数と一致しなければなりません。

アルゴリズム

すべて展開する

バージョン履歴

R2019b で導入

すべて展開する