ライバルに勝つには 2.4142… 倍に賭けろ!

 確率論の概念の中でも、最も一般に有名でよく使われるのは「期待値」であろう。確かに、期待値がわかりやすく役に立つ概念であることは間違いない。しかし、便利すぎるせいか、過剰な信仰やドグマの対象になっていることも少なくない。そのことはこのブログでも折に触れて指摘してきた。

 期待値というのが、確率分布を表す最も重要な指標であることは間違いない。しかしどれほど重要な指標であっても、あくまで一つの指標にすぎず、確率分布を期待値に置き換えた時点で、多くの情報が失われるのもまた事実なのである。

 たとえば、意思決定の基準としても、期待値を最大化することを最善とする「期待値基準」だけが唯一の基準ではない。他にも、マックスミン基準、サベージ基準、マックスマックス基準などが意思決定論の学者たちによって考案されている(これらの基準については、数学者・経済学者の小島寛之氏のこのブログ記事などを参照)。これらはどれも、確率分布のうちの期待値以外の部分の情報に着目した基準だ。

 また、金融工学のポートフォリオ理論 CAPM では、期待値と標準偏差という2つの基準で投資の良し悪しを評価している。この指標を英語で言い換えものが、今や一般にもおなじみの言葉となった「リスクとリターン」だ。この考え方自体が、期待値だけでは評価基準として不十分、という認識の表れでもある。

 この記事では、期待値信仰を相対化するための思考実験として、「期待値一定の賭け」というものについて考えてみる。期待値が一定であれば、期待値だけを判断基準にすることは不可能だ。だから、それ以外の情報に着目せざるおえない。そこから導かれる結論は、期待値信仰に染まった人にとっては、多少意外に感じてもらえるのではないかと思う。

 この記事は長いので、あえて釣りっぽく先に予告しておこう。本稿の結論は、

  • 「ライバルに勝つには 2.4142…倍に賭けろ」、あるいは
  • 「勝つためには『白銀比』に賭けろ!」。
それでは、後の仕上げをごろうじろ。 (本稿の内容は、自分の知る範囲や検索した範囲では前例はなかった。しかし、徹底したサーベイをしたわけではないので、ひょっとしたら先行事例があるかもしれない。もしあったらごめんなさい。教えていただければ、しかるべき対応をすることを約束します。)

・どれに賭けても同じこと?

 実は、ギャンブルはほとんどが期待値一定だ。ギャンブルというのは基本的に、ギャンブラーが出した賭金の総額から、胴元がテラ銭をさっぴいて、その残りを勝者に与えるという仕組みだから、期待値が一定になるのは仕組み上当然なのである。

 話を簡単にするためテラ銭を捨象して考えると、ルーレットなら、赤・黒や奇数・偶数なら倍率 2 倍で確率は 1/2。1点賭けなら倍率 36 倍で確率は 1/36。競馬でも、オッズの低い馬は勝率が高く、オッズの高い馬は勝率が低い。だから、期待値だけを基準にして考えれば、どの選択肢に賭けても同じこと、ということになるはずだ。

(実は、競馬のような予想ギャンブルでは、オッズは不特定多数のギャンブラーの不正確な予想によって決まるので、これが神の目から見た「本当の勝率」と一致する保証はない。したがって、厳密には期待値が一定かどうかはわからない。もし期待値一定でない場合には、より正確な予想をできるギャンブラーが平均して勝ち越す可能性も出てくる。これは金融工学で言うとrころの、効率的市場仮説の成り立たない「アノマリー」と同じことである。先日、独自の競馬予想ソフトを使って大儲けをしていた人が、所得税法違反に訴えられるという事件があったが、この人はおそらく、そういう「アノマリー」を利用していたのではないかと思われる。が、この記事ではとりあえず、そういう問題は余談として言及するにとどめる。)

 しかし、ルーレットで倍率 2 倍に賭けるのも 36 倍に賭けるのも同じ、と言われると、素朴な実感として何か違和感を感じないだろうか。半端な知識のある人は、そう感じるの人間の直感の方が間違っている、と安易に断定するかもしれない。最近の流行に詳しい人は、行動経済学的・進化心理学的なバイアスだ、と言うかもしれない。もちろん、そういう面もある。しかし、先に言ったように、期待値が同じであっても違いを感じるという現象にも、立派に合理的な理由付けはできるのである。

 本稿では以後、このような期待値一定の賭けを、思考実験の道具として利用し、さまざまな例に当てはめることによって、期待値信仰の盲点を明らかにしていく。

・「期待値一定の賭け」のモデル化

 「期待値一定の賭け」と言っても、選択肢が赤だの黒だのオルフェーブルだのいろいろあって、対応する倍率もバラバラで、掛金も好きに選べるのでは、話が面倒になりすぎる。そこで、もっと議論に必要最小限の要素だけを残して単純化したモデルを考えよう。

 まず、選択肢は 0 より大きく 1 以下の実数ならなんでもよいことにする。この実数は、そのままその選択肢の確率を表す。期待値一定なので、倍率は自動的にその逆数になる。すなわち、確率 1/2 を選べば、倍率は 2 倍。確率 1/3 を選べば、倍率は 3 倍となる。それ以外には制限はないので、確率 1 で倍率 1 の元返しを選んでもいいし、確率 1 億分の 1 で倍率 1 億倍の大穴を狙ってもかまわない。つまり、ローリスク・ローリターンとハイリスク・ハイリターンの間を自由に選べる。掛け金は 1 に固定とする。つまり倍率と配当額は常に同じになる。

 もちろん、このモデルだけではたいして面白いことは言えない。ところが、これに少し条件をつけると、考慮に値するなかなか興味深い問題が出てくるのである。

 ・ハードルを越えろ

 まず、勝ったときの配当がそのままもらえるのではなく、それがあるハードルを越えたとき、初めて本当に勝ちになる、というゲームを考えてみよう。ゲーム中にもらえるのはポーカーチップやパチンコ玉みたいなもので、それがある量を越えると、初めて換金できる、と考えても良い。そして、勝負は 1 回きりとしよう。

 ハードルとなる量はいくらでもいいのだが、仮に 10 としようか。そうすると、誰でもすぐ気づくだろうが、倍率として元返しや 2 倍 3 倍を選択しても、まったく意味がない。当たっても絶対にハードルを越えないのだから。だから、最低でも 10 倍以上を選択する必要がある。

 では、10 倍以上だったらどれでもいいのか、と言えば、もちろん違う。期待値一定の賭けでは、倍率を大きくすればするほど確率が下がるのだから、ハードルを越えるという条件を満たす範囲では倍率は小さければ小さいほどよい。

 したがって、このようなゲームにおける最適な選択は、ハードルをギリギリ越える倍率(この場合は 10 倍)である、ということがすぐにわかる。これも極めて単純ではあるが、期待値が同じでも結果が同じにならない例である。

・ライバルに勝て

 次に、このゲームをもう少し複雑にしてみよう。今度は、プレーヤーがもう一人いて、二人の差し勝負とする。つまり、二人がそれぞれこの「期待値一定の賭け」をして、配当が多かった方が勝ち。勝った方が負けた方から一定の賞金を受け取る、というゲームだ。勝負はやはり 1 回きり。

 先のゲームでは、ハードルの高さが事前にわかっていた。だからこそ、そのギリギリ上を狙うことができた。今度は、ハードルの高さを決めるのは相手プレーヤーなので、その高さは事前にはわからない。でも、相手プレーヤーに越えられらないように自分のハードルを高目にすれば、自分が配当(チップ)を得られる確率自体も下がってしまい、相手に勝つ確率も必然的に下がってしまう。だから、選ぶ倍率は高すぎても低すぎてもダメ、というジレンマがある。

 イメージの湧かない人は、麻雀を想像するとよいかもしれない。麻雀にも、点数が安くて簡単な役と高くて難しい役があり、一局一局で作る役は自由に選べるが、最終的な勝利は一局の点数ではなく、トータルの順位で決まり、ウマとかオカとか呼ばれる大量の順位点がもらえる。

 したがって麻雀では、単純な得点以上に順位が重要で、順位に応じて安い役を狙ったり高い役を狙ったりする。しかし、この狙う役の選択自体がなかなか難しくて、麻雀のゲーム回しにおける高度な技術であることは、麻雀のお好きな人ならよくご存知だろう。

(ただし、このゲームと違って、麻雀の役の期待値は実際には一定ではないらしい。そのことは、たとえば「麻雀の常識を破る本」などにも書かれている。)

 この手のゲームの戦略は、結局は相手の心理を読んで裏をかくしかない、みたいな話になりやすい。ところが、数理的に考えると、このゲームにはもっと「合理的」な最適解がちゃんと存在するのである。今から、その最適解について説明する。実はここからが本題なので、気を入れ直して読んで欲しい。

・ゲーム理論の混合戦略を応用する

 実はこの問題は、ゲーム理論の枠組みを使うと、ゼロ和二人ゲームの変種として定式化できる。そして、ゲーム理論でよく使われる方法と似た方法で解けるのだ。

(以下の説明では、ゲーム理論の初歩的な知識を前提とする。でも、本当に初歩的な知識しか使ってないので、あまり心配する必要はない。ご存知でない方も、ネット上の情報なり参考文献なり適宜参照すれば、ついて来れる程度の話のはずである。)

プレーヤー2

戦略A

戦略B

プレーヤー1

戦略A

0

1

戦略B

2

0

 たとえば、このような利得行列で表される有限ゼロ和二人ゲームは、ジレンマ・ゲームであり、そのままでは安定した最適解は存在しない。ところが、このゲームに確率を導入し、プレーヤー1・プレーヤー2が、それぞれ一定の確率で戦略A、戦略Bを選ぶと考える。そうすると、期待値の意味(期待効用)では安定した最適解が存在する。これが有名なノイマン=モルゲンシュテルンのミニマックス定理であった。

 この場合、プレーヤー1・プレーヤー2が戦略Aを選ぶ確率 p1、p2 が、戦略A・戦略Bに代わる新たな戦略となる(戦略Bを選ぶ確率は、自動的に 1-p1、1-p2 となる)。このような確率的な戦略を「混合戦略」と呼ぶ。

 ここで先の「ライバルに勝て」のゲームを思い出そう。プレーヤー1・プレーヤー2が選択できる戦略が「確率」である、という点だけを見れば、実はこの混合戦略と同じであることに気づくだろう。「ライバルに勝て」において結果として当たりの目が出て配当を得る、ということが、このゲームにおいては確率的に戦略Aを選ぶことに対応しているわけだ。

 ただし、違う点もある。このゲームでは、p1、p2 にどんな確率を選んでも、利得行列自体は変わらないが、「ライバルに勝て」では、p1、p2 のどちらが大きいかによって、利得行列自体が変わってしまうということだ。

 p1 の方が小さいということは、プレーヤー1の方がプレーヤー2より倍率が高い、ということだから、プレーヤー1に当たりの目が出れば、プレーヤー2が当たろうが外れようが、必ず勝ちになる。プレーヤー2が勝つ可能性があるのは、プレーヤー1に外れの目が出たときだけだ。逆に p1 の方が大きいということは、プレーヤー1の方がプレーヤー2より倍率が低い、ということだから、プレーヤー2に当たりの目が出れば、プレーヤー1が当たろうが外れようが、必ず負けになる。プレーヤー1が勝つ可能性があるのは、プレーヤー2に外れの目が出たときだけだ。

 つまり、p1<p2 の場合と、p1>p2 の場合の、2 通りの利得行列が必要になるということだ。

