oneVsAll.m - Train a one-vs-all multi-class classifier
を埋める箇所がさっぱりもってわからない。
fmincg ( @(t)(lrCostFunction(t, X, (y == c), lambda)), ...
の @(t)(lrCostFunction はいったい何をしているんだ??
>> 関数の引数に関数を渡す時には @ を付ける。
http://qiita.com/naoya_t/items/e195a05f43cab0b1ecdc
とのこと。なるほど。
しかし、@(t), lrCostFunction(t は何??
よくわからない。。。
predictOneVsAll.mの max(A, [], 2)について
http://www.obihiro.ac.jp/~suzukim/masuda/octave/html/octave_94.html
max (x, y, dim)
[w, iw] = max (x)
引数としてベクトルを渡すと,その要素の最大値を返す。 行列を渡すと,各列ごとに最大値を返すので,結果は行ベクトルとなる。 dim を指定すると,その次数を指定することができる。
2つの行列(あるいは行列とスカラ)を渡すと,対で比較した結果を返す。
1つの入力に対して2つの返り値を受け取るとき,
max
関数は,最大値に対応する要素の位置も返す。例)
[x, ix] = max ([1, 3, 5, 2, 5])
x = 5
ix = 3
predictOneVsAll.mの predictOneVsAll(all_theta, X)では、sigmoid(X * all_theta')を最大にするる
index(kabel)を求めればよいか。