階層ベイズモデルでサッカーチームの攻撃力と守備力を推定する【プレミアリーグ編】

  • このエントリーをはてなブックマークに追加

階層ベイズモデルを用いて、プレミアリーグの主要チームの攻撃力と守備力を時系列で推定しました。
過去に書いた、一般化線形モデルのポアソン回帰を用いて攻撃力と守備力を推定した記事と、サッカーの勝敗予想をベイズモデル化した記事の合わせ技 + αな内容となっております。

目次

 

はじめに

利用したデータ

データは football-data.co.uk のプレミアリーグのデータを10年分使用しています。
どの国のリーグでも言えることですが、下位チームの降格、下位リーグの上位チームの昇格があります。
下図の通り、シーズンごとにプレミアリーグに参加しているチームが異なっています。

team_participation

各チームごとにプレミアリーグに参加した年は黒丸をプロットしています。
X軸に記載されている年は、その年から始まるリーグを意味しています。2005だったら、2005-2006シーズンのデータです。
また、今シーズンのデータに関しては、2015年3月22日に行われた試合までを対象としています。

分析対象とするチーム

今回は10年間プレミアリーグでプレイし続けているチームに関して、チームの攻撃力と守備力の推定結果を紹介します。
該当するチームはArsenal、Aston Villa、Chelsea、Everton、Manchester City、Manchester United、Tottenham の7チームでした。
この7チームに関して、攻撃力と守備力を定量的に見てましょう。
 

モデル

前提

以前の記事と同様、ゴール数はポアソン分布に従うという前提のもとモデルを構築しています。
ポアソン分布のパラメータであるλをいかに推定するかという問題になるわけですが、
ざっくり表現すると、

LambdaHome = exp(Baseline + HomeAttack - AwayDefense + HomeEffect)\\LambdaAway = exp(Baseline + AwayAttack - HomeDefense)

という形でλを推定しています。

このモデルの前提として、
・各チームの攻撃力・守備力は前年の攻撃力・守備力を平均とする正規分布に従う(分析初年度の2005年を除く)
・各チームの攻撃力・守備力のばらつきはチームごとに定義され、10年間で一定である
・各チームの攻撃力・守備力はシーズン中の変化しない

詳しくは下記コードで。

モデルのJAGSコード

RからJagsを叩いており、Rから下記のパラメータを投げています。

YH ホームチームの得点数
YA アウェイチームの得点数
XHT ホームチーム
XAT アウェイチーム
XS シーズン
XNG 10年間の総試合数
XNT 10年間にプレミアリーグでプレーしたチーム数
XNS シーズン数


MCMCの計算と結果

n.iter=105000, n.burnin=5000, n.chains=3で収束しました。※1


分析結果の見方

結果のサンプル

ArsenalAttackStrength



こんな感じで10年分の変化をプロットします。

Y軸の数値の意味

上で紹介したホームチームのλの計算式を分解すると、

LambdaHome\\= exp(Baseline + HomeAttack + AwayDefense + HomeEffect)\\= exp(Baseline)\times exp(HomeAttack)\times exp(AwayDefense)\times exp(HomeEffect)
ここでBaselineは

2005 0.04590155
2006 0.019349518
2007 0.047285737
2008 0.021237398
2009 0.059335881
2010 0.10370445
2011 0.123273471
2012 0.112604102
2013 0.082352007
2014 0.045952234



という結果になっています。
話を単純化するため、BaselineとHomeAttackだけを見てみましょう。
今年の攻撃力の値を見るとして、2014年のBaselineを仮定します。

exp(Baseline)\times exp(HomeAttack)\\= exp(0.045952234)\times exp(HomeAttack)
でホームチームの攻撃力が0.5だとすると

= exp(0.045952234)\times exp(0.5)\\\approx 1.047 \times 1.648
λを押し上げる分だけを考慮すると

\approx 1.047 \times 0.648= 0.678
となり、攻撃力が0.5ということはλを0.678だけ押し上げる要因となります。

λってなんだったっけ

今回のモデルは最終的にはλを推定しているわけですが、このλが何だったか、今一度確認しておきましょう。
推定しているのはポアソン分布のパラメータであるλです。