利得行列1: p1<p2 の場合

プレーヤー2

当たり

はずれ

プレーヤー1

当たり

はずれ



利得行列2: p1>p2 の場合 

プレーヤー2

当たり

はずれ

プレーヤー1

当たり

はずれ



 完全情報有限ゼロ和二人ゲームの混合戦略の最適解の求め方は確立されていて、線形計画法で機械的に解けるのだが、この問題では、少し違う方法を工夫しなくてはならないことがわかる。

・数値計算と可視化で大雑把な解を求める

 そこでまず、数値計算と可視化で、大雑把な解の見当をつけてみよう。線形計画法自体は適用できなくても、マックスミニ基準の考え方自体は適用できるはずだから、p1、p2 に対する期待利得の関係を数値的に可視化すれば、どのへんにマックスミニ解があるか、だいたいの位置がわかるはずだ。

 なお、数値計算では具体的な数値が必要なので、以下の可視化では、プレーヤー1の勝ちの利得を 1、負けの利得を -1、引き分けの利得を 0 として計算している。

 まず、利得行列1の場合を可視化するとこうなる。

p1小なりp2の場合の期待利得.png

p1小なりp2の場合の期待利得3D.JPG

 ちなみに、上のグラフは、p1 を横軸に、利得を縦軸にとり、代表的な p2 の値を選んで二次元にプロットしたもの。下のグラフは、p1 を x 軸、p2 を y 軸、利得を z 軸にとって、三次元にプロットしたものである。

 そして、利得行列2の場合を可視化するとこうなる。

p1大なりp2の場合の期待利得.png

p1大なりp2の場合の期待利得3D.JPG

  実際の p1、p2 と利得の関係を可視化するのは、p1、p2 によって場合分けした上で、この両者を組み合わせなければならない。それをやると以下のようになる。

「ライバルに勝て」の期待利得.png

「ライバルに勝て」の期待利得3D.JPG

 さて、ゲーム理論におけるマックスミニ基準とは、相手が最善の戦略、つまり、自分にとって最悪の戦略を選んだときの、自分の利得を最大化するのが最善の戦略だ、という基準であった。

 この二次元のグラフで言えば、相手の戦略を示すさまざまな線のうちの、一番下にある線が相手にとっての最善の戦略だ。どの線が一番下に来るかは、自分のとる戦略、つまり横軸の位置によって異なるが、横軸を端から端まで眺めて、対応する最も低い線の高さが最も高くなっている位置が、マックスミニ基準による最適戦略を示す位置となる。大雑把に言えば、下側の線のもっとも盛り上がったところがマックスミニ解だということだ。

 この三次元のグラフは gnuplot でプロットしたものだが、gnuplot のようにインタラクティブにグラフを回転させる機能があれば、マウスでグリグリ回転させながらグラフを眺めるだけで、簡単にマックスミニ解やミニマックス解の大雑把な位置に見当をつけることができる。 要するに、下図のように「真横」から見ればいいのだ。

gnuplotマクシミン解はやわかり.JPG

gnuplotミニマックス解はやわかり.JPG

 さて、こうやって眺めると、だいたい p1 が 0.4 より少し大きいぐらいの位置に、マックスミニ解が存在するようだ。だから少なくとも、どの倍率を選んでも結果は同じ、ということにはならなそうだ。

 残る問題は、この 0.4 という数字に理論的にどんな意味があるのか、ということだ。最後の仕上げに、この解を理論的に解釈し直してみよう。

・解を理論的に解釈する

 このグラフを見て気づくのは、マックスミニ解を構成する山形の線が、左側の直線と右側の曲線の二本から構成されていることである。この左側の直線が何かは、多分ちょっと考えれば誰でもわかると思うのだが、これについては後で話そう。

 では、この右側の曲線はなんだろうか。これは、二次元のグラフを見た方が分かりやすいが、要するに、利得行列1の直線と利得行列2の直線との、つなぎ目の点から構成されているのである。つなぎ目の点というのは、両者が選択した倍率が同じときの点。だからこれは、p1=p2 のときの利得を表す点の集まりなのだ。

「ライバルに勝て」の「つなぎ目」図解.jpg

 二直線のつなぎ目はずれてるので、二つの接点が上下に対になって存在しているが、これはもちろん、p1 が p2 よりちょっとでも小さければプレーヤー1の勝ち、p1 が p2 よりちょっとでも大きければプレーヤー2の勝ち、と正反対の結果になることに対応している。

 先ほどの話を思い出して欲しい。一方の戦略がわかっていれば、もう一方の最適戦略は、それよりちょっとだけ倍率の大きい(確率の小さい)選択肢だ、と言っておいた。でも、その戦略をとったときに、実際にどのぐらいの利得が期待できるかについては、あえて何も言わなかった。

 このような「ギリギリ戦略」の場合、一方が選択すべき倍率自体がもう一方の選択によって変わる。だが、このときの期待利得は、どの倍率を選んでも同じというわけではないのだ。この期待利得自体が、倍率(つまり p1 および p2 の値)によって変わるのである。

 たとえば、両プレーヤーがともに、倍率 2 倍、確率 1/2 を選択した場合の期待利得を計算してみよう。両プレーヤーが当たりの目を出し、どちらも同じ倍率だった場合、本来の結果は引き分けだ。しかしここで求めたいのは、プレーヤー1にとって最悪の場合の利得(上の図で言えば、上下の「つなぎ目」のうちの下にある方の点)なので、同じ倍率だった場合は、プレーヤー2の倍率がちょっとだけ大きかったことにして、プレーヤー2の勝ちとしよう。すると期待利得はこうなる。

$$ \frac{1}{2} \times \left( 1- \frac{1}{2} \right) -\frac{1}{2}= -\frac{1}{4} $$

 同じように、両プレーヤーがともに、倍率 3 倍、確率 1/3 を選択した場合の期待利得はこうなる。

$$ \frac{1}{3} \times \left( 1- \frac{1}{3} \right) -\frac{1}{3}= -\frac{1}{9} $$

 このように、倍率を高くすればするほど、相手の倍率がそれよりほんのちょっとだけ高かった場合でも、実際に損害を蒙る確率が下がるので、トータルの期待利得は増える。つまり、選択する倍率を高くすると、最悪の場合の結果がだんだんよくなるのだ。

 では、倍率を高くすればするほといいかというと、さにあらず。ここで問題になってくるのが、先ほどあえて保留した、左側の直線である。

 実は、話の展開上あえて紹介しなかったが、この「ライバルに勝て」ゲームにはもう一つ有力な戦略がある。それは、リスクをまったくとらずに、元返しの 1 倍を選び、リスクをとりすぎた相手の自滅を待つことである。このような「無リスク」戦略は、相手がリスクを大きくとって、高い倍率を選べば選ぶほど有効になる。

 たとえば、プレーヤー1が倍率 10 倍、確率 1/10 を選択し、プレーヤー2がこの元返し戦略を選択した場合の、期待利得を計算するとこうなる。

$$ \frac{1}{10} -1 \times \left( 1- \frac{1}{10} \right) =-\frac{4}{5} $$

 同じように、プレーヤー1が倍率 2 倍、確率 1/2 を選択し、プレーヤー2がこの元返し戦略を選択した場合の、期待利得はこうなる。

$$ \frac{1}{2} -1 \times \left( 1- \frac{1}{2} \right) =0 $$

 もうおわかりだろう。相手が「ギリギリ」戦略をとった場合の結果は、自分が高い倍率を選ぶほどよくなり、相手が「無リスク」戦略をとった場合の結果は、自分が高い倍率を選ぶほど悪くなる。この両者が交わる点に最適解=マックスミニ解が存在する。

「ライバルに勝て」マックスミニ解図解.JPG

 このニ直線の交点は、都合のよいことに、義務教育で習った二次方程式を使って求められる。

  「ギリギリ戦略」の期待利得の一般式は、

$$ -p1+\left( 1-p1\right) \,p1$$

 「無リスク戦略」の期待利得の一般式は、

$$ p1-\left( 1-p1\right) $$

 したがって両者の交点は、次の方程式によって求められる。

$$ -p1+\left( 1-p1\right) \,p1 = p1-\left( 1-p1\right)$$

 この式を整理するとこうなる。

$$ -{p1}^{2} - 2\,p1 + 1 = 0 $$

 これを解くと、

$$ p1 = \pm\sqrt{2}-1 $$

 つまり、先ほど数値計算と可視化によって求めた、「0.4 よりちょっと大きい数」というのは、実は、ルート 2  = 1.41421756… から 1 を引いた数だったのである。

 これは確率だから、逆数をとって倍率にすると、

2.4142…

という無理数になる。この数は「白銀比」という別称で知られており、おなじみの A4、A5 の紙のサイズなどにも使われている有名な数である。 その数が奇しくも、この「ライバルに勝て」というゲームの最適解であったわけだ。

・勝てない「最適解」

 するどい人は気づいたと思うが、この「最適解」を選んだときの期待利得は、-0.17157… で、実は 0 より低い。だから、「ライバルに勝て」などと言いつつ、実はこれを選んでも勝つことは保証されない。あくまで負けを最小化できるだけだ。

 このへんが、1個の利得行列で表現できる完全情報有限ゼロ和二人ゲームとは違うところで、さらに言えば、この解は「均衡解」ですらない。なぜなら、両プレーヤーがこの「最適解」を選ぶと、期待値は必ずゼロになるので、それよりほんのちょっとだけ倍率を上下にずらすという動機は、常に存在するからである。 

