CNNの全結合層の構造について

11 次查看(过去 30 天)
sousi shimozima
sousi shimozima 2018-10-15
回答: Kazuya 2018-10-18
書籍やMATLABでニューラルネットについて学んでいます。そこで、疑問に思ったことがあります。  CNNのネットワークである画像を通して畳み込み層で計算し、プーリング層で圧縮した後、全結合層で結合する際の一つのノードに出力されるものはどのようなものになるのでしょうか。  例えば、CNNである画像に畳み込み層でフィルターを100枚かけて、プーリン層を経て、サイズ8×8の特徴マップが100枚あるものを結合する時は、結合された後の一つのノードはそれぞれの値に重みをかけて特徴をより反映した、サイズが8×8のものが合成されるのでしょうか?それとも、一つのノードには重みをかけて合成された一つの数値(例えば1056など)になるのでしょうか?結合された後の一つのノードが具体的にどのようなものか(サイズや形など)理解できなかったので、どなたかよろしくお願いします。  

回答(1 个)

Kazuya
Kazuya 2018-10-18
結論からいうと、「一つのノードには重みをかけて合成された一つの数値(例えば1056など)」になるかと。
fullyConnectedLayer:全結層のドキュメンテーションページが参考になるかもしれません。 https://jp.mathworks.com/help/deeplearning/ref/nnet.cnn.layer.fullyconnectedlayer.html
例題の1つ「全結合層の初期の重みとバイアスの指定」に下記のようなネットワークを例にした記載があります。
layers = [imageInputLayer([28 28 1])
convolution2dLayer(5,20)
reluLayer
maxPooling2dLayer(2,'Stride',2)
fullyConnectedLayer(10)
softmaxLayer
classificationLayer]
"畳み込み層のチャネル (特徴マップ) の 1 方向に対して、出力は (28-5+2x0)/1 + 1=24 になります。最大プーリング層には重ならない領域があるため、各方向に 2 (24/2=12) だけダウンサンプリングします。畳み込み層の 1 つのチャネルに対して、最大プーリング層の出力は 12x12 = 144 になります。畳み込み層には 20 個のチャネルがあるため、最大プーリング層の出力は 144x20 = 2880 になります。これが全結合層の入力のサイズです。"
ということで、、上の場合ですと全結層の出力は 10個の数値で、最大プーリング層の出力 2880個全ての重み付き結合だと読み取れますが、いかがでしょうか?

类别

Help CenterFile Exchange 中查找有关 深層学習データの前処理 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!