2014年9月4日木曜日

タイム差の連鎖で比較する方法の検証(5)

タイム差の連鎖で比較する方法の検証(4)で書いたように、今のところ、18番人気を予想するときがある。さすがにおかしいだろう、と調べてみる。2013年までの間で18番人気を予想してしまうのは、6レース。その最も最近のレースは、2012年4回阪神9日11レース。勝ったのは、17番オリービン(4番人気)で、予想した結果は10番アンノルーチェ(18番人気)である。見てみたところ、おかしな数値が出ているところはない。以下がタイム差を計算したもの。数が大きいほど、相手の馬に対して速いことを示す。なお、時間差を走破タイムで割るという調整をしているので、時間差そのままではない。そして、アンノルーチェのオリービンに対するタイム差は、-0.022085369だが、逆は、0.02186513と微妙に違う値になる。これは、その調整による差である。この値から直接のタイム差としては、オリービンのほうが速いということになる。平均値にはほとんど差がない。計算不能だった3頭を除くと、アンノルーチェより速いのは、1番クラレントと17番オリービンしかない。なぜに、これで18番人気なのか。うーん、何が問題なのか、もっと詳細を調べる必要があるな。


10 アンノルーチェ17 オリービン
1 クラレント-0.0220853690.0041351984
2 エックスダンス
3 フレールジャック-0.0015884668
4 モンストール0.0012626622-6.1875914E-4
5 ゼロス0.009481094
6 ブレイブファイト0.021263170.006194453
7 ゴールスキー0.0113776970.00542193
8 オートドラゴン0.0199577230.013366331
9 マイネルクラリティ0.018794650.012109033
10 アンノルーチェ0.02186513
11 タガノエルシコ0.0123999220.0058213435
12 ダイシンプラン0.0256952120.00988129
13 ダローネガ0.013413218-0.0023949028
14 ミキノバンジョー0.0176212840.0063157864
15 タムロスカイ0.0191193350.013514917
16 ガンダーラ0.021165427
17 オリービン-0.022085369
18 レッドデイヴィス0.0127679750.0038332231
平均0.0071950.007139

2014年9月2日火曜日

タイム差の連鎖で比較する方法の検証(4)

タイム差の連鎖で比較する方法の検証(3)で書いたバグをとった結果は、以下のようになった。今回も予想の範囲は、2001年から2013年の範囲で、80%以上データがあるレースに限っている。
的中率 23.2% 回収率 86.0%
バグってた時より、的中率も回収率もあがっている。以前にも書いたように一番人気は、以下。
的中率  32.3% 回収率 76.1%
さて、予想結果は、何番人気の馬を予想しただろうか。結果は以下。
1番人気 14545レース
2番人気 7838レース
3番人気 4752レース
4番人気 3166レース
5番人気 2231レース
6番人気 1607レース
7番人気 1047レース
8番人気 796レース
9番人気 597レース
10番人気 357レース
11番人気 252レース
12番人気 179レース
13番人気 130レース
14番人気 92レース
15番人気 66レース
16番人気 43レース
17番人気 14レース
18番人気 6レース
うーん、減ったものの、18番人気を予想するのはおかしいよなー。また、調べてみよう。

2014年9月1日月曜日

タイム差の連鎖で比較する方法の検証(3)

18番人気を勝つと予想してしまったデータがあると、タイム差の連鎖で比較する方法の検証(2)で書いた。どういうレースでそのような予想をしてしまうのか。まず、データ中で最も最近のデータを調べてみることにした。そのレースは、2013年5回京都7日目8レース。このレースで18番人気である6番マナウスを予想している。実際の結果は、17着であり、ほぼ人気どおり。詳細を調べてみると、おかしいタイム差になっているレースがあった。

6番マナウスと12番やマニンプードレとの時間差の計算のために、
まず、2013年4回京都8日目6レースで7番マナウスと8番アウトシャイン間のタイム差を計算している。このレースでは、
14着7番マナウス1.13.3
15着8番アウトシャイン1.13.3
で時間差なしである。次に、2013年2回小倉9日目12レースで2番アウトシャインと11番ノーザンソングのタイム差を比較している。
2着2番アウトシャイン1.08.4
13着11番ノーザンソング1.09.5
で時間差は-1.1である。次に、2013年4回阪神5日目7レースで6番ノーザンソングと3番ヤマニンプードレのタイム差を比較している。
あっ、ヤマニンプードレは出走取り消しになってる。

これはイレギュラーなので無視しないと駄目だ。バグであり、修正しないと行けない。

2014年8月31日日曜日

タイム差の連鎖で比較する方法の検証(2)

タイム差の連鎖で比較する方法の検証で書いたつづき。
予想がどれぐらいいいのかは、的中率と回収率で評価するしかない。しかし、オッズというのが非常によく出来ているというか、「みんなの意見」は案外正しい (角川文庫) というか、的中率が上がると回収率が下がり、的中率が下がると回収率が上がるみたいな結果になりがちだ。で、両方あげようとすると、フィルタリングをかけるのか、何らかの手段を講じないといけないだろう。

とりあえずは、この予想方法で、最も速いと予想された馬が何番人気だったのか、という結果を調べてみた。