・結論

 この記事は、期待値信仰の相対化から話を始めたが、この「最適解」自体は期待利得が最大になるという意味での「最適解」なので、そういう意味では、期待値基準を全否定しているわけではない。それでも、期待値が同じなら何を選択しても同じ、と安易に考える向きには、教訓になる部分もあるだろう。

 たとえば、スポーツなどは、結果の評価が「得点」と「勝ち負け」の二段階に分かれているものが多い。そのような競技の場合、期待得点を最大化することが、勝率を最大化するとは限らないし、期待得点が同じ戦術であっても、リスクの大小によって結果が変わるかもしれない。そのような場合に、倍率が「白銀比」になる程度のリスクをとる、というのが一つの目安になる可能性はある。

 先にちょっと言ったように、麻雀などもそういう仕組みのゲームだ。ただし、麻雀の場合は、自分が上がったときには相手は上がれないとか、対戦相手がニ人ではなく四人いるとか、いろいろ異なる条件もあるので、この数字が単純に適用できることはなさそうだ。それでも、狙う役は高すぎても安すぎてもよくない、という素朴な実感に対する傍証ぐらいにはなるだろう。

 これは半分冗談だが、人間の幸福度は、絶対的な豊かさで決まるのではなく、他人と比べたときの相対的な豊かさで決まる、というような話がある。私自身は、正直そういう考え方は嫌いだが、世の中にそういう人がいたり、心の中にそういう部分があったりすることを全否定することは難しいだろう。

 もちろん、努力だけで他人に勝てればよいのだが、世の中そう甘くはない部分もある。そんなとき、2.4142… 倍程度のリスクをとるように心がけると、ライバルに負けてミジメな思いをしなくてすむ期待値が最大化される、かもしれない。

 ただし、これはあくまでゼロ和ゲームの分析だから、あなたのライバルもあなたと同じようにあなたに勝ちたいと思っていなければ、この戦略には意味がない、ということを付け加えておく。

・付録

 この記事では、話をわかりやすくするため、勝った場合の利得を 1、負けた場合の利得を -1、引き分けの場合の利得を 0、と具体的に特定して説明した。

 しかし、この利得に一般的な変数を指定しても、同じように解が求められる。最後にその式だけ簡単に付記しておこう。

 以下では、勝った場合の利得を w、負けた場合の利得を l、引き分けの場合の利得を d とする。

  利得行列1の期待利得の一般式:

$$ p1\,w+\left( 1-p1\right) \,p2\,l+\left( 1-p1\right) \,\left( 1-p2\right) \,d $$

 利得行列2の期待利得の一般式:

$$ p2\,l+\left( 1-p2\right) \,p1\,w+\left( 1-p1\right) \,\left( 1-p2\right) \,d $$

 「ギリギリ戦略」の期待利得の一般式:

$$  \left( 1-p1\right) \,p1\,w+l\,p1+d\,{\left( 1-p1\right) }^{2} $$

 「無リスク戦略」の期待利得の一般式:

$$ p1\,w+l\,\left( 1-p1\right) $$

 マックスミニ解を求める方程式:

$$ p1\,w+l\,\left( 1-p1\right) =\left( 1-p1\right) \,p1\,w+l\,p1+d\,{\left( 1-p1\right) }^{2} $$

 方程式の一般解:

$$ p1=-\frac{\sqrt{\left( d-l\right) \,w+{l}^{2}-d\,l}-l+d}{w-d} $$

| | コメント (0) | トラックバック (0)

平均値・標準偏差の幾何学的意味

 数量的な概念を幾何学的な図形として視覚的に表現すると、より直感的に理解しやすくなります。このこと自体は、数学史においてはデカルト以来の伝統であり、なんら特別なことではありません。

 でも、平均値や標準偏差を幾何学的な図形として説明している教科書は、あまり見かけません。確率・統計において最も基本的な概念なのにもかかわらず。そこでこの記事では、私の考えた平均値や標準偏差の視覚的・直感的な説明を紹介してみたいと思います。

 これはひょっよすると、頭のいい人にとってはほとんど自明であって、あらためて説明する必要もないことなのかもしれません。でも、私のように鈍い人間にとっては、このような幾何学的な表現が理解を深めるためにおおいに役立ったのです。

 そんなわけで、この記事は私程度の知能の人向けであって、頭のいい人にとっては、「何を当たり前のことを書いてドヤ顔してるんだ」と思われるような記事かもしれないことをお断りしておきます。

 実はこの記事のアイデア自体は何年も前からあったのですが、三次元のグラフを描くのが面倒そうなので記事にするのを躊躇していました。ところが先日、GeoGebra 最新版で三次元を扱えることを知りまして、まだベータ版で不具合もいろいろありますが、この記事に必要なグラフを描くには十分使えそうだということがわかりました。それが今回この記事を書いた理由です。


 平均値や標準偏差を計算する統計データというのは、複数の数の集まりです。したがって、空間の点やベクトルとして表すことができます。2 個のデータなら二次元の点、3 個のデータなら三次元の点という風に。

 4 個以上になると、四次元、五次元…となって、日常的に生活している空間とは異なるものになり、直感的に把握することは難しくなります。でも、理屈としては三次元とそう変わりません。

 実は、このような考え方自体は、私の独創でもなんでもなく、多変量解析の本で相関係数や最小二乗法を説明する際にもよく出てきます。ここではその考え方を、平均値や標準偏差自体に応用してみようというわけです。

 ここでは、三次元の点として表現できるように、{ 5, 3, 2 } の 3 個のデータを例にとります。そしてこれを ( 5, 3, 2 ) という点としてグラフにプロットしてみましょう。 

平均値・標準偏差の幾何学的意味 - 3.jpg

 ちなみに、この図では一般的な慣例とは異なり、y 軸が画面奥の方を向いています。これは実は、数学者の故・森毅先生が提唱した方法で、先生曰く「この方が見やすい」と。確かにそうだなと思って、マネさせていただきました。視点の位置が外野席からバックネット裏に移動しただけで、野球そのものには違いはないのでご安心ください。

 さて、このデータの平均値を、グラフ上で簡単に作図する方法があるのです。そのためにはまず、U = ( 1, 1, 1 ) という点をグラフにプロットします。

 平均値・標準偏差の幾何学的意味 - 4.jpg

 この点は、実は ( 2, 2, 2 ) でも ( 3, 3, 3) でも ( 100, 100, 100 ) でもいいのですが、ここではもっとも単純な ( 1, 1, 1 ) にしておきます。

 次に、この点 U と原点 O を通る直線を引きます。

平均値・標準偏差の幾何学的意味 - 5.jpg

 そして、データの点からこの直線に垂直に交わる線(垂線)を引きます。すると…、

平均値・標準偏差の幾何学的意味 - 6.jpg

 なんと、その交点の座標がすべて平均値になっています。5 + 3 + 2 = 10 ですから、平均値 10 ÷ 3 = 3.33… ということで、ちゃんと平均値になってますね。

 さらに、この二点の間の距離を測ると、これがちょうど標準偏差のルート 3 倍になっているのです。つまり、こういうことです。

(追記: 標準偏差の係数ルート 3 をかけるのを忘れてたので修正しました。すいません)

 平均値・標準偏差の幾何学的意味 - 7.jpg

 標準偏差の係数がルート 3 になるのは、データの数が 3 個(三次元)だからで、一般には、データの数(=次元数)の平方根が標準偏差の係数になります。

 この関係は、データの位置がグラフ上のどこにあっても変わりません。こういうとき、GeoGebra がリリース版になっていれば、アプレットを使って点の位置を移動しながらインタラクティブに結果を表示することができるのですが、残念ながら現在のベータ版にはまだその機能がありません。ですから、こんな動画で我慢してください。

 ちなみにこの事実は、内積などを利用すればいとも簡単に証明できますので、興味のある方は試してみてください。

 さて、平均値や標準偏差をこのように表現すると何が嬉しいかというと、先にも述べたような、多変量解析の幾何学的な解釈と相性がよいことです。

 たとえば、相関係数の計算や最小二乗法を行うときに、データから平均値を引いたりしますが、平均値をこのように幾何学的に解釈すれば、その理由を整合的に理解することができるのです。

 相関係数や最小二乗法までさかのぼって説明するのは大変なので、以下に図だけ示しておきます。

相関係数・最小二乗法の幾何学的意味.jpg

 ごちゃごちゃして見にくい図ですが、相関係数や最小二乗法の幾何学的な意味をご存知の方なら、よく見れば意味することはわかっていただけると思います。

| | コメント (0) | トラックバック (0)

期待値の説明の大雑把さを補足してみる

 期待値というのは、確率論・統計学の中でももっとも基本的な概念で、定義もきわめて単純。だから、多くの人がなんとなくわかったつもりになっていると思う。

 「つもり」などと勝手に決め付けるようなことを書いたが、もちろん本当に頭のいい人は、教科書に書かれていないことまで自力で補足して正確に理解しているのだろう。しかし、私程度の知能の人間からすると、多くの教科書の説明は大雑把すぎて、どうも釈然としないところが残った。

 結局、自分なりにいろいろ考えたり調べたりして教科書の説明を補足することによって、最終的には納得できたのだが、世の中にはきっと、その部分を理解しないまま理解したつもりになっている人もいると思う。だからここでその私流の補足説明を紹介してみたい。

 もちろん、昨日今日思いついたことではなくて、かなり昔に勉強してた頃に考えたことなのだが、たまたま今日それを思い出したので、いい機会だから書いておく。

 そういうわけで、この記事は私程度の知能の人間向けであって、頭のいい人にとっては、「何をわかりきったこと書いてドヤ顔してるんだか」と感じるような記事かもしれないことをお断りしておく。

(いつも数式の表示に使っている CodeCogs のサーバーが死んでいたので、今回は MathJax を使ってみた。なかなか便利だと思う。)

・期待値の定義は自明か?

 期待値は通常以下のように定義される。

$$\mathrm{E}\left[ \mathrm{g}\left( X\right) \right] =\sum_{x=0}^{\infty }\mathrm{g}\left( x\right) \,\mathrm{p}\left( x\right) $$

$$\mathrm{E}\left[ \mathrm{g}\left( X\right) \right] =\int \mathrm{g}\left( x\right) \,\mathrm{p}\left( x\right) dx$$  

X は確率変数、x はその実現値、p(x) は確率密度関数である。

 この定義自体はわりと自明に見えるので、多くの教科書では、この定義を導入した後、簡単な定理をほとんど説明なしで紹介したりしている。

 たとえば、Wikipedia の「期待値」の項目(2013 年 9 月 10 日取得)では、以下の定理が証明なしで導入されている。

