スポンサーリンク

プーリング層とは

CNNで利用されるプーリング層について説明します。

プーリングとは

ここで言うプーリングとは、解像度を絞ることを指しています。

図は、MaxPoolingで解像度を1/2に絞るときの例です。MaxPoolingは、4つの入力のうち、値が一番大きいものを採用して出力します。図では、3回分しか描かれていませんが、16回繰り返して出力を作成します。よく使われるプーリングは、MaxPoolingやAveragePoolingです。

プーリング層とは

畳込み層の間に挟むことが多く、画像の解像度をシュリンクする機能を持っています。入力画像サイズのまま、出力まで同解像度でネットワークを組んでしまうと、使用するメモリや計算量が膨大になってしまいます。そこで、出力層に近づくにつれて、解像度をシュリンクさせるのが一般的です。そのシュリンクのためにプーリング層を使用します。ただ、畳込み層のストライドを調整することで解像度をシュリンクさせるテクニックもあるので、どちらを使うかは、好みが分かれます。私は、特に問題がなければMaxPoolingを使うのが好みです。

プーリング層には、学習させるパラメータがありません。学習が進んでも、プーリング層が果たす機能は、一意です。そのため、プーリング層をネットワーク内に設置しても、通常はメモリを余計に使用することはありません。

まとめ

プーリング層について説明しました。CNNでは、頻繁に出てくる層なので、覚えてしまいましょう。

タイトルとURLをコピーしました