
この回でつかむこと
学習用とテスト用を時間順に分ける理由を言える。
予測と答え合わせって何だろう?
回帰は連続した数を予測する方法です。学習用で規則を探し、テスト用で初めて見る値に通用するか確かめます。未来の情報が混ざると評価が甘くなります。

昨日までの気温を覚えたら、明日もぴたりと当たる?

いい問いだね。過去の一部だけで学び、それより後の日付の気温を予測して答え合わせするんだよ。

時系列なら、未来の値が学習側へ混ざらないようにします。

AI先生 未来の答えを先に見せないのが、公平な答え合わせなんだよ。
時間のあるデータでは、後ろの日付をテスト用に残す。 回帰は連続した数を予測する方法です。学習用で規則を探し、テスト用で初めて見る値に通用するか確かめます。未来の情報が混ざると評価が甘くなります。
import numpy as np
from sklearn.linear_model import LinearRegression
day = np.arange(1,13).reshape(-1,1)
temp = np.array([17,18,18,20,21,21,23,24,24,26,27,28])
model = LinearRegression().fit(day[:8], temp[:8])
print(np.round(model.predict(day[8:]),1))なぜそうなる? fitに渡したのは最初の8日分だけです。後半は学習に使っていません。
予測のずれを見る
予測値と実際の値の差を見れば、モデルの得意・不得意が分かります。
pred = model.predict(day[8:])
print(round(np.abs(pred-temp[8:]).mean(),2))ここに注目 差の絶対値を平均すると、ずれの大きさを同じ単位で読めます。未来の保証ではありません。
予想して、理由を話そう
答えを選んで、説明を確かめよう。外れても発見が一つ増えるよ。
答えを選ぶと理由が表示されます。
Colabで試してみよう
コードの実行はColaboratoryの実行環境で行います。まずノートブックを保存し、Colabで「ファイル → ノートブックをアップロード」から開いてください。上から順に実行し、最後に値を変えてみましょう。
保存ボタンを押しても画面は切り替わりません。通常はブラウザの「ダウンロード」フォルダに .ipynb が保存されます。見つからない場合はダウンロード履歴を確認してください。Colabの実習は小さな例から始められます。
身近な技術とつなげてみよう

AI先生:天気予報も『当たった日』だけを見せると強そうに見えるね。外れた日も含めて評価しよう。
この回の重要な用語
本文で出会った言葉を、ここで意味と一緒に振り返ろう。上の「ことばの窓」からも説明を開けるよ。
- 回帰
- 気温や価格のような連続した数値を予測する課題です。
- 学習用データ
- モデルが規則を探すために使うデータです。
- テスト用データ
- 学習に使わず、できあがったモデルを確かめるデータです。