期待値は総和や積分によって定義されるので、総和や積分のもつ性質をすべてもっている。

線形性 E [a X + b Y ] = a E [X ] + b E [Y ]

 実は、初等的な教科書にも、こういう雑な説明の本が少なくない。どこが雑かわかりますか?

・渡される暗黙のパラメータに注目

 E[X] という表記は、一見すると関数に似ているが、厳密には関数ではない。 普通の関数は、値から値を求めるのだが、この式は、括弧の中に指定された数式と確率密度関数全体から一つの値を求める。だからこそ中括弧ではなく角括弧になっているわけで、演算子とか作用素とか呼ばれるものに近い。

 つまり、括弧の中に書かれるのは確率変数を含む数式だけだが、その確率変数の確率密度関数も暗黙のパラメータとして一緒に渡されているのだ。この暗黙のパラメータは、括弧の中の確率変数から自動的に決まるように見えるので、多くの人は別に違和感を感じず見過ごしてしまう。でも、よく考えるとそうでもないのだ。

・多変数の場合は意味が違う

 たとえば、上にも出てきた E[X + Y] という式を考えてみよう。この場合、渡される確率密度関数は何になるか。括弧の中には確率変数 X, Y と二つある。そのどちらか一方の確率密度関数では明らかにおかしい。

 実はこのような場合、渡すべき確率密度関数は、X, Y の同時確率分布の密度関数でなければならないのだ。つまり、ニ変数の場合の正しい期待値の定義はこうなる。

$$ \mathrm{E}\left[ \mathrm{g}\left( X,Y\right) \right] =\sum_{y=0}^{\infty }\sum_{x=0}^{\infty }\mathrm{g}\left( x,y\right) \,\mathrm{p}\left( x,y\right) $$

$$ \mathrm{E}\left[ \mathrm{g}\left( X,Y\right) \right] =\int \int \mathrm{g}\left( x,y\right) \,\mathrm{p}\left( x,y\right) dxdy $$

 つまり、E[X + Y] という式の意味は、そもそも多変数の同時確率分布という概念がなければ定義できないはずなのだ。

 初等的な教科書の中には、まだ一変数だけで多変数の説明をしていないうちにこの式が出てきたりする本が結構あるが、これはちょっとごまかしなのである。

・文脈によって意味が変わる

 では、この事実を前提にして、先の式をもう一度見直してみよう。E[X + Y] = E[X] + E[Y] のうち、左辺の E[X + Y] で暗黙のうちに渡されているのが X, Y の同時確率分布の密度関数であることはわかった。

 では、右辺の E[X], E[Y] についてはどうだろう? 今度は括弧の中にある確率変数は一つしかないから、その変数の確率密度関数でよいと思うかもしれないが、本当にそうだろうか。確認のため、厳密に定義通りに計算してみよう。

$$ \mathrm{E}\left[ X+Y\right] =\int \int \left( x+y\right)\,\mathrm{p}\left( x,y\right)  dxdy $$

$$ =\int \int x\,\mathrm{p}\left( x,y\right) dxdy + \int \int y\,\mathrm{p}\left( x,y\right) dxdy$$

 ここまでは確かに自明だ。だが、この二項は E[X], E[Y] と同一視できるだろうか。先に E[X] と表記したときには、渡される暗黙の確率密度関数は X だけのものだったが、ここでは X, Y の同時確率分布の密度関数になっている。変数は一つだけなのに。

 ここで試しに、この同時確率分布の周辺分布を px(x), py(y) とおいてみよう。つまり、

$$ \mathrm{px}\left( x\right) =\int \mathrm{p}\left( x,y\right) dy $$

$$ \mathrm{py}\left( y\right) =\int \mathrm{p}\left( x,y\right) dx $$

 すると、上の各項は次のように変形できる。

$$ =\int x\,\int \mathrm{p}\left( x,y\right) dydx + \int y\,\int \mathrm{p}\left( x,y\right) dxdy$$

$$ =\int x\,\mathrm{px}\left( x\right) dx+\int y\,\mathrm{py}\left( y\right) dy$$

 こうすれば、各項はそれぞれ一変数になり、一変数の期待値の定義式とあまり変わらなくなった。したがって、これを E[X], E[Y] と書いてもそうおかしくないと言えるだろう。

 だだ、同じ E[] という記号で表記されていても、暗黙のパラメータとして渡されているのは、左辺ではニ変数の同時確率分布の密度関数であり、右辺では各変数の周辺分布の密度関数になっている。つまり、文脈によって意味が微妙に変化している。

・いい加減な用法を正当化する根拠

 このような文脈によって意味が変わるようないい加減な用法が正当化されているのには、もちろん理由がある。それは、それでも別にたいして困らないからだ。

 困らない理由も、上の式の中にある。上の式では、E[X] の暗黙のパラメータとして渡す密度関数を、同時確率分布のものから周辺分布のものに書き換えることができた。つまり、E[X] の暗黙のパラメータは同時確率分布であると考えても、周辺分布であると考えても、答えは結局同じなのである。まさにこの事実が、E[X] の意味が文脈によって変わるような用法を正当化している。

 ただし、それは上のように計算してみて初めてわかることであって、定義のままでわかることではない。しかもその計算の中では、積分の順序交換を可能にするフビニの定理なども使われており、必ずしも初等的に自明とは言いがたい。

 実は、注意深く書かれた良心的な教科書では、この事実をちゃんと指摘している。たとえば、竹村彰通氏の「現代数理統計学」にはこうある。

ところで、厳密にはこの定義が 1 変数の場合の定義と整合的であることをチェックする必要がある。(中略)右辺の E(X) は X の周辺分布に関する期待値である。従ってこの場合は整合的である。より一般に新しい確率変数 Z を Z=g(X, Y) により定義する時、Z の周辺分布に関する E(Z) と E[g(X, Y)] が一致することを確かめる必要がある。このことの厳密な証明には、測度論が必要となる。 (46 ページ)

(この本は、このような初等的な教科書ではごまかされがちなところを逐一ていねいに説明した良書で、個人的には大変お勧めである。)

 ネット上では、たとえばこのページなんかにも詳しい説明がある。

・まとめ

 このように、専門家が経験的に大雑把にルーズに扱っていることには、それなりに理由があることが多いのだが、初学者にとってはつまづきの石ともなりやすい。こういうところをどれだけ親切に説明してもらえるかで、私程度の知性の人間の理解度は大きく変わってくるのだが、そういう親切な教科書は意外と少なかった。それが無知を省みずこんな記事を書いた理由である。

| | コメント (0) | トラックバック (0)

田中の稲尾越え確率を推定してみる - 対戦投手編

 「田中の稲尾越え確率を推定してみる」では田中投手の勝率を推定する方法を紹介したが、その方法は、今シーズンの田中投手と楽天の平均的な成績に基づいていた。本稿ではこれをさらに一歩すすめて、田中投手が今後実際に対戦する可能性の高いチームや投手を想定して、勝率を推定してみよう。

 ローテーション通りなら、田中投手の次の登板は 8 月 9 日の福岡ソフトバンクホークス戦、その次の登板は 8 月 16 日の埼玉西武ライオンズ戦になると予想される。

  8 月 9 日の福岡ソフトバンクホークス戦のホークス側の先発投手は、ローテーション通りなら、大場投手の可能性が高い。さらに、ローテーションを崩してきた場合も考えて、大場投手、攝津投手、帆足投手と対戦した場合の勝率を予想してみる。

 8 月 16 日の埼玉西武ライオンズ戦のライオンズ側の先発投手は、ローテーション通りなら、野上投手の可能性が高い。さらに、ローテーションを崩してきた場合も考えて、野上投手、菊池投手、牧田投手と対戦した場合の勝率を予想してみる。

  方法は「田中の稲尾越え確率を推定してみる」と基本的に同じで、楽天の得点分布の代わりに相手投手の失点分布を使っただけだが、少し修正したところもある。それは、投球イニングに合わせた失点補正の方法である。

 前回は各試合の失点数を「失点÷投球回×9」という式で補正したのだが、今回対象にした投手の中には、1 回 7 失点とか序盤の大量失点で降板してしまった投手がいて、この補正をすると逆に非現実的な数値になってしまうことがわかった。そこで今回はこの補正をせず、投球回数に関わらず失点数をそのまま使うことにした。その分投球回の少ない投手が多少有利になっていることにご注意いただきたい。

・ 8 月 9 日の福岡ソフトバンクホークス戦

・大場翔太投手

失点分布 - 大場.JPG 

田中投手の推定勝率: 0.872(正規分布) ~ 0.945(経験値)

・攝津正投手

失点分布 - 攝津.JPG

田中投手の推定勝率: 0.618(経験値) ~ 0.620(正規分布)

・帆足和幸投手

失点分布 - 帆足.JPG

田中投手の推定勝率: 0.681(正規分布) ~ 0.689(経験値)

・ 8 月 16 日の埼玉西武ライオンズ戦

・野上亮磨投手

 失点分布 - 野上.JPG

田中投手の推定勝率: 0.735(正規分布) ~ 0.789(経験値)

・菊池雄星投手

失点分布 - 菊池.JPG

田中投手の推定勝率: 0.533(経験値) ~ 0.535(正規分布)

・牧田和久投手

失点分布 - 牧田.JPG

田中投手の推定勝率: 0.675(正規分布) ~ 0.690(経験値)

・まとめ

 本稿の方法による、田中投手の予想勝率は以下の通りである。

  • 8 月 9 日福岡ソフトバンクホークス戦
    • 対大場: 0.872(正規分布) ~ 0.945(経験値)
    • 対攝津: 0.618(経験値) ~ 0.620(正規分布)
    • 対帆足: 0.681(正規分布) ~ 0.689(経験値)
  • 8 月 16 日埼玉西武ライオンズ戦
    • 対野上: 0.735(正規分布) ~ 0.789(経験値)
    • 対菊池: 0.533(経験値) ~ 0.535(正規分布)
    • 対牧田: 0.675(正規分布) ~ 0.690(経験値)

 この中で最強の敵は菊池雄星投手なので、新記録の掛かった試合で渡辺監督が菊池をぶつけてくるか、個人的に注目してみたい。

| | コメント (0) | トラックバック (0)

