なぜCNNでは畳み込​み層のフィルタ数を倍​ずつにしていくのか

56 ビュー (過去 30 日間)
ssk
ssk 2019 年 7 月 27 日
コメント済み: ssk 2019 年 7 月 28 日
CNN初心者です。以下のリンクの下記コードにつきまして、畳み込み層のフィルタ数が倍ずつになっておりますが、なぜこのようになるかご教示いただけますでしょうか。個人的にはフィルタの数だけ特徴マップが出力されるため、より精度を高くするために倍にするのではと考えております。
また、フィルタ数を倍ずつにしていくのではなく、他の方法(たとえば、1.5倍、2倍など)も可能であるかご教示いただけますと幸いです。どうぞよろしくお願いいたします。
加えて、本チュートリアルでは畳み込み層は3層だけですが、なぜ3層だけか、3層が最適なのかにつきましても何か理由がございましたらご示唆を頂けますと幸いです。
layers = [
imageInputLayer([28 28 1])
convolution2dLayer(3,8,'Padding','same')
batchNormalizationLayer
reluLayer
maxPooling2dLayer(2,'Stride',2)
convolution2dLayer(3,16,'Padding','same')
batchNormalizationLayer
reluLayer
maxPooling2dLayer(2,'Stride',2)
convolution2dLayer(3,32,'Padding','same')
batchNormalizationLayer
reluLayer
fullyConnectedLayer(10)
softmaxLayer
classificationLayer];

採用された回答

Kenta
Kenta 2019 年 7 月 28 日
畳み込みをするとイメージサイズが小さくなりますが、その代わりフィルター数を増やし、チャンネル方向に大きくするので、分類などに十分な情報を保持できると理解しています。そのため質問者様と同様の理解を私はしています。その際、フィルター数を1.5倍にしたり、3倍にもできると思います。どれくらいがよいかはその課題によるはずです。
層の数についても同様で、特にここで3であるはっきりとした理由はなく、単に、この課題に関しては3に設定することでよい結果が得られた、と考えています。
  3 件のコメント
Kenta
Kenta 2019 年 7 月 28 日
はい、そうですね、自分で設計したいときはいろんな要素を試行錯誤する必要があると思います。
はい、フィルター数を増やすことで、チャンネル方向に長くなります。
ssk
ssk 2019 年 7 月 28 日
ありがとうございました。深く理解できました!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchangeイメージ処理の深層学習 についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!