科学の箱

科学・IT・登山の話題

機械学習

線形回帰と最急降下法

投稿日:

線形回帰

世の中の様々な出来事(y)はある事象(x)に対して比例することが多い。もちろん厳密に比例するわけではなくずれは生じる。しかしこのxとyが比例すると仮定した場合、中学校で習った一次式でこの関係をとらえることができる。

$$ y = a \times x + b $$

この時xを説明変数、yを目的変数という。線形回帰では説明変数をもとにして目的変数を計算する一次式を明らかにする。これを線形回帰と呼ぶ。

線形回帰の際には(x, y)の組み合わせのデータが用意される。このデータを基にしてaおよびbを算出することができる。

実データと線形回帰

いま気温とアイスクリームの売り上げを考える。10日の気温と売り上げを記録したところ以下のようになったとする。

ずれはあるものの気温と売り上げデータには比例関係があり以下のように直線が引ける。

これを一次式であらわすと以下のようになる。

$$ アイスクリームの売り上げ = Θ_1\times 気温 + Θ_0 $$

この時アイスクリームの売り上げが目的変数となり、気温が説明変数となる。

Θ1は気温に対する重みである。重みとは気温がどの程度アイスクリームの売り上げに影響を及ぼすかの指標である。Θ1が小さければ、気温は売り上げに影響しない。それに対してΘ1が大きくなるほど売り上げは気温により左右されることになる。

このΘ1およびΘ0を明らかにできれば、アイスクリームの売り上げと気温の関係を導き出すことができる。これを線形回帰と呼ぶ。

最小二乗法

ではどのようにしてΘ1およびΘ0を明らかにできるのか。この手法を最小二乗法と呼ぶ。得られたデータを見るとどのような直線を描いたとしてずれが生じる。

この時ずれをε(i) = ε(1),ε(2),ε(3),,,,,ε(n)とする。 これはデータの組み合わせ(x(i), y(i))に対してそれぞれのデータについて引いた直線のずれを表す。

このずれは直線の式を用いると以下のようにあらわすことができる。

$$ ε_i = y_i – Θ_1 \times x_i – Θ_0 $$

データに対してフィットした直線とはこのずれの合計が最も小さくなる直線を探す。ずれの合計は以下のようにあらわすことができる。

$$ E_Θ = \sum_{i=1}^{n}( ε_i )^2$$

よって一次式であらわすと以下のようになる。

$$ E_Θ = \sum_{i=1}^{n} (y_i – Θ_1 \times x_i – Θ_0)^2 $$

この式を2乗誤差の損失関数と呼ぶ。この関数は他の損失関数と比べて外れ値に大きく左右される。

 

最急降下法

さて最小二乗法を利用すれば、Θ0およびΘ1を求めることができるようである。またそのカギは以下の式である。しかしどのようにしてΘ0およびΘ1を求めればよいのか。ここで利用するのが最急降下法という技である。

いま下記のようなグラフを考える。

 

これは以下の方程式をグラフにしたものである。

$$ y = (x-1)^2 $$

このグラフの最小値を求めたいとき、どのようにすればよいか。最小値があらかじめわかっていれば、yに最小値を代入して、方程式を解くことができる。しかしそもそも最小値がわからないために代入できない(今回の場合には例が単純であるが)。では最小値の左と右で値の増減がグラフから見てみる。

yの増減
最小値の左側 減っている↓
最小値 0
最小値の右側 増えている↑

上記のことがわかっている。ここでyの増減を数式であらわすためには微分を用いることになる。微分を用いると以下のようにあらわされる。

yの増減 微分 ( $$ \frac{dy}{dx} $$ )
最小値の左側 減っている↓
最小値 0 0
最小値の右側 増えている↑

いまあるx=-3から最小値を探すとする。この時傾きは-であるから、次は新しいxは今のxよりも大きい値、つまり+の方向に進むことになる。いま進みすぎて傾きが+になったとする。この場合には次のxは今のxよりも小さい値となる。これを図解すると以下のようになる。

これを式に表すと以下のようになる

$$ x := x –  η \times \frac{d}{dx} \times y $$

 

これを先ほどの損失関数に当てはめることで最急降下法により最小値を求めるのが線形回帰である。

メタ情報

inarticle



メタ情報

inarticle



-機械学習

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

手書き数字データについて次元縮約および教師ありモデルの構築

前回手書き数字データについてイメージで確認した結果、人の目で確認する分には区別ができる。では機械学習ではどのように実施していくのか。 今回は以下の内容について説明する。 多様体学習による次元縮約 ナイ …

no image

線形回帰とリッジ回帰とラッソ回帰の違い

用語 線形回帰 データから平均二乗誤差を最低にするパラメータΘを求めて、直線で回帰すること $$ y = Θ_0 + Θ_1 \times x $$ コスト関数 損失関数とも呼ばれる。実際のデータと予 …

no image

独立性の検定 2つ

ニートの年齢別割合が1996年と2012年で関連性があるか独立性の検定をしてみる。 ニートの割合  1996 2012 15~19歳 9 9 20~24歳 12 17 25~29歳 10 18 30~ …

no image

irisでPCAを実行し可視化

irisデータをPCAで2次元に分類して可視化してみる。 内容 準備及びデータの前処理 PCA プロット   準備及びデータの前処理 irisデータを読み込み、PCAを実行するための前処理を …

no image

SIGNATE お弁当の需要予測-1

SIGNATEのコンペであるお弁当の需要予測をpythonで分析 データは下記から取得できる https://signate.jp/competitions/24 ライブラリ読み込み importnu …

2019年10月
« 9月   11月 »
 123456
78910111213
14151617181920
21222324252627
28293031  

side bar top



アーカイブ

カテゴリー