LoginSignup
1
1

More than 5 years have passed since last update.

線形回帰問題を機械学習で解く

Last updated at Posted at 2019-02-26

cousera機械学習week2の概要。自分の理解では、線形回帰における機械学習とは、与えられる実データ(x,y)に対し、予測式HΘにxの値を代入れて得られる予測値との差が最小になるようなΘを機械的に見つけ出す手法のこと。このプロセスを行列式で示し、それをOctaveで記載して計算する。

1. カレントディレクトリをデータ、プログラムファイル(xxxx.m)のあるフォルダに設定。

プログラムファイルを使うと、ファイル名をコマンドのように扱うことができる。引数がある場合は、ファイル名(引数1,引数2,,,,)で記載する。

2. データを読み込み、x, y の行列に分割してプロットする。

3. 予想式(1変数による直線回帰)を定義する。

1.png

この式はxの1*2行列[1 x]とΘの2*1行列[Θ0; Θ1]の積で示すことが出来る。

4. 実データと予想値の差Jを定義する。

2.png

実データyと予想値H(x)の差の二乗の総和として定義。Θが決まると実データ(x,y)に対するJ値が決まる。

5. Θを変換させてJを徐々に小さくする。

3.png

Θの変換式はJ算出式の偏微分で定義できる(より良いΘに近づける変換ロジック、機械学習の肝)。Θ初期値、α値を決める。規定回数変換させてΘの収束値を求める。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1