前提・実現したいこと
現在CNNをpythonでスクラッチで書こうとしているのですが、平均プーリングの逆伝播処理がわからないため教えて頂きたいです。
Maxプーリングの方が一般的なのは理解しておりますが、処理自体は把握しておきたいためご教示ください。
質問事項
例えば2×2のMAXプーリングで、順伝播が下記となる箇所があるとします。
1 3 2 2
このとき、逆伝播では上記で最大だった「3」の箇所を誤差、他は0として前の層へ渡すと思います。
(誤差=4となった場合は下記を前の層へ渡すイメージ)
0 4 0 0
では、2×2の平均プーリングの場合にはどうなるかというのが今回の質問です。
最初の例の平均値は2となりますが、もし逆伝播の時の誤差=4のとき、この4をどのようにして前の層へ渡すのでしょうか?
元の値の割合に分配するとかでしょうか?(1:3:2:2に分配して下記を前の層へ渡す?)
0.5 1.5 1.0 1.0
※誤差の計算式自体は平均プーリングとMaxプーリングとで同じイメージでおりますが、もし異なるようでしたらご指摘ください。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/09/20 17:21