単純なシグモイド関数を matlab で動作させようとしてきましたが、行列の最初の要素に対してのみ動作するようです。
私のコードは次のとおりです。
function g = sigmoid(z)
g = zeros(size(z));
g = 1/(1 + exp(-z));
end
次のような単純な値で問題なく動作するようになりました。
>>sigmoid(0)
ans = 0.5000
ただし、次の場合: `
>>k = [0; 0; 0; 0; 0];
>>sigmoid(k)`
それは私に与えています:
ans = 0.5000 0 0 0 0
「exp」を調べると、要素単位の操作であると表示されているため、どこが間違っているのかわかりません。どんな助けでも大歓迎です。:)