田中の稲尾越え確率を推定してみる

 東北楽天ゴールデンイーグルスの田中将大投手の連勝記録が話題だ。本稿投稿時点で、シーズン開幕 15 連勝のプロ野球タイ記録。賞賛すべき成績だ。しかし開幕以来と限定しなければ、シーズン連勝のプロ野球記録は、稲尾和久投手の 20 連勝。当然、次の注目はこの記録を抜けるかどうかだ。

 そこで本稿では、田中投手が稲尾投手の連勝記録を越える「確率」を推定してみたい。

 何のために? いろいろ理由はつけられるが、要はまあ一種のお遊びである。新記録を樹立しようと努力する田中選手や、新記録を期待するファンの気持ちに、水をかける気か? と憤慨する向きもあるかもしれないが、あくまでお遊びなので、寛容な態度で見逃して欲しい。確率論の応用例として、それなりに面白いところもあるだろうと思うので。

・確率モデルを選ぶ

 このような確率の予想は、結局はどのような確率モデルを選択するかで決まる。田中投手の連勝確率を推定するために、考えられるもっとも単純なモデルは、田中投手の過去の勝率から未来の勝率を予想するというモデルだろう。今シーズンの田中投手のこれまでの勝率は 10 割だから、今後の勝率も 10 割と予想される。ゆえに稲尾越えの 20 連勝の確率は 100% である。以上終わり。

 これだって一種の確率モデルには違いないが、さすがにバカすぎる。もう少しマシなモデルを考えたい。そのために、勝率の元になる要因をもっと細かく分解してみよう。田中投手の勝率は、そのような要因が相互に影響しあった結果であり、現在までの勝率 10 割は、さまざまな可能性の一例にすぎず、他の可能性もあったはずだと考えるのである。

 本稿では、要因を試合単位の得失点分布まで分解し、田中投手の失点分布と楽天の得点分布から、田中投手の勝率が決まるというモデルを採用する。このモデルは、実は「野球の短期決戦におけるリスクとリターンのトレードオフ」という記事でも採用したモデルなので、モデル自体の細かい説明はこちらの記事を参照していただきたい。

 もちろん、もっと細かくしようと思えば、いくらでも細かいモデルを考えることはできる。たとえば、野球の試合を 24 個の状態を持つマルコフ過程であると考え、その状態間の推移確率をチームの投手記録や打撃記録から推定するとか(これは実は OERA という指標の計算に使われている方法で、例の鳩山元総理大臣の論文でも引用されていたはず)。

 しかし、モデルを細かくしても労力に見合った結果が得られるとは限らないので、労力と結果の費用対効果を考えれば、この程度のモデルでもそこそこバランスがよいのではないかと思う。だいたい、そこまでやるほどヒマでもないし。

・田中投手の失点分布

 まず、田中投手の失点分布を調べよう。今シーズンの田中投手の各試合の失点数を横軸に、その失点の試合が出現した頻度を縦軸にとってグラフ(ヒストグラム)にすると、下図のようになる。

 田中失点分布.JPG

つまり、今シーズンの田中投手は、失点 0 の試合が 6 試合、失点 1 の試合が 4 試合…だったということである。

(紫色の「正規分布」というグラフは、この失点分布を正規分布で近似したものである。これについては後で説明する。)

 ただし、このグラフには一つ注釈が必要だ。「田中投手の失点」と言っても、田中投手は毎試合 9 回まで完投しているわけではない。途中で降板している試合も多い。9 回で失点 1 の試合と、7 回で失点 1 の試合のを同じように扱うのはいろいろと不都合がある。

 そこでこのグラフでは、田中投手がどの試合も 9 回まで完投したと想定して、「失点数÷投球回数× 9」という式で失点数を補正している。実際には、降板以降はリリーフ投手が投げることになり、リリーフ投手の防御率は田中投手とは異なるので、この補正方法にも問題はあるが、大雑把な近似としては使えるだろう。

・ 楽天の得点分布

 次に、楽天の得点分布を調べよう。先ほどと同じように、今シーズンの楽天の各試合の得点数を横軸に、その得点の試合が出現した頻度を縦軸にとってグラフにすると、下図のようになる。

楽天得点分布.JPG

グラフの見方も先ほどとほぼ同じだ。今シーズンの楽天は、得点 0 の試合が 4 試合、得点 1 の試合が 12 試合…だったということである。

 ただし、このグラフにも一つ注意すべきことがある。それはやはりイニング数の問題だ。一試合のイニング数は常に 9 回とは限らない。後攻のチームがリードしていれば、9 回裏はプレイされずに 8 回になるし、延長戦になれば 10 回以上プレイされる。そのようなイニング数の違う試合がこのグラフには混在している。

 取得元のデータ形式のせいもあって、このイニング数の違いを簡単に補正する方法は見当たらなかった。厳密ではないが見逃して欲しい。8 回と 9 回のイニング数の差は小さいし、延長戦になる試合もそれほど多くはないので、おそらく、それほど大きな影響にはならないと思う。

・勝率の推定 - 経験値

 では、いよいよこの二つのデータから田中投手の勝率を推定してみよう。

 先ほど紹介した田中投手の失点分布や楽天の得点分布は、あくまで経験値であった。つまり、各点数が実際に過去このような頻度で発生したという記録にすぎない。しかし、これを元に近い将来の得点分布を予想できると考えるのは自然であろう。

 田中投手のこれまでの登板試合数は 18 試合であるから、各失点の頻度数を 18 で割れば、田中投手の登板した試合がその失点になる確率の推定値になる。

 同じように、楽天のこれまでの試合数は 90 試合であるから、各得点の頻度数を 90 で割れば、楽天の試合がその得点になる確率の推定値になる。

 この得点・失点両方の確率を一つのグラフにまとめたのが下図である。

楽天得点-田中失点分布.JPG

 さて後は、このような得点・失点の分布が「独立」に発生すると仮定すれば、田中投手の勝率を推定するのはそれほど難しくない。

 田中投手の勝利になるのは、田中投手の失点が楽天の得点より小さい場合である。したがって、

田中投手の失点 0 点の確率 × 楽天の得点 1 点以上の確率 +

田中投手の失点 1 点の確率 × 楽天の得点 2 点以上の確率 +

田中投手の失点 2 点の確率 × 楽天の得点 3 点以上の確率 +

……

という計算をすればよいのだ。数学的に言えば、「独立する二つの確率分布の差の分布は、両分布の確率密度関数の畳み込み積分によって求められる」という定理の応用である。この定理、数式で見ると怖ろしげに見えるが、やってることはこれだけの話にすぎない。

(ただし、野球の場合、同点で引き分けの試合は、勝ち数にも負け数にもカウントされないので、この分は差し引いておくべきだろう。)

 実際にこのようにして計算した、田中投手の勝率の推定値は、0.775 であった。

・勝率の推定 - 正規分布近似

 これも一つのモデルであるが、実際の頻度そのものから確率を推定するのはいかにも素朴である。このような得失点の元になる確率分布があって、実際の得失点の頻度はそれが現実化した一例であると考える方が自然だ。

 世論調査にたとえて言えば、調査の結果はあくまで調査に協力した一部の人のパーセンテージであって、社会全体のパーセンテージと必ずしも同じではないのでは、と考えてみるのだ。

 ここでは、野球の試合の得失点の分布は正規分布であると仮定してみる。「野球の短期決戦におけるリスクとリターンのトレードオフ」でも書いたように、この仮定にはいろいろと問題もあるが、大雑把な近似としては有効だと考える。統計学では、これを正規母集団と呼ぶ。

 そうすれば、実際の得失点の経験値をサンプルと見なして、そこから正規母集団の平均値と標準偏差を求め、確率分布を計算することができる。それをグラフにしたものが下図である。

楽天得点-田中失点(正規分布近似).JPG

 このデータを元にすると、先ほどの経験値の場合とほとんど同じようにして、田中投手の勝率の推定値を計算することができる。

(ただし、正規分布は離散分布ではなく連続分布であるため、ここでは畳み込み積分ではなく、正規分布の線形変換が正規分布になるという定理を使って計算した。)

 実際にこのようにして計算した、田中投手の勝率の推定値は、0.807 であった。

 つまり、どちらの方法でも、田中投手の将来の勝率の推定値は、約 8 割程度ということになる。

・連勝確率の計算

 一試合の勝率が推定できれば、そこから連勝確率を推定するのは容易である。

2 連勝の確率 = 勝率 × 勝率

3 連勝の確率 = 勝率 × 勝率 × 勝率

……

n 連勝の確率 = 勝率の n 乗

という極めて初等的な計算でしかない。勝率を横軸に、連勝確率を縦軸にして、各連勝数の確率をグラフにすると、下図のようになる。

勝率と連勝確率の関係.JPG

 田中投手が稲尾投手の 20 連勝を抜くには、あと 2 連勝する必要があるが、8 割の勝率で 2 連勝できる確率は 6 割程度である。意外と低いと思いませんか? 少なくとも、冒頭で冗談めかして書いた 10 割よりは下がった。

(なんか思いっきり勘違いした記事を一回投稿してしまったが、もしそれを目撃しちゃった人がいたら、見なかったことにしてください。)

・飛びぬけた実力+ほんのちょっぴりの幸運=記録

 このグラフを見ると、そもそも、8 割程度の勝率で 15 連勝できる確率自体がかなり低いことがわかる。 結局、連勝確率というのは勝率と「指数関数的」な関係にあるので、ちょっとの勝率の差が、非常に大きな連勝確率の差として現れてしまうのである。

 「8 割程度」とか書いてしまったが、もちろんプロ野球界全体を見ても飛びぬけて優秀な勝率で、田中投手が超エースであることは疑いない。それでも、15 連勝を余裕でできる勝率とは言いがたいのだ。これがもし 9 割 5 分ぐらいの勝率であれば、15 連勝の確率も 5 割近くになるのだが。

 田中投手やそのファンからすれば心外に響くかもしれないが、上記のような分析からすると、この記録はやはり若干の幸運の産物のように見える。もちろん、それも超エース級の実力があったればこそなのであるが。

 実際に田中投手の各試合の記録を調べてみると、6~7 月は 42 イニング連続無失点の記録を作ったぐらいで、どの試合でもほとんど 0~1 点しかとられていないが、3~5 月はそこまで調子がよくなくて、2~3 点とられた試合も結構ある。ここで1回ぐらいは負けていてもおかしくなかった。

 記録が途切れそうな危ない試合は何回かあった。特に危なかったのは、4 月 23 日のオリックス vs 楽天5 月 28 日の阪神 vs 楽天、そしてつい先日 7 月 26 日の楽天 vs ロッテあたり。

 4 月 23 日のオリックス vs 楽天では、6 回まで 3 対 2 でリードされていたが、7 回に一挙 5 点をとって逆転、勝ち投手に。5 月 28 日の阪神 vs 楽天では、2 点リードされたまま 6 回で降板したが、7 回に逆転したので勝ち負けつかず。7 月 26 日の楽天 vs ロッテでは、9 回表まで 2 対 1 でリードされていたが、9 回裏に逆転して辛くもサヨナラ勝ち。

 上の分析を読んだ人の中には、相手投手が不調だったり打線が好調だったりして、たくさん点数のとれそうな試合では、投手はそれを計算に入れて手を抜くこともあるんだから、失点と得点がまったく無関係に発生するような仮定には無理があるんじゃないの? と思った方もいるだろう。しかし実際には、得点が少ないのに失点が多い試合もあったということがわかる。つまり少なくとも、田中投手が勝敗のすべてを制御できていたわけではなかったのだ。

 ちなみに、田中投手の各試合の失点と援護点の関係をグラフにすると、下図のようになる(8/10 追加)。

