0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

バスケ版ピタゴラス勝率をいじってみた(失敗)

Last updated at Posted at 2025-05-09

ピタゴラス勝率の概要とリサーチクエスチョン

ピタゴラス勝率の概要

ピタゴラス勝率とは、スポーツにおいて各チームの得点と失点から勝率を近似するモデルです。具体的には次のようなモデルです。

P = \frac{A^x}{A^x+B^x}

ただし、$A$はチームのシーズン総得点、$B$はチームのシーズン総失点です。
 スポーツ×リーグ(国)によって指数$x$の値は変化します。私はバスケのオタクなのでバスケについて話すと、NBA(アメリカプロバスケリーグ)では13~14程度、B1リーグ(日本のプロバスケリーグ)では10~11程度であるとされています。

リサーチクエスチョン

この記事で扱う話題は2つです。一つ目は、通常のピタゴラス勝率が総得点・総失点に対して共通の指数$x$を仮定しているが、総得点・失点に対して異なる指数$x_A,x_B$をそれぞれ想定すると、予測の精度が向上するのかという話題です。もし予測の精度が向上して、指数の値に差があれば、攻守どちらに力を入れるべきか洞察が得られるかもしれません。
 二つ目の話題は、共通の指数$x$の値が最近のデータを使っても10~11程度に収まっているかを確認することです。 この検討によって、これまでと同じ指数を使い続けることが妥当なのかを評価できると思っています

調査の方向性

まず、ピタゴラス勝率を一次式で表現し、最小二乗法で指数($x, x_A, x_B$)を求められるようにモデルを変形します。
 次に、建てたモデル同士を比較するために、尤度比の検定を用いて、指数を区別したモデルが、区別しないモデルに比べて、実際の勝率への説明力が上がっているかを評価します。
 最後に、その向上幅の大きさをCohen’s f^2という効果量で評価します。

ピタゴラス勝率を一次式に変換する

(*ひたすら数式をいじっているパートなので、興味のない人は飛ばしてください。)
まず、ピタゴラス勝率をロジット変換します。

logit(P) = \log(\frac{P}{1-P})

ここでピタゴラス勝率$P=\frac{A^{x_A}}{A^{x_A}+B^{x_B}}$を上式左辺に代入する。計算過程を示すために、$\frac{P}{1-P}$を計算します。まず分母を計算します。

1-P = 1 -\frac{A^{x_A}}{A^{x_A}+B^{x_B}}=\frac{A^{x_A}+B^{x_B}}{A^{x_A}+B^{x_B}}-\frac{A^{x_A}}{A^{x_A}+B^{x_B}}=\frac{B^{x_B}}{A^{x_A}+B^{x_B}}

となります。なので、

$P=\frac{A^{x_A}}{A^{x_A}+B^{x_B}}$、$1-P=\frac{B^{x_B}}{A^{x_A}+B^{x_B}}$が成り立ちます。これらを使って、

\frac{P}{1-P}=P\times{\frac{1}{1-P}}=\frac{A^{x_A}}{A^{x_A}+B^{x_B}}\times\frac{A^{x_A}+B^{x_B}}{B^{x_B}}=\frac{A^{x_A}}{B^{x_B}}

を得ます。計算結果の対数をとって、

\log{(\frac{P}{1-P})}=\log{(\frac{A^{x_A}}{B^{x_B}})}=x_A\times{\log{A}}-x_B\times{\log{B}}

となります。これで、総得点と総失点の対数をとったものと、係数(指数だったもの)によって、勝率(のロジット)を一次式で表せました。なお、総得点と総失点との間に共通する指数を想定する場合は、次のようになります。$x=x_A=x_B$なので

\log{(\frac{P}{1-P})}=\log{(\frac{A^{x}}{B^{x}})}=x\times{\log{A}}-x\times{\log{B}}=x(\log{A}-\log{B})

です。なので、対数をとった総得点と対数をとった総失点の差を変数とした一次式になります。
 あとは、実勝率のロジットを計算して、最小二乗法によって、指数($x, x_A, x_B)$を求めることができます。

結果

使用したデータセット

Bリーグ公式HPから、2022-23 ~ 2024-25シーズンの3シーズン分の、各チームの勝率・総得点・総失点を取得し、分析に使用しました。分析対象になったチーム数は72(=24チーム×3シーズン)でした。

指数&説明力の改善幅の計算

まず、指数が共通であるとした場合、$x=$10.86という結果を得ました。したがって、従来ピタゴラス勝率の計算に用いられてきた指数は、現在でも通用すると言えます。
 次に総得点と総失点で異なる指数を想定する場合。総得点の指数$x_A$として10.86、総失点の指数$x_B$として10.86を得ました。
 最後にこれらの二つのモデル(指数共通モデル、指数区別モデル)に、尤度比の検定を行いました。その結果、指数を区別しても説明力が上がるとは言えませんでした($p=0.68, n.s.$)。また、Cohenの$f^2$で評価した効果量も0.00となり、効果量の観点からも改善は見られませんでした。

まとめ

この記事では、ピタゴラス勝率に関して、①総得点と総失点の指数は区別した方が良いのか、②総得点と総失点の間で共通の指数を使うとして従来使われてきた値は現在も妥当なのか、の二点を検討しました。
 その結果、①総得点と総失点の指数は区別しても説明力は変わらないこと、②従来使われてきた共通の指数は妥当であること、が確かめられました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?