2012年3月20日火曜日

競馬予想の精度2

前回の課題の結果です。

課題のデータは、全部で18レース分です。
(本命1、対抗2、 単穴3、二重△4、△5、その他6としています。勝馬1、負け馬0。)

http://dl.dropbox.com/u/13984080/20120303_kadai.d

このデータを用いて、6名の予想者それぞれのARを計算するというものでした。結果は、6名の予想者それぞれの予想のARは、77.6%(柏木)、50.7%(宮崎)、60.4%(黒津)、49.0%(久保木)、74.7%(桧原)、73.0%(本誌飯田)。この18レースに関する限り、柏木氏の予想のARが77.6%で最高で、低い人は50%前後ということが分かります。もちろんこの傾向が、ずっと続くのか、それともタマタマだったのかは、レース数を増やさないと分からない。でも、素直な感想は、プロの予想は結構すばらしいというものです。最初の回で、競馬ファンの予想(オッズ)のARは約68%弱と書きました。その結果は何万レースでの予想の結果だったのですが、その数字と比較してもスバラシイ。

そこで、今回の課題です。

(1)前回入力した18レースのデータに、オッズのデータを追加する。
(2)オッズのARを計算し、上記の6名の予想のARとの比較を行う。
(3)6名の予想とオッズを用いて、ARがもっとも高い予想の作成を行う。

 ここで、(3)の課題に対するヒントです。いろいろな予想があった場合、ひとつひとつの予想にはどうしてもバラつきがある。あるレースですばらしい予想をしても、別のレースでは完全に外したりして、全レースでなかなかピタリとあてるのは難しい。では、このバラつきを減らすにはどうすればいいのかというと、「単に平均をとればいい」というのが「集合知」でよく知られた事実です。そうすれば、ある馬に対し、ある予想ば過大評価、ある予想は過小評価しても、その平均をとると、過大評価と過小評価が相殺して、適正な評価が得られるわけです。

実際には、ある数値に対する個々人の評価は、正規分布のような左右対称に分布するわけではない。むしろ対数正規のような、過大評価側にテールが伸びている。つまり、むちゃくちゃ大きな値を予想する人が出てしまう。この場合、単純な平均(算術平均)では、バラつきをキャンセルできず、どうしてもバイアスが残ってしまう。J.Lorenz(2011,PNAS)の実験では、スイスの平均人口密度やスイスーイタリアの国境の長さなど6問について12人の被験者に予想してもらうという実験を行ったのですが、その結果を見ると、算術平均ではひどい結果でした。人口密度は実際は184名なのに、算術平均は2644名。こうした場合は、算術平均の代わりに幾何平均を使うのがいい。つまり、データの対数の平均をとるわけです。すると、対数正規分布は正規分布に代わり、左右対称になるので、あとは算術平均し、指数関数にいれて戻してやる。これは幾何平均と同じこと。その結果は132名で、ムチャクチャ大きな予想をした人の影響をうまく消して、真の値184名に結構近づいていることが分かります。

このように、問題によっては算術平均ではなく幾何平均を用いたり、いろいろ工夫する必要があるのですが、試しに「予想の平均」を計算して、それを用いてARを計算してみました。ある馬に対し、本命1、対抗2といった数値が6名分あるので、それを全部足して6で割って平均を計算。そして、数値の小さい順に馬を並べ替えて、ROCカーブを描き、AUROCを計算してARを求める。結果が次の図です。

すると、ARは81.4%となり、柏木氏の77.6%に勝っていることが分かります。ここで課題(3)に戻ると、本命=1、対抗=2と数値を決めていますが、この数値を動かす。また、オッズの数値も適当に変換し(定数倍)、それらの数値を用いてARが一番大きくなる「方程式」を導くというものです。

各自担当レースのオッズをデータに追加し、来週の土曜日に課題の結果を持ってくること。