田中 - 自責点 vs 援護点.JPG

 図中の赤い直線は、回帰直線とよばれる直線で、失点と援護点の間に正比例的な関係があるとすればこうなる、という直線である。その傾きがほぼゼロということは、両者にほとんど関係がないことを示している。R2 というのは決定係数と呼ばれる数値で、1 に近いほど、両者の関係が比例的関係として説明できるということになる。その決定係数がほとんどゼロということは、この両者の関係は正比例ではまったく説明できないということである。

 要するに、田中投手の失点と援護点にはほとんど相関関係は見出せず、田中投手が援護点に合わせて失点を調節できているという仮説は疑わしい。しているとしても、それほど大きな範囲ではないだろう。これが両者を「独立」として扱える可能性が高いという一つの傍証になっている。

 もっとも、田中投手の調子が尻上がりに上向いていることを考えると、現時点での「勝率」はもう少し高いと考えることもできるだろう。そう考えれば、稲尾越えの確率ももう少し高く見積もってもよいかもしれない。

 あと、この方法の根本的な欠陥として、途中降板して責任投手にならずにすんだおかげで、連勝記録がとぎれなくてすむ確率というのを正しく見積もれないこともお断りしておく。

・誤解しないでね

 念のために書いておくが、私は田中投手になんの他意もなく、それどころかファンと言ってもよいくらいだ。この記事の真意は、あくまで確率論的な考え方を示すことにある。一ファンとしては、田中投手が新記録を達成することを心から願っている。

 そもそも、連勝記録などというものは、投手の実力を正しく表す指標とは言いがたい。実力のない選手にはもちろん作れないが、実力最高の選手が作れるとも限らない。そういう類の記録である。

 それで大騒ぎするのは、まあ半分はお祭りみたいなものだ。もちろん、そういうお祭りは野球のまっとうな楽しみ方の一つであり、私もそれを心行くまで楽しもうと思っている。

| | コメント (0) | トラックバック (0)

月間本塁打数の変動がだいたい「偶然」で説明できちゃう件

 プロ野球の選手は、常に同じようなペースでホームランを打つわけではない。同じ選手が、突如として大量のホームランを打ち出したり、逆にまったくホームランを打てなくなったりすることも珍しくない。

 2013 年のシーズンでも、トニ・ブランコ選手が 3~4 月だけで 15 本のホームランを打って注目を集めた。多くの人は、こういう現象を見ると、そこに何か原因があると考える。打撃に開眼したせいだとか、チームを移籍して心機一転したせいだとか、統一球の反発係数が上がっていたせいだとか。

 しかし、ホームランの数が一時的に変動したからと言って、常にそこに何か「原因」があると言えるのだろうか。単なる「偶然」ということはないのだろうか。本稿ではそれを問題にしてみたい。

 なお、本稿で紹介するデータはもともと、私が友人に個人的に見せるために作成したものだが、できてみると自分でも思っていた以上に興味深いデータになっていたので、お裾分けする次第である。

・わからないときは

 実は、本稿と同じような趣旨の記事は、以前にも書いたことがある。「三割打者では三割は打てない」という記事がそれだ。

 この記事で扱ったのは、主に打率と偶然の関係だった。本稿では、打率の代わりに月間本塁打数を対象にしているだけで、アイデアや方法論はこの記事とあまり変わらない。

 だから、本稿ではその分説明を省略させてもらうことにする。説明が少なすぎてよくわからない方は、「三割打者では三割は打てない」を併読することをお勧めする。それでもわからない場合は、後で紹介する参考文献をお読みになるとよいかもしれない。

・偶然による変動をモデル化する

 生身の選手はいろんな要因に影響されるため、何が偶然で何が必然なのかわかりにくい。そこで本稿では、純粋な偶然をモデル化するため、機械のように何があっても常に一定の確率でホームランを打つ打者を想定する。

(数学用語で言うと、本塁打を打つ過程をベルヌーイ過程と見なし、本塁打数の確率分布を二項分布として計算する、ということだが、数学嫌いな人は無視してかまわない。)

 野球記録界ではなぜか、ホームランを打つ確率を「本塁打数/打数」ではなく「打数/本塁打数」で表して、「本塁打率」と呼ぶことが慣例になっている。本稿でもその慣例を踏襲しているので、以下の記述では、本塁打率が大きいほどホームランの確率は小さく、ホームランゼロなら本塁打率∞(無限大)となる。違和感のある人は、頭の中で逆数にして考えるとよいかもしれない。

 この用語法で言い直すと、本稿では、常に本塁打率一定の打者、というものを想定するわけだ。「三割打者では三割は打てない」で説明した通り、毎打席同じ確率でホームランを打ったとしても、ホームラン数の合計は常に同じ数になるわけではなく、一定の範囲で変動する。 このような変動には、何か具体的な要因があるわけではないので、純粋に偶然による変動と言えるだろう。

 たとえば、本塁打率 10 の打者(つまりかなりの長距離打者)が 85 打数(平均的な月間打数)打ち続けたとき、本塁打数の分布は数のようになる。

月間本塁打数分布 - 本塁打率10.JPG

 一見して、本塁打数にはかなりの変動幅があることがわかる。平均は約 8 本だが、13 本以上打つ確率も、4 本以下しか打てない確率も、それぞれ 5% 程度ある。

 繰り返すが、この変動には特に好不調などの要因があるわけではなく、純粋に「偶然」だけによる変動である。

 また同じように、本塁打率 20 の打者(つまり中距離打者)が 85 打数打ち続けた場合、結果は下図のようになる。

月間本塁打数分布 - 本塁打率20.JPG

 平均本塁打数が減っているのは当然として、注目して欲しいのは、変動の幅も狭くなっていることである。

 このように機械的に常に同じ確率でホームランを打つ打者の場合、偶然による変動の幅は、本塁打率と打数によって自動的に決まり、一般に本塁打率が大きくなるほど小さくなる。

(厳密に言うと、本塁打率が 2 より小さい、つまり、本塁打を打つ確率が 0.5 より大きくなると、逆に変動の幅は小さくなっていくのであるが、そんな確率で本塁打を打つ打者は現実には存在しないので、あまり気にする必要はない。)

 この事実は、後で実際のデータを分析する際に重要な鍵となるので、覚えておいて欲しい。

・モデルと現実を比較する

 「偶然」による変動がどのように現れるかを予測する理論モデルができたので、次は、この理論モデルと実際の選手の月単位の記録とを比較してみる。そうすれば、生身の選手がどの程度偶然に左右されているかを推定できるはずである。

 次の節ではいよいよ、その比較結果のグラフを紹介するが、細かいことが気になる人のために、下にグラフの作成方法を簡単に記しておく。早く結果を知りたい人は、読み飛ばして次の節に進んでもかまわない。グラフを見て作成方法に疑問を持った方は、以下をチェックすればたいていの疑問点が解消できるはずである。

  1. 実際の記録の統計処理
    1. 記録は「プロ野球ヌルデータ置き場」から取得する。
      • このサイトを選んだ理由は、他に月単位のプロ野球記録を容易に入手できるサイトが見当たらないからである。
    2. 特定の選手を選ぶ
      • 厳密な基準があるわけではないが、ある程度ホームラン数が多く、なおかつ、ある程度長期的に安定した成績を残している選手を選んだ。
    3. 特定の選手の月単位の打数と本塁打数の記録を、入手できる限り集める。
      • このサイトのデータは 2006~2013 年の範囲に限られているので、利用したデータもその範囲に限られていることに注意。
    4. 月単位の記録のうち、打数 60 未満の記録を一律に除外する。
      • これは主に、試合数の極端に少ない 10 月の記録や、怪我で出場機会の少ない月の記録などを除外するためである。
      • この処理により、極端な不調によりスタメンを外れたときの記録も除外される可能性があり、この処理自体が確率分布に影響を与える可能性があることに注意。
    5. 月間本塁打数別の出現頻度を集計する
      1. サンプル数の少なさが原因と考えられる頻度数のデコボコがあり、隣り合う区間を平均すればより滑らかな分布になると思われる場合には、適宜区間の結合を行う。
      2. 下の例で、本塁打数が「0, 2, 4, 8…」または「1, 3, 5, 7…」ととびとびになっている場合には、この処理が行われている。
  2. 比較対象の理論モデルの計算
    1. 上で抽出した記録から、打数および本塁打数の合計を求める
    2. 打数の合計をレコード数で割って、月平均打数を求める
    3. 打数の合計を本塁打数の合計で割って、月平均本塁打率を求める
    4. 上で計算した月平均打数と月平均本塁打率から、二項分布により本塁打数分布を求める
  3. 1、2のデータを並べてヒストグラムを作成する。

・これが現実だ!

 ではいよいよ、比較結果のグラフを怒涛のように紹介していこう。グラフ中の「理論値」が理論モデルから計算した分布、「実測値」が実際の記録から計算した分布である。

・中村剛也

月間本塁打数分布 - 中村剛也.JPG

・トニ・ブランコ

月間本塁打数分布 - トニ・ブランコ.JPG

・アレックス・カブレラ

月間本塁打数分布 - アレックス・カブレラ.JPG

・阿部慎之助

月間本塁打数分布 - 阿部慎之助.JPG

・小笠原道大

月間本塁打数分布 - 小笠原道大.JPG

・山崎武司

月間本塁打数分布 - 山崎武司.JPG

・アレックス・ラミレス

月間本塁打数分布 - アレックス・ラミレス.JPG

・村田修一

月間本塁打数分布 - 村田修一.JPG

・金本知憲

月間本塁打数分布 - 金本知憲.JPG

・松中信彦

月間本塁打数分布 - 松中信彦.JPG

・和田一浩

