わかりやすく 線形回帰 とは
勉強した時間が長いほど、点数も高い傾向があるとしましょう。人それぞれなので、点はばらばらに散らばっています。それでも全体の流れを一本の直線で引いておけば、五時間勉強した新しい人の点数も、その線から見積もれます。散らばった点の間をいちばんよく通る直線を見つけて値を予測する方法、これが線形回帰です。
散らばった点から始める
前のレッスンまでは、一つの値のまんなかと散らばり、そして起こりやすさを見てきました。今回は、組になった二つの値を見ます。勉強した時間ととった点数のようにです。時間を横軸に、点数を縦軸におくと、一人の人が一つの点になります。
人によって事情がちがうので、点は一本の線にぴったりのらず、雲のように散らばります。下で、点を一つずつ打ってみましょう。
あいているところを押して、点をまいてみましょう。右へ行くほど上がっていく流れが、ぼんやりと見えます。
点が散らばっていても、少し離れて見ると流れが見えます。右へ行くほど、だいたい上がっていきます。時間をたくさん使った人ほど、点数が高い傾向があるということです。
でも、これだけでは、新しい人の点数をぴたりと言い当てるのはむずかしいでしょう。この流れを一本の線でかければ、ずっとはっきりするはずです。
点の間に線を引く
流れを表すいちばん簡単な方法は、まっすぐな直線を一本引くことです。この線は、散らばった点のまんなかを横切るように通ります。線の上にある点も下にある点もありますが、全体として見れば、線が点を代表しています。
このように直線で流れを表すので、線形回帰と呼びます。線さえあれば、点がなかったところの値も読み取れます。
左と右で、線が通るところを一つずつ押してみましょう。二か所を選ぶと、その間に直線が引かれます。
線を一本引くと、散らばった点がずっと整って見えます。横軸でどんな時間を選んでも、線までたどって縦軸の点数を読めます。これが予測です。
でも、線をどこに、どれくらいかたむけて引くかは、まだ自分たちの好きにしていました。選んだところによって、線が変わりました。線を決める決まりが必要です。
傾きと切片が線を決める
直線一本は、二つの数で完全に決まります。一つは傾きで、横に一目もり進むとき、縦にどれだけ上がるかを表します。傾きが大きいと線は急になり、小さいとゆるやかになります。
もう一つはy切片で、線が縦軸と交わる高さです。この二つを決めれば線は一本に決まり、式ではy=ax+bと書きます。aが傾き、bが切片です。
傾き(a)と切片(b)を、増減ボタンで変えてみましょう。線が急になったりゆるやかになったりし、上下に動きます。
傾きを大きくすると線は急になり、小さくすると寝ていきます。切片を上げると線全体が上へ、下げると下へすべります。二つの数だけで、線を好きなように動かせるのです。
では、散らばった点にいちばんよく合う傾き(a)と切片(b)は、どうやって見つけるのでしょうか。よい線と悪い線を分ける基準が必要です。
ずれがいちばん小さい線がよい
基準は簡単です。点ごとに、線が予測した値と実際の値が、縦にどれくらいちがうかを見ます。このちがいを残差と呼び、大きいほど、線がその点を大きく外したことになります。
すべての点のちがいを足すと、線が全体としてどれくらいずれているかが分かります。この合計が小さいほど線は点によく合うので、いちばんよく合う線は、ずれの合計がいちばん小さい線です。下の図はちがいの大きさをそのまま足していますが、ふつうの線形回帰では、ちがいを二乗して足した値をいちばん小さくします。これを最小二乗法といい、大きく外れた点をより重く見ます。
ボタンで線を少しずつ動かして、ずれの合計を減らしてみましょう。合計が小さくなるほど、いちばんよく合う線に近づきます。
ずれの合計を減らしていくと、線は点の雲のまんなかに落ち着きました。もうそれ以上減らない場所、それがいちばんよく合う線です。
人はボタンを押しながら見当で見つけましたが、機械はこの減らす作業を数えきれないほどくり返して、とても正確に見つけ出します。最小二乗法なら、式を解いて一度に答えを求めることもできます。どちらにしても、することは同じです。ずれを減らして、いちばんよく合う傾き(a)と切片(b)を見つけることです。
まとめ
まとめるとこうです。組になった点が散らばっているとき、その間をいちばんよく通る直線を一本引きます。線は傾き(a)と切片(b)という二つの数で決まり、点とのずれがいちばん小さくなるように選びます。その線に新しい入力を入れれば、結果を予測できます。
一つだけ覚えておきましょう。線を決める傾き(a)と切片(b)は、あとで学ぶニューロンで、重みとバイアスという名前でまた出てきます。
要点を順に押して振り返りましょう。(散らばった点 → 線を引く → 傾き(a)と切片(b) → ずれを減らしていちばん合う線 → 重みとバイアスの予告)
これで、散らばった点の間に線を引き、その線で先のことを見積もれるようになりました。二つの数が予測を生み出すというこの考えは、これから学ぶほとんどすべてのことの種です。
回帰は、点数のように連続した数を予測します。でも、迷惑メールかどうか、猫か犬かのように、どのグループに入るかを答えなければならないこともよくあります。そうした問題をあつかう分類を、次のレッスンで見ていきます。