これら2つの違いは何ですか?また、畳み込みネットワークのより一般的なコンテキストで説明するのに役立ちます。
また、補足として、チャネルとは何ですか?言い換えれば、私のための3つの用語を分解してください:チャンネル対フィルター対カーネル。
各畳み込み層は、いくつかの畳み込みチャネル(別名、深さまたはフィルター)で構成されます。実際には、それらの数は64,128,256, 512
などです。これは、畳み込み層の出力のチャネルの数に等しくなります。一方、kernel_sizeはこれらの畳み込みフィルターのサイズです。実際には、それらは3x3, 1x1 or 5x5
です。略称として、それらは実際にはほとんど正方形であるため、1 or 3 or 5
と書くことができます。
編集
次の引用は、より明確にする必要があります。
X
が、ネットワーク内のフィルターN
(サイズW x H x D x N
)を含む畳み込み層へのサイズFW x FH x FD x K
(ここでF
はバッチのサイズ)の入力であるとします。
フィーチャチャネルの数D
は、ここでの入力X
の3番目の次元です(たとえば、入力がカラーイメージで構成されている場合、これは通常、ネットワークへの最初の入力で3です)。フィルターの数K
は、F
の4番目の次元です。レイヤー内のフィルターの数がK
である場合、K個のフィーチャチャネルを含む出力が生成されるため、2つの概念は密接に関連しています。そのため、次のレイヤーへの入力にはK
フィーチャチャネルが含まれます。
上記のFW x FH
は、探しているフィルターのサイズです。
追加
filters に精通している必要があります。各フィルターは、生の画像から何らかのタイプの特徴を抽出する責任があると考えることができます。 CNNはそのようなフィルターを学習しようとします。つまり、フィルターはCNNでパラメーター化され、CNNのトレーニング中に学習されます。これらはCNNのフィルターです。 Conv2Dの各フィルターを各入力チャンネルに適用し、これらを組み合わせて出力チャンネルを取得します。したがって、フィルターと出力チャンネルの数は同じです。