ポアソン分布は下記の式で定義される確率分布です。
P(X = k) = \frac{\lambda^k\mathrm{e}^{-\lambda}}{k!}
「単位時間中に平均で λ 回発生する事象がちょうど k 回発生する確率」
今回のケースにあてはめて意訳すると
「90分間に平均で λ 得点するチームがちょうど k 点いれる確率」
つまり、1試合で期待される得点数ですね。(実際ポアソン分布の期待値はλです)

というわけで、「攻撃力が0.5ということは、λを0.678だけ押し上げる」ということは
「攻撃力が0.5ということは、1試合で期待される得点数を0.678点押し上げる効果がある」
という意味です。

これは単純化した話なので、実際にはこれらに加え、相手チームの守備力・ホームチームの効果が加味されます。

濃いグレー・薄いグレー

図中の黒実線のまわりの濃いグレーはMCMCによって推定されたパラメータの50%区間、
さらにその外側の薄いグレーの部分は95%区間を示しています。

 
図の前提の説明が長くなりましたが、結果をみてみましょう。

 

分析結果

Arsenal

ArsenalAttackStrength
ArsenalDefenseStrength

今シーズンは攻撃が過去最高クラスになっている模様。
また、2012シーズンには前年に比べ、守備が結果を出しています。
2012シーズンってコシールニーがフェルメーレンからレギュラーを勝ち取ったシーズンです。

 

Aston Villa

AstonVillaAttackStrength
AstonVillaDefenseStrength

緩やかに衰退しています。特に攻撃。
守備力は2012シーズンから徐々に上がっています。
2012シーズンの夏って現主将でディフェンダーのロン・フラールが加入した年なんですよね。

 

Chelsea

ChelseaAttackStrength
ChelseaDefenseStrength

近年チェルシーといえば、2009シーズンですね。
リーグ戦優勝、FAカップ優勝と2冠を達成した年です。シーズン通算で103得点し、当時の最高記録を塗り替えました。
その後に低迷し、徐々に盛り返している模様。
今シーズンはジエゴコスタ等、攻撃陣の補強がうまくいき、2009シーズンに近い水準の攻撃力となっています。

 

Everton

EvertonAttackStrength
EvertonDefenseStrength

順調に伸び、2012シーズン、2013シーズンあたりがピークです。
今シーズンは良くないですね。

 

Liverpool

LiverpoolAttackStrength
LiverpoolDefenseStrength

攻撃は2,3シーズンごとに好不調を繰り返しています。守備は徐々に衰退。
2012シーズンと2013シーズンは攻撃力が大きく伸びていますが、完全にスアレスの仕業です。

 

Manchester City

ManCityAttackStrength
ManCityDefenseStrength

攻撃・守備ともに0付近だったのが、今や、リーグトップクラスです。
そもそも2005シーズンとか15位ですから、わりと降格ギリギリなわけです。
皆さんご存知の2008年にUAEの投資グループ、アブダビ・ユナイテッド・グループに買収されてからの躍進が凄いですね。

 

Manchester United

ManUnitedAttackStrength
ManUnitedDefenseStrength

昨シーズンは結果を残せませんでした。とは言え、2005シーズンとほぼ同等の実力となっています。
チェルシーやシティなどがこれを上回る実力をつけているため、リーグ内の順位という結果には結びついていないようです。
今期は攻撃陣を大型補強したにも関わらず、守備陣の方が結果をだしているように見えますね。

 

Tottenham

TottenhamAttackStrength
TottenhamDefenseStrength

守備力は2011シーズンを境に絶賛下落中です。
2013シーズンが始まる前の夏に大型補強を行なったにも関わらず、2013シーズンは結果が出ていませんね。

 

おわりに

というわけでプレミアリーグ編でした。
次回は別のリーグのチームごとの能力を推定します。
Jリーグも分析したい。乞うご期待!



参考サイト
http://www.sumsar.net/blog/2013/07/modeling-match-results-in-la-liga-part-one/
http://heartruptcy.blog.fc2.com/blog-entry-68.html

  • このエントリーをはてなブックマークに追加