機械学習 はじめよう

第8回 線形回帰[前編]

この記事を読むのに必要な時間:およそ 2 分

3つめの仮定:「関数」という関係

さて,残る仮定はあと一つ。それをあぶり出すために「今までデータ点が4つしかありませんでしたが,さらに96個ものデータを取ってくることができた」という設定を考えてみましょう。データが多ければ多いほど,より正確で精密な直線の式を得ることがきっとできるでしょうから,もちろん大歓迎ですよね。

さて,追加されたデータも含めてグラフにプロットしてみました。

画像

「あ,直線も曲線も引けない……。直線っぽく見えたのは最初の4個がたまたまそういう感じに見えていただけだったのか……」ということに気づくはずです。わざとらしい展開ですが,これでわかるとおおり,そもそもの一番最初の最初におこなおうとした「2つの変数間の関係を関数で表す(表せる)⁠というのも仮定だったのです。

まとめ,そして「回帰」

以上のように,データから最小二乗法で直線を推定する場合,実は仮定が3つ隠れていたことがわかりました。まとめてみましょう。

  • 変数間の関係を関数で表す
  • 関数のモデルは直線(1次式)を考える
  • パラメータを選ぶ基準として二乗誤差を用いる

これらはどれも,与えられているデータだけからは妥当性を判断しきれない「仮定」だったわけです。どれもなかなか強い仮定ですが,これらを認めてさえしまえば,最小二乗法はその範囲で最適な答えを簡単に見つけてくれます。

機械学習のすべての技術は,このような仮定を大なり小なり必ず持っています。⁠どこまでが仮定なのか,その仮定は解きたい問題に対して適切か」という認識は,機械学習を効果的に使うために最も重要なポイントになりますので,常に意識するようにしておきましょう。

ちなみに,変数間の関係を関数で表すことを機械学習では「回帰」と言います。そして計算しやすさは最小二乗法のままで,2つめの仮定をもっと柔軟にできるようにしたのが「線形回帰」です。そこで,次回の後編ではこの「線形回帰」を紹介します。

著者プロフィール

中谷秀洋(なかたにしゅうよう)

サイボウズ・ラボ(株)にてWebアプリの連携や自然言語処理を中心に研究開発を行いながら,英単語タイピングゲームiVocaをサービス提供している。参加した懇親会はいつもなぜかRESTとExcelの話になる。

コメント

コメントの記入