月間本塁打数分布 - 和田一浩.JPG

・小久保裕紀

月間本塁打数分布 - 小久保裕紀.JPG

・中村紀洋

月間本塁打数分布 - 中村紀洋.JPG

・新井貴浩

月間本塁打数分布 - 新井貴浩.JPG

・稲葉篤紀

月間本塁打数分布 - 稲葉篤紀.JPG

・中島裕之

月間本塁打数分布 - 中島裕之.JPG

・井口資仁

月間本塁打数分布 - 井口資仁.JPG

・糸井嘉男

月間本塁打数分布 - 糸井嘉男.JPG

・青木宣親

月間本塁打数分布 - 青木宣親.JPG

・内川聖一

月間本塁打数分布 - 内川聖一.JPG

・鳥谷敬

月間本塁打数分布 - 鳥谷敬.JPG

・偶然には一定の幅がある

 さて、グラフをご覧になってどのような感想を持たれただろう。思いのほか理論値と実測値が一致していると感じた方が多いのではないだろうか。正直私自身、実際に計算してみるまで、ここまで一致しているとは思わなかった。

 正規分布の曲線を見慣れた方は、こういうのはだいたいこういう形になるのが普通なんじゃないの? なんて思うかもしれないが、注目して欲しいのは変動の幅なのである。

 先に、この偶然による変動の幅は、打数と本塁打率によって自動的に決まる、と言ったことを思い出して欲しい。月間本塁打数の変動が、もし選手の実力自体の変化によるものであるならば、偶然による変動の幅に律儀に一致するとは限らないはずだ。

 つまり、記録上の変動の幅が偶然による変動の幅とほぼ一致していること自体が、この変動が偶然によるものである蓋然性が高いことを示している。

・本当に好不調だとどうなるか

 では、偶然ではなく本当に選手の実力自体が変動した場合には、どのようなグラフになるのだろうか。上に挙げた選手の記録は、予想以上に理論モデルとの差が小さくて、偶然ではない変動を示すいい実例が見当たらない。

 そこで、コンピュータによるシミュレーションで人工的にそういうデータを作ってみよう。先のモデルのように本塁打率一定ではなく、本塁打率自体が周期的に変動する打者を想定し、その打撃結果をシミュレーションしてみるのだ。

 具体的には、本塁打率を三角関数を使って 5~∞ の間で周期的に変動させ、その本塁打率に基づいて 5000 打数分の擬似乱数を発生させ、月間本塁打数の分布を生成した。それが下図である。

月間本塁打数分布 - 好不調.JPG

 本当の好不調による変動は、偶然による変動の幅には必ずしも収まらないことがわかるだろう。

・独立性の仮定は正しいか

 数理統計学や確率論の素養がある方の中は、この理論モデルが前提にしている試行の「独立性」に疑問を持った方もいるかもしれない。以下はそういう人のための説明である。疑問を持たなかった人は読み飛ばしてもかまわない。

 一般の方には説明しづらい概念なので、あえてはっきり書かなかったが、この理論モデルでは、各打席が独立試行である、つまり、前の打席の結果が後の打席の結果に影響を与えることはないと仮定している。それ自体が非現実的な仮定ではないか、というのはもちろん有力な反論である。

 ところが実は、この理論モデルで予測される変動幅が実際の月間本塁打数の変動幅があまり変わらないということが、現実の打者の各打席もほぼ独立試行と見なせるという傍証にもなっているのだ。 なぜなら、もし独立試行でなければ、偶然による変動の幅も変わってくるからである。

 たとえば、独立試行とは反対に、打つときは必ず固め打ちする打者がいたとしよう。打つときは 10 打数連続で 10 本のホームランを打つが、打てないときは 0 本という極端な選手だ。この固め打ちの確率を 0.1 とすると、平均の本塁打率は 10 になって、先ほどの例と同じになる。この選手が 80 打数続けて打った結果を、先ほどの例と比較すると、下図のようになる。

月間本塁打数分布 - 固打.JPG

 極端な例ではあるが、独立試行でなくなると変動の幅自体が変わる理由が、直感的におわかりいただけるのではないかと思う。

・偶然は「定量的」に把握する必要がある 

 本稿では、実際の選手の月間本塁打数の変動が、かなりの部分「偶然」として説明できることを示した。

 もちろん、だからと言って、このような変動の「すべてが偶然だ」と断言したいわけではない。実際、偶然以外の要因もいろいろ混ざっているだろう。ただ、偶然でも説明できる部分が少なくないと言っているだけである。

 偶然としても説明できるものを、他に理由があると主張するためには、それなりの根拠が必要だ。特に根拠がなければ、多くの場合、偶然で説明できる範囲の現象は偶然と見ておくのが妥当である。

 ある現象が偶然で説明できるかどうかを判断するには、偶然で起こり得る変動の範囲を「定量的」に把握していなければならない。

 多くの人は、このような偶然による変動の幅を「定量的」に把握していない。だから、偶然でも説明できることにいちいち意味を見出そうとしてしまう。

 逆に言えば、偶然を「定量的」に把握できていて、はじめて真に偶然でない現象が判別できるのである。

・統計的検定との関係

 数理統計学の素養のある人ならとっくに気づいているだろうが、実はここでやったことは本質的には「統計的検定」と呼ばれる方法とあまり変わらない。つまり「偶然で説明できる」というフレーズを、「統計的に有意ではない」と言い換えてもそれほど間違ってはいない。

 本稿の内容を厳密に統計的検定の手続きにのっとって書き直すことももちろん可能だ。たとえば、月間本塁打数の分布が二項分布に従うと仮定して、ブランコの 15 本の本塁打が、統計的に有意な変化であるかどうかを検定する、というような問題の立て方をすると、これは二項検定と呼ばれる検定になる(二項分布に従うかどうか自体が疑問な場合には、さらにそれを検定する適合度検定という方法もある)。

 現代では、民間療法や薬に本当に効能があるかとか、放射線に本当に害があるかとか、特定の属性と能力に関係があるかとかを、統計的検定によって判定するのが普通だが、それと同じように、ブランコの本塁打が「偶然」か「実力」かを「検定」することが可能なのだ。

 ただ、本稿では一般の方でも理解できるような直感的なわかりやすさを重視して、あえてそういうスタイルをとらなかった。興味のある方は自分でやってみると面白いかもしれない。

・参考文献

Curve Ball: Baseball, Statistics, and the Role of Chance in the Game  このような話は、別に筆者の独創でもなんでもなく、ちょっと数理統計学や確率論の素養があれば、誰にでも思いつくたぐいの話である。

 現に、セイバー・メトリクスの基本文献の一つである「Curve Ball」には、本稿と同じように、一見すると因果関係があるように見えるものが、実は偶然にすぎないという話が、しつこいほど繰り返し書かれているので、本稿のような話題に興味のある方にはお勧めだ。

 「Curve Ball」には日本語訳(「メジャーリーグの数理科学」)もあるのだが、前にも書いたように、 この翻訳ははっきり言ってド素人の訳で、まったくお勧めできない。英語を苦にしない人だったら原書を直接読むことを断然お勧めする。

 原書は、統計学を知らない人にも理解できるように、きわめて親切に書かれた啓蒙書であって、難解でもなんでもない。ド素人が翻訳したから別の意味で難解になってしまっているだけだ。せっかくわかりやすい良書を書いた著者が可哀想である。

| | コメント (0) | トラックバック (0)

GeoGebra で学ぶ検出力と棄却域

 GeoGebra を利用した統計的検定入門を作ってみた。たぶん、タイプIエラー、タイプIIエラーをこれだけわかりやすく説明したサイトはまずあるまいと自負している。 興味のある人は下の画像をクリックしてみて欲しい。

注意: GeoGebra は Java アプレットとして動作するので、Java の実行環境がインストールされてないと表示できない。あしからず。

検出力と棄却域.JPG

| | コメント (0) | トラックバック (0)

「カイジ」456サイの確率分布

 「カイジ」の「破戒録篇」に出てきた 456 サイのアイデアが面白かったので、Google Doc 上でいろんな確率を計算してみた。

 Google Doc で公開しただけだと、検索にひっかかり難いみたいなので、このブログからもリンクしておくことにする。

 ネット上で似たような計算をしてる人はたくさんいるんだけど、配当の確率分布や期待値まできっちり計算してる人は見当たらなかったので、そのへんに興味のある人はチェックする価値があるんじゃないかと思う。

(前に別の記事でも指摘したことがあるが、一般の統計好きの人は、統計分析というと期待値を計算しただけで満足してしまう傾向がある。でも、期待値というのは、確率分布の数多くの属性の一つでしかない。極めて重要な一つではあるが。だから、できれば標準偏差や確率分布そのものまで計算した方が、現象への理解も深まるということを知っておくとよい。)

 このページは計算結果を羅列してあるだけなので、分り難いと感じる人も多いかもしれない。時間があれば、もっとわかりやすく整理して書き直すかもしれない。期待しないでお待ちください。

 結論だけ引用しておくと、456 サイと普通のサイで勝負したときの、配当の期待値は、

0.896

 確率分布は、

456サイの配当確率分布.png

である。そう聞くと「なんだ元本割れかよ」と思う人もいるかもしれないが、もちろん違う。

 チンチロリンというのは、博打の中では配当のルールが少し特殊で、倍払いや三倍払いといった、掛け金より損害が多い配当がある。だから、期待値を計算する際にも、他の博打のように倍率で計算すると、マイナスの倍率という見慣れない概念を導入しなければならなくなる。

 ここではそれを避けるため、倍率ではなく、所持金の増減量が掛け金の何倍かで期待値を測っている。つまり、引き分けが 0、通常の勝ち負けはそれぞれ ±1、倍付け倍払いはそれぞれ ±2、3 倍付け 3 倍払いはそれぞれ ±3 と評価している。

 だから、0.896 というのは、平均して掛け金の 0.896 倍を受け取れるという意味で、通常の倍率で言えば 2 倍弱に相当する。 やはり相当割りのいい博打と言える。

 456 サイにはピンゾロがないから、意外と得じゃないのでは? と思った人もいるようだが、上のグラフを見ればわかるように、ピンゾロの確率が低過ぎて期待値にはほとんど影響していない。 むしろ、倍付けでもなんでもない目の大小や目無しで勝つ確率の大きさが、最も期待値に影響していることがわかる。このへんも確率分布を計算してみることの効用である。

 あと、この計算では、作中には明記されていない仮定をしていることにも注意してほしい。一般的なチンチロリンのルールでは、親がゾロ目や123・456を出した場合には、子がサイを振ることなく親の総取り・総払いで勝敗が決する。したがって、親と子がゾロ目同士などで対決することはあり得ず、その場合にどちらが勝つかのルールは、特に定まっていない。

 「カイジ」の「地下チンチロ」では、親の出した目に関わらず子も必ずサイを振るルールなので、この点のルールも定まっているはずだが、作中では詳細は明記されていない(ピンゾロ同士が引き分けというのは黒崎が明言しているが)。ここでは、一般に配当の多い目の方が強いと仮定している。

