2015年12月31日木曜日

Cousera Machine Learning / week3 ex2の課題めも

わからなかった点めも
 sigmoid.m - Sigmoid Function のコードを埋める箇所がどうもよくわからない。
 g = 1./(1+exp(-z)); 
とドット"."をなぜここに入れる?
zが行列で要素のみ演算させるのはわかるが、
なぜ、g = 1./(1+exp(-z.)) や、g = 1/((1+exp(-z.)).)でないのか。
>>追記
for ループを使うと次と同じ。
for i=1:size(z,1), 
    for j=1:size(z,2), 
                g(i,j) = 1/(1+exp(-1*z(i,j)));
        end
end

sizeは行列のサイズを返し、次のようになる
> a=[1,2;3,4;5,6]
a =
  1  2
  3  4
  5  6
octave> size(a)
ans =
  3  2
octave> size(a,1)
ans =  3
octave> size(a,2)
ans =  2

0 件のコメント:

コメントを投稿