1+9=10

どこかの院生

CourseraのMachine Learning(機械学習)の講義内容まとめ [Week 2]

Week 1では、線形回帰、目的関数、最急降下法の説明をしていた。Week 2では、さらにこれを深く掘り下げて説明されていました。

Linear Regression with multiple variables

複数の特徴を持つ教師データで線形回帰を行う方法を説明していく。

Multiple Features

Week 1では、仮説関数として h_θ(x) = θ_0 + θ_1xが使われていた。なぜなら、教師データとして与えられていたものにはパラメータ2つ(家の大きさ、値段)しかなかったためだ。では、ここに家の築年数、場所などのパラメータを追加したとき仮説関数は

 h_θ(x) = θ_0 + θ_1x_1 + θ_2x_2 + θ_3x_3 + ... + θ_nx_n

このようになる。

f:id:onenight1910:20180527224944p:plain 画像: Coursera Machine Learning f:id:onenight1910:20180527224945p:plain 画像: Coursera Machine Learning

また、便宜上これから現れる式は行列が用いられる。 f:id:onenight1910:20180527225355p:plain f:id:onenight1910:20180527230944p:plain 画像: Coursera Machine Learning

Gradient descent for multiple variables

Week 1では、2つのパラメータ時の最急降下法を説明した。今回はより多くのパラメータではどのような挙動をするかを説明していく。といってもやることはさほど変わらない。

f:id:onenight1910:20180527231447p:plain 画像: Coursera Machine Learning

画像からもわかるとおり、それぞれの θ_nに対して同時に処理を行うだけだ。

Normal equation (正規方程式)

最急降下法以外で、最適解を求める方法が正規方程式です。

 θ = (X^TX)^{-1}X^Ty

これは、ループをすることなく直接θを求めることが可能です。こちらのほうが良いと思われたかと思いますが欠点があります。

  • Xのサイズが大きい場合にものすごく時間かかる。

サイズが100万以下なら使って問題ないそうです。