逆境無頼カイジ 破戒録篇  DVD-BOX I
バップ (2011-09-21)
売り上げランキング: 5262

| | コメント (0) | トラックバック (0)

吉見と浅尾の WPA を計算してみたい

 前回の記事では、記録の上では吉見の方が上で、浅尾はイメージだけみたいな書き方をしたが、先日紹介したセイバーメトリクスの WPA のような指標を使えば、おそらく吉見と浅尾はそう遜色ないのではないかという気がする。

 日本には多分まだないが、アメリカには WPA をリアルタイムで計算して公開している FanGraphs というウェブサイトがある。そのサイトのデータによると、2011 年のメジャーの投手のうち、WPA 1 位は Justin Verlander という先発型の投手だが、2 位の Tyler Clippard という投手はセットアッパーである。 

名前 チーム WPA SV HLD 投球 防御率
Justin Verlander Tigers 5.14 24 5 0 0 251 2.4
Tyler Clippard Nationals 5.01 3 0 0 38 88.1 1.83

 なぜ投球回数が 3 倍も違うのに、WPA はあまり違わないかというと、WPA の場合、同じイニングを抑えても、試合後半や得点差の少ないときのプレイの方が、試合前半や得点差の大きいときのプレイより高く評価されるからだ。

 そのせいか、先発投手と救援投手の WPA は分けて考えるべき、と主張している人もいるし、その補正方法も提案されているようだ。

 でも WPA というのはもともと、そういう異なる種類のプレイを統一的に評価するための指標なので、限界に留意しつつも参考のために比較してみることは悪くないと思う。 

  ちなみに、今日(2011.10.20)現在の吉見と浅尾の成績はこのようになっている。

名前 チーム WPA SV HLD 投球 防御率
吉見 一起 ドラゴンズ ??? 18 3 0 0 190.7 1.65
浅尾 拓也 ドラゴンズ ??? 7 2 10 45 87.3 0.41

 この 2 つの表を比べてみれば、吉見と浅尾の WPA がそれほど遜色ない可能性はおおいにあることがわかる。

 もし時間ががあれば、自分でもこの 2 人の WPA の推定値をなんとか計算してみたいが、同時にこれを機会に、中継ぎ投手の評価方法に関する議論が深まることを期待したい。

| | コメント (0) | トラックバック (0)

WPA のシリーズ補正について

セイバーメトリクスには、選手の勝負強さや結果論としての貢献度を評価する指標がある。「メジャーリーグの数理科学」で紹介されている PWA や PGP もそうだし、最近の FanGraphs などでは WPA (Win Probability Added) などと呼ばれている。

 これは打点を精密化した概念と考えればわかりやすい。打点の場合、選手の特定のプレイ前後の得点の変化をその選手の貢献度としてカウントするが、WPA の場合、得点の変化の代わりに、勝率の変化をカウントする。

 勝率の変化なんてどうやって計算するのか、と思う方もいるかもしれない。細かい説明は、それこそ「メジャーリーグの数理科学」でも(できれば英語版で)見て欲しいが、簡単に言うと、イニング別・点差別の勝率のデータと、出塁状況・アウト数別の得点期待値のデータがあるので、これを組み合わせて計算するのだ。この 2 種類の確率は、マルコフ過程のような確率モデルからも計算できるし、経験的な統計データから計算されたものもある。

 「メジャーリーグの数理科学」では、この PGP を使って、記者投票によるワールド・シリーズの MVP が妥当だったかという検証を行っている。

 この件を読んでいたら、ふと閃いた。

 そもそも、なぜ得点の代わりに勝率をカウントするかというと、野球の目的は、得点を最大化することではなく、勝率を最大化することだからだ。でもその論法で言えば、ワールド・シリーズの真の目的は、個々の試合に勝つことではなく、シリーズ全体に勝つことなんだから、PGP (や WPA)をそのままシリーズ MVP の評価に使うのはおかしくはないか。

 そうだそうだ。ふっふっふ、セイバーメトリシャンもまだまだ甘いな。私はそう嘯きながら WPA を短期決戦シリーズ用に補正する方法を計算しかけたのだが、いや待て、世の中そんなに甘くないぞ、と思い直して、"WPA series adjust" などと入力して検索してみた。

 そしたら、案の定ありましたよ。 こんな記事が。

Ranking most valuable World Series HRs

While WPA is a great tool, the overall objective is to win the series as opposed to winning each individual game. We need to look at how much that play increased a team’s chances of winning the series, as opposed to just the game.

To adjust for this second level of leverage, we need to find a way to go from “Game WPA” to “Series WPA," or the change in the probability the team would win the series from before the play to after the play. Series WPA can be expressed as a product of Game WPA and the leverage of the game in the series.

Series WPA = (Leverage of Game in Series)*(Game WPA)

“Leverage of Game in Series” can be defined as the probability the team wins the series if it wins the game in question minus the probability the team wins the series if it loses the game in question.

 この記事がセイバーメトリクス界でどう評価されているかはよく知らないのだが、私は基本的に同意する。 少なくともその方が考え方として首尾一貫しているからだ。

(もちろん、選手の能力は常に一定であり、勝負を左右する場面で打ったのはたまたまの結果論である、という正反対の考え方もできるが、セイバーメトリクスにはそういう考え方(いわば成果主義に対する能力主義)の指標もちゃんとある(RC や LSLR など)ので、これはこれでいいんじゃないかと思う。成果主義と能力主義のどっちが「正しい」かは、また別の問題。)

 というか、本当はシリーズだけではなく、ペナントレースにも同じことが言えるはずなんだよね。ペナントレースの目的は、個々の試合に勝つことよりも、リーグ優勝することだとも言えるわけだから。

 たとえば、昨日の中日・ヤクルト戦で、浅尾が最後に飯原から奪った三振は、開幕戦でネルソンが奪った三振よりも、(成果主義的な発想に立てば)はるかに優勝貢献度は高かったはずだ。

 実は私は、ペナントレースについても同じ方式でリーグ優勝確率の変化を計算しようとしたことがあるのだが、これはかなり難しい。なぜかというと、ペナントレースはリーグ戦なので、直接対決だと自チームの勝率が上がるだけではなく、相手チームの勝率も下がったりするからだ。結局、考えているうちに面倒になって投げ出してしまったのだが、これをちゃんと定式化できれば、セイバーメトリシャンに勝てるかもしれない。誰か挑戦してみないか。


付録: 上で引用した記事には、肝心のレバレッジの計算方法が明記されていないので、私が使った方法を一応書いておく。と言っても別にたいした方法ではなく、ちょっと確率論の素養のある人なら誰でも思いつく方法だが。

 まず、試合の勝率をどの試合も 5 割と仮定する。勝率を事前に推定する方法があれば別に変更してもよいが、日本シリーズは異なるリーグの対戦だから勝率データがないことが多いし、あったとしても 5 割とそう大きく違わない可能性が高いだろう。 (違う勝率で計算したい場合には、以下の式の 1/2 や 0.5 を適宜書きかえればよい。)

 シリーズが 7 試合制で、計算対象のチームが m 勝 n 敗だとすると、その時点でのチームのシリーズ優勝確率は以下の式で計算できる。

難しげに見えるかもしれないが、これは実は初歩的な二項分布の累積分布関数にすぎない。

 この式を使って、あらゆる勝数・負数の組み合わせについて、シリーズ優勝確率を計算するには、スプレッドシートを使う。

 まず、以下のように、行列の見出しに勝数・負数を入力した表を作る。

勝/負 0 1 2 3 4
0          
1          
2          
3          
4          
そして、各セルにこんな式を入力する。
=BINOMDIST(3-B$1,7-($A2+B$1),0.5,TRUE)
これはセル B2 用の式だが、相対参照と絶対参照を使い分けてあるので、他のセルにもこのままコピーできる。ただし、4 敗の列だけはエラーになる。4 敗した場合にシリーズに勝つ確率は 0 なので、数値として 0 を入力しておく。
 計算した結果はこのようになる。
勝/負 0 1 2 3 4
0 0.5 0.344 0.188 0.063 0
1 0.656 0.5 0.313 0.125 0
2 0.813 0.688 0.5 0.25 0
3 0.938 0.875 0.75 0.5 0
4 1 1 1 1  
  数値だけではイメージが涌きにくいので、グラフにしてみよう。負数を固定して、勝数に対するシリーズ勝率の変化をプロットするとこうなる。

シリーズ勝率.JPG

 傾きが大きいところほど勝率の変化が大きく、「レバレッジ」が大きくなる。3 勝 3 敗の後の 1 勝が最も重要度が高いのは常識的な直感と一致する。

 WPA に影響するのは、勝数・負数が増えたときのシリーズ勝率の変化である。勝・負の影響を同時に見るために、ベクトル解析の概念を応用して、グラディエント(勾配)を計算してみよう。そうすれば、各試合がシリーズ勝率に与える影響の大きさを統一的に見ることができる。 (グラディエントを知らない人は、とりあえず微分係数の多次元版だと思えばよい。)

 そのためには、上の表の少し下に、同じような表を作って、各セルに以下の式を入力すればよい。

=SQRT(POWER(C2-B2,2)+POWER(B3-B2,2))

これは 0 勝 0 敗のセル用の式だが、相対参照なので、縦横にコピーするだけで表が完成する。隣のセルとの差をとっているので、計算できるのは 3 勝 3 敗のセルまでである。

実際に計算した結果はこうなる。

勝/負 0 1 2 3
0 0.221 0.221 0.177 0.088
1 0.221 0.265 0.265 0.177
2 0.177 0.265 0.354 0.354
3 0.088 0.177 0.354 0.707
 
数値のままではイメージが涌きにくいので、グラフにしてみよう。今度は勝数・負数とグラディエントの関係をまとめて見れるように、3 次元にプロットしてみる。

シリーズ勝率勾配.JPG 

 各試合の重要度は、勝数・負数の差が少ないほど大きく、なおかつ、勝数・負数が多いほど大きい、という傾向がはっきりわかる。

| | コメント (0) | トラックバック (0)