Aidemy 2020/10/28
はじめに
こんにちは、んがょぺです!バリバリの文系ですが、AIの可能性に興味を持ったのがきっかけで、AI特化型スクール「Aidemy」に通い、勉強しています。ここで得られた知識を皆さんと共有したいと思い、Qiitaでまとめています。以前のまとめ記事も多くの方に読んでいただけてとても嬉しいです。ありがとうございます!
今回は、教師あり学習(回帰)の一つ目の投稿になります。どうぞよろしくお願いします。
*本記事は「Aidemy」での学習内容を「自分の言葉で」まとめたものになります。表現の間違いや勘違いを含む可能性があります。ご了承ください。
今回学ぶこと
・教師あり学習(回帰)について
・線形回帰の方法
教師あり学習(回帰)
(復習)機械学習の手法
・機械学習には3つの手法がある。「教師あり学習」「教師なし学習」「強化学習」である。
・このうち、教師あり学習は「分類」「回帰」の二つに分けられる。今回学ぶ回帰は、株価や時価などの連続値を予測する。
線形回帰
線形回帰とは
・線形回帰とは、__既に分かっているデータの式(グラフ=線形)から、その先のデータの動きを予測する__ものである。この時のグラフは必ず直線(一次関数)になる。
決定係数
・決定係数__とは、線形回帰で予測したデータと実際のデータがどのぐらい一致しているかを示すものである。
・教師あり学習に使われるscikit-learnのおいては決定係数は__0〜1の値をとる。数値が大きいほど一致度は高いと言える。
・決定係数を出力するときは__print(model.score(test_X,test_y))__のようにすれば良い。
線形単回帰
・線形単回帰とは、__1つの予測したいデータ(y)を1つのデータ(x)から求める線形回帰__のことである。
・すなわち、データが「y=ax+b」で表せると仮定して、__aとbを推測する__ことを指す。
・aとbの推測には、一つには、__最小二乗法__というものが使われる。これは、__実際のyと推定するy(つまりax+b)の差の二乗の総和が最小になる__ようなaとbを設定するというものである。
・この方法で差を二乗するのは、データの正負を考慮しなくて良いからである。
・線形(単)回帰を使うには、__「model=LinearRegression()」__のようにすればよい。
線形重回帰
・__線形重回帰__とは、予測したいデータが1つ(y)に対し、__予測に用いるデータが複数個(x1,x2...)__となる線形回帰のことである。
・すなわち、データが「y = a1x1 + a2x2... +b」で表せると仮定して、aとbを推測することを指す。
・線形重回帰でも、aとbの予測は最小二乗法で行われる。
・また、使うのも、LinearRegression()で良い。単回帰か重回帰を自動で判断してくれる。
まとめ
・教師あり学習(回帰)の一つである線形回帰とは、既に分かっているデータの式(グラフ=線形)から、その先のデータの動きを予測するものである。
・線形回帰には、予測するものが一つである「線形単回帰」と複数である「線形重回帰」がある。
今回は以上です。最後まで読んでいただき、ありがとうございました。