勾配の出力結果がゼロになる

1 次查看(过去 30 天)
YoSa Akida
YoSa Akida 2023-7-3
複数入力ネットワークを用いて,Softmaxと畳み込み層の勾配を計算しようとしています.
しかし,勾配の出力結果を確認すると,全てゼロになっています.
勾配計算前までは,共に値が計算されています.
どのような問題が考えられるでしょうか.
・勾配計算用の関数の中身
function [featureMap, dl_featureMap] = gradcam_fun(dlnet, dlImg, dlImg2, dlImg3)
% mul_1 -> 乗算された畳み込み層
[featureMap, scores] = predict(dlnet, dlImg, dlImg2, dlImg3, 'Outputs', {'mul_1', 'softmax'});
dl_featureMap = dlgradient(max(scores), featureMap);
end
・コード本体
dlnet = dlnetwork(lgraph);
Unrecognized function or variable 'lgraph'.
dlImg = dlarray(single(img),'SSC');
dlImg2 = dlarray(single(img2), 'SSC');
dlImg3 = dlarray(single(img3), 'SSC');
% 勾配計算
[featureMap, dl_featureMap] = dlfeval(@gradcam_fun, dlnet, dlImg, dlImg2, dlImg3);

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Just for fun 的更多信息

产品


版本

R2022a

Community Treasure Hunt

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

Start Hunting!