1番人気 11856レース
2番人気  6681レース
3番人気  4298レース
4番人気  3082レース
5番人気  2290レース
6番人気  1813レース
7番人気  1384レース
8番人気  1255レース
9番人気  1032レース
10番人気  873レース
11番人気  735レース
12番人気  668レース
13番人気  561レース
14番人気  439レース
15番人気  358レース
16番人気  282レース
17番人気  67レース
18番人気  47レース

もっと、人気馬が選出されていると思っていた。いくらなんでも、この予想方法で18番人気の馬が選出されることがあるのは、少ないとはいえ、理解しがたい。もちろん、18番人気の馬が勝つ確率はある。上記のデータと同じ(2001年から2013年のレースでデータが80%以上そろっていたもの)レースで18番人気の馬は2回勝っているようだ。しかし、予想については、タイム差を使っているのだから、基本的にタイムが速い馬が選出されているはずである。人が予想する場合もタイムを見ているはずで、ある程度上位に来ないとおかしいのではないか。詳細を調べてみたい。

2014年8月30日土曜日

タイム差の連鎖で比較する方法の検証

タイム差の連鎖で比較するの考え方で書いた方法で計算をしてみた。馬の連鎖は3連鎖までとした。単純に言えば、AとBの馬の差を計算するときに、AとB直接対決した場合か、A-C(AとCが出たレースの差)-B(CとBが出たレースの差)のように、間に別の馬を1頭のみ挟んだ場合、同様にして2頭挟んだ場合を計算する。Aの強さは、A-Bのタイム差(複数ある場合は平均)、A-Cのタイム差、...、と計算したタイム差を平均したものとする。データがそろわないものは予想から外さないと行けないので、80%以上出走馬のタイム差が出た場合のみにした。予想は2001年から2013年の13年分。で、結果は、以下。

的中率 19.7% 回収率 83.1%

うーむ、なんと悪いことよ。ところで、同じレースの1番人気の的中率と回収率は、以下。

的中率 32.3% 回収率 76.1%

回収率は1番人気よりましだが、的中率はかなり悪い。だいたい予想アプリを作るとこういう傾向になる。

2014年8月28日木曜日

書評: カイジ「命より重い!」お金の話

経済学の基礎的な内容で、お金にまつわる話が書かれている。ところどころに漫画のカイジの1ページが差し込まれている。カイジの陥っている状況などを題材として、説明していく。

カイジが書かれていることで興味がひかれるような人を対象に書かれているわけで、そんなに難しい話をしてもしかたないからだろう。原則的な内容で、経済学の基礎はわかっている人なら知っているレベルのことのみで書かれている。たとえば、給料の決まり方は、資本論、つまり、必要経費で決まるという説明で書かれている。実際はさまざまな条件が絡むため、そのままというわけではないので、実感がうまくあてはまらず、逆に知らない人はこれだけ読んでも、わからないのではないだろうか。

最低賃金をあげたらどうなるか、という回答も、最低賃金で働いている人ような人が、まず、職を失う、という内容である。単純にはそう考えられるが、状況次第でそうではない。たとえば、少し前の日本のようにデフレーションで苦しんでいる時期であれば、インフレーションにうまくつながり、景気がよくなるなど、いいスパイラルにつながるかもしれない。そのような場合は、職を失うという結果にはならない。

この本はお金に対する考え方の本で、借金をしてしまうような人向けなのであるが、そういう人が読もうとするかどうかはよくわからないところだ。とりあえず、この本を読むと、カイジを読みたくなってくるのは確かだ。

2014年8月24日日曜日

タイム差の連鎖で比較するの考え方

タイム差の連鎖で比較するで、書いたようにタイム差を使った予想アプリを作成する。
考え方は単純だ。たとえば、2014年の宝塚記念を考えてみる。1着 ジャスタウェイはゴールドシップだが、メイショウマンボを除いて、他の馬とは過去に一緒のレースに出たことがある。なので、それから、タイム差が求められる。たとえば、2着 カレンミロティックとのタイム差は、
有馬記念(2013年)
3着 ゴールドシップ 2.33.8
6着 カレンミロティック2.34.3
をもとに、0.5秒差と算出できる。しかし、直接対決をしていない場合であっても、他の馬経由で算出できる。
ヴィクトリアマイル(2014年)
1着 ヴィルシーナ 1.32.3
2着 メイショウマンボ 1.32.4
ジャパンカップ(2013年)
7着 ヴィルシーナ 2.26.3
15着 ゴールドシップ 2.27.5
つまり、ゴールドシップとヴィルシーナのタイム差は-1.2秒差、ヴィルシーナとメイショウマンボのタイム差は0.1秒差、で合わせて、-1.1秒差というのが他の馬経由でのタイム差である。このタイム差は宝塚記念で実際には勝ったゴールドシップのほうが遅いということだが、たまたま大負けしたジャパンカップが算出用のレースになったのだからしかたない。このようにある馬経由で算出できるタイム差はたくさんあるはずで、それらを平均すれば、それなりに正しいタイム差が出せるのはないかというのが、考え方。
いくつも馬を連鎖すれば、誤差が蓄積されているだろうし、その組み合わせを算出するために計算量が大きくなる時間がかかるだろうから、ある程度連鎖の数はしぼるのがいいのだろう。そして、タイム差は距離によって重みが違うだろうから、単純に-1.2+0.1=-1.1ではなく、-1.2/(2.27.5秒) + 0.1/(1.32.3秒)ように走破タイムで重みを変えることにする。