03.2.7 中学生向け
中央値絶対誤差(Median Absolute Error)(中学生向け)
クイズ:通学時間の予想、ふつうの日はどれくらいずれる? #
あなたは毎朝「今日は家から学校まで 15 分」と予想して家を出ています。7 日間、本当にかかった時間との差をメモしました。
| 日 | 月 | 火 | 水 | 木 | 金 | 土 | 日 |
|---|---|---|---|---|---|---|---|
| ズレ(分) | 1 | 2 | 1 | 3 | 2 | 1 | 25 |
日曜日は電車が止まって 25 分も遅れました。ズレの平均を出すと 35 ÷ 7 = 5 分。でも「毎日 5 分ずれる」という感じはしませんよね。ふつうの日は 1〜3 分しかずれていないのに、たった 1 日の大はずれが平均を引っぱっています。
そこでズレを小さい順に並べてみます。1, 1, 1, 2, 2, 3, 25。まん中(4 番目)は 2 分。この「2 分」が中央値絶対誤差です。「ふつうの日はだいたい 2 分ずれる」という感覚に、ぴったり合います。
仕組み:まん中の値はこうやって選ぶ #
まず、予想と本当の値を 1 件ずつ並べます。上の表では 7 日分のペアができます。次に、ズレの大きさを出します。早く着いても遅く着いても、「何分離れたか」の大きさだけを取ります。そのズレを小さい順に並べるところが、平均との分かれ道です。並べると、大はずれの 25 分はいちばん右のはしに追いやられます。最後にまん中の値を読みます。7 個なら 4 番目、偶数個なら中央の 2 つの平均です。右のはしにある 25 分が 100 分に変わっても、4 番目の値は 2 分のまま変わりません。これが「大はずれに動じない」理由です。
動かして見てみよう #
下の図で「再生」を押すと、説明した手順が 1 つずつ進みます。手順ごとの説明は図の下に出ます。
気をつけたいこと #
最初の注意は、25 分の大はずれを無視してしまうことです。電車が止まった日曜日のことは、中央値絶対誤差の 2 分を見ても分かりません。「1 回でも大きく遅れると困る」場面では、平均を使う MAE や、大はずれを強く気にする RMSE も見ましょう。二つ目は、7 日の半分はこの値より大きくずれているという点です。「中央値が 2 分」は「毎日 2 分以内」ではなく、7 日のうち 3 日はそれより大きくずれています。三つ目は、データが少ないと値がとびやすいことで、3 日分しかなければ 1 日分が入れ替わるだけでまん中が変わるので、ある程度の日数を集めてから使います。
やってみよう #
最初の課題は、1 週間、自分の通学(または通塾)時間を予想してメモし、ズレの平均とまん中の値を両方出すことです。どちらが「ふつうの日の感覚」に近いでしょう。二つ目は、上の表の日曜日のズレを 25 分から 100 分に変えて、平均とまん中の値がそれぞれどう変わるか確かめる課題です。三つ目は、「ふつうの日のズレが知りたい場面」と「大はずれのほうが大事な場面」を 1 つずつ考える課題です(ヒント:ゲームのロード時間、台風の到着予想)。
つぎに読む #
式と Python のプログラムまで含めた本編は 中央値絶対誤差(標準版) です。平均を使う点数(MAE)と大はずれをきらう点数(RMSE)の話は 中学生向けの MAE・RMSE にあります。ほかの「数の予想の点数のつけ方」は 回帰の評価指標 の一覧からたどれます。