PoolingLayer
PoolingLayer[sz]
サイズ sz のカーネルを使う2Dプーリングネット層を表す.
PoolingLayer[{w}]
サイズ w のカーネルを使って1Dプーリングを行う層を表す.
PoolingLayer[{h,w}]
サイズ{h,w}のカーネルを使って2Dプーリングを行う層を表す.
PoolingLayer[{h,w,d}]
サイズ h×w×d のカーネルを使って3Dプーリングを行う層を表す.
PoolingLayer[kernel,stride]
stride をカーネル適用間の刻み幅として使う層を表す.
PoolingLayer[kernel,opts]
他のプーリングメソッド,充填,他のパラメータについてのオプションを含む.
詳細とオプション
- PoolingLayer[n,…]は,c 個の入力チャンネルと1つあるいは複数の空間次元を持つ入力配列に適用されたときに,空間次元でそれぞれが異なる c 個のプーリング操作を行い c 個のチャンネルを持つ出力配列を生成する層を表す.
- PoolingLayer[n]はPoolingLayer[n,1]に等しい.
- 次の任意のパラメータを含むことができる.
-
"Dimensionality" Automatic プーリングの空間次元数 "Function" Max 使用する集計関数 Interleaving False チャンネル次元の位置 PaddingSize 0 入力に適用するゼロ充填の量 - InterleavingFalseの設定のとき,チャンネル次元は入出力配列の最初の次元であるとみなされる.
- InterleavingTrueの設定のとき,チャンネル次元は入出力配列の最後の次元であるとみなされる.
- kernel および stride の設定は次の形式でよい.
-
n すべての次元に値 n を使う {…,ni,…} 第 i 次元に値 niを使う - PaddingSizeの設定は次の形式でよい.
-
n 全次元の始めと終りを n 個のゼロで充填する {n1,n2,…} 第 i 次元の始めと終りを n 個のゼロで充填する {{n1,m1},{n2,m2},…} 第 i 次元の始めを ni個のゼロで,終りを mi個のゼロで充填する "Same" - 出力サイズが入力サイズをストライドで割った値(切上げ)と等しくなるように,すべての次元を充填する
- PoolingLayer[…][input]は層を適用して出力を明示的に計算する.
- PoolingLayer[…][{input1,input2,…}]は各 inputiについて明示的に計算する.
- NumericArrayが入力として与えられると,出力はNumericArrayになる.
- PoolingLayerはNetChainやNetGraph等の中で使われることが多い.
- NetExtractを使ってPoolingLayerオブジェクトからパラメータ値を取り出すことができる.
- PoolingLayerはNetGraph等で使うために次のポートを開放する.
-
"Input" 階数2,3または4の配列 "Output" 階数2,3または4の配列 - PoolingLayerは,"Varying"次元を含む配列に使うことができる.
- "Function"オプションの可能な明示的設定
-
Max 最大値を使用 Mean 平均値を使用 Total すべての値の合計を使用 - 大きいネットの他の層から推測できない場合は,オプション"Input"->{d1,…,dn}を使ってPoolingLayerの入力次元を修正することができる.
- 次元 d1×…×di×…の入力配列を与えられた場合,出力配列の次元は ×…××…になる.ただし,チャンネル次元はそのまま(つまり d1=)で,空間次元のサイズは に従って変換される./は各次元の軸の始点/終点の充填サイズ, は各次元のカーネルサイズ, は各次元のストライドサイズである.
- Options[PoolingLayer]は層を構築する際のデフォルトオプションのリストを与える.Options[PoolingLayer[…]]はデータについて層を評価する際のデフォルトオプションのリストを与える.
- Information[PoolingLayer[…]]は層についてのレポートを与える.
- Information[PoolingLayer[…],prop]はPoolingLayer[…]の特性 prop の値を与える.使用可能な特性はNetGraphと同じである.
例題
すべて開くすべて閉じる例 (2)
スコープ (4)
ストライド4で一次元PoolingLayerを作り,入力に適用する:
カーネルサイズ2で,初期化された三次元PoolingLayerを作る:
非対称のストライドで二次元PoolingLayerを作り,入力に適用する:
画像を取って画像を返す,二次元PoolingLayerを作る:
オプション (6)
Interleaving (1)
InterleavingFalseと1つの入力チャンネルでPoolingLayerを作る:
InterleavingTrueと1つの入力チャンネルでPoolingLayerを作る:
PaddingSize (3)
第1次元の各側を10個のゼロで,第2次元の各側を12個のゼロで充填する二次元PoolingLayerを作る:
第1次元の始めを10個のゼロで,終りを14個のゼロで充填する二次元 PoolingLayerを作る:
特性と関係 (2)
次の関数は,入力サイズとパラメータが与えられると非チャンネル次元の大きさを計算する:
入力サイズ{256,252},カーネルサイズ3,ストライドサイズ2,充填サイズ2の場合の出力サイズ:
これは,同じパラメータでPoolingLayerを定義することと一致する:
ストライドを大きくするとPoolingLayerの評価時間が短くなる:
テキスト
Wolfram Research (2016), PoolingLayer, Wolfram言語関数, https://reference.wolfram.com/language/ref/PoolingLayer.html (2021年に更新).
CMS
Wolfram Language. 2016. "PoolingLayer." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2021. https://reference.wolfram.com/language/ref/PoolingLayer.html.
APA
Wolfram Language. (2016). PoolingLayer. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/PoolingLayer.html