サッカーのゴール期待値(xG)
スポーツにおける絶対的な目標である勝利を掴むためには、どのようなプレーや戦術が有効なのでしょうか?最もシンプルな答えは、得点期待値の高いプレーを繰り返すことです。サッカーにおいてxG(Expected Goals)という概念が生まれてから、実はもう20年以上が経過しています。xGは各シュートに対して算出される得点期待値のことです。このxGが事前に分かっていれば、チームはよりxGの高いシュートを選択することができます。1シュート当たりの得点期待値を上げることで、効率的に得点を重ね、より多くの勝利を期待できるでしょう。
(以降は一般的に知られているxGと区別するために、単に得点期待値と呼びます。)
手元には過去数年分のシュートデータがあり、シュートの座標(x, y)とゴールしたかどうかを示すデータが含まれています。シンプルな得点期待値のモデルは、シュート座標だけでその得点期待値が決まると考えます。したがって、この手元のデータだけで十分に再現できでしょう。
離散的な得点期待値
まずは、手元のデータを使って全ての座標ごとの得点期待値を算出してみましょう。手元のデータの(x, y)座標は整数値しか取りません。これはデータ取得のハードウェアやデータ入力者のルールによるものです。もし座標を実数で取得できる場合は、それを1m×1mのエリアごとに集計したものと考えても問題ありません。
頻度論的に考えると、ある座標(x, y)における得点期待値は、その座標における全てのシュートデータを使って
$$
\frac{\sum\text{シュート成功数}}{\sum\text{シュート数}}
$$
となるでしょう。
例えば、ある座標(90,35)において、30本のシュートがあり、その内ゴールとなったのが10本であれば、得点期待値は0.33となります。
これをすべての座標に対して計算し可視化してみましょう。データはプレミアリーグの数年分のデータです。
右端の中央付近にゴールがあります。赤色ほど得点期待値が高く、青色は得点期待値が0です。ゴール正面付近が最も得点期待値が高く、ペナルティエリア全体にわたって正の得点期待値が分布しているように見えます。
しかし、問題点も明らかです。まず、ペナルティエリアの外側、ピッチサイド付近に複数の赤点が点在している点です。ある特定の座標(93, 63)からシュートを打てば100%の確率でゴールが決まる、そんなホットスポットが本当に存在するのでしょうか?これらのホットスポットが意味するのは、その座標からのシュートがたまたまゴールに入ったことがあるということです。同様に、得点期待値が0と示されているエリアも同じ問題を抱えています。そこから何本もシュートがあったが全くゴールに入らなかったのか、それともシュートがなかっただけであり、もしシュートがあれば得点期待値が0ではない可能性があるのかを区別できません。
連続的なxG
現実的な活用を考えると、上記の方法で求めた座標ごとの得点期待値には問題があります。そこで、フィールド全体に連続的に分布する得点期待値を求めてみましょう。手元にはシュートの座標とゴールしたかどうかのデータがあるので、ロジスティック回帰を使うことが考えられます。
$pos\_x$: シュートのx座標
$pos\_y$: シュートのy座標
$is\_goal$: シュートがゴールしたかどうか(1: ゴール、0: ゴールでない)
ゴールの中心の座標を$(goal\_x, goal\_y)$として、シュート位置からゴールまでの距離$d$
d = \sqrt{(pos\_x - goal\_x)^2 + (pos\_y - goal\_y)^2}
シュート位置とゴールの間の角度$\theta$
\theta = \arctan\left(\frac{pos\_y - goal\_y}{goal\_x - pos\_x}\right)
これらの変数とポリノミアル特徴量を使ってロジスティック回帰モデルで得点期待値を推定します。
そして、フィールド上の全座標の得点期待値を予測させヒートマップとして出力します。
まず比較のため、x座標、y座標のみを入れたロジスティック回帰
次に、x座標、y座標とポリノミアル特徴量を入れたロジスティック回帰
そして、x座標、y座標、距離、角度とポリノミアル特徴量を入れたロジスティック回帰
上の2つのモデルは、ゴールに近いほど得点期待値が高く、遠ざかるにつれて得点期待値が下がるということしか読み取れません。3つ目のヒートマップでは、ペナルティエリアが見えてきます。いずれの結果にせよ、離散的な得点期待値のヒートマップに見られたペナルティエリア外のホットスポットは消えた点は評価できます。
一般化加法モデルによる得点期待値
さらに改良版として、非線形関数によるフィッティングを考えます。
説明変数は先ほどの3つ目のモデルと同じようにx座標、y座標、距離、角度の4つを用意し、これらの2つの組み合わせのテンソル項を作成します。
目的変数は各座標における頻度論的得点期待値を利用します。
結果として、ゴール目の前の得点期待値が高いことは変わりませんが、ペナルティエリアのようなものがうっすらと見えます。また、離散的な得点期待値のヒートマップで観察されたホットスポットのような影響を受けて、左サイドのピッチ際にうっすら得点期待値が高いエリアが見えます。
まとめ
シュートを打った座標とそれがゴールネットを揺らしたのかどうか、というデータだけでも様々な得点期待値の算出ができました。特に、一般化加法モデルではもっとも柔軟にモデル化できたと思います。
実際のxGはどの部位でシュートをしたのか、ディフェンスの位置や数、直前のプレー(ドリブルかパスかクロスか)とそのスピードや角度など多様なデータを用いてより精緻に分析がなされています。
このような分析によって、得点期待値が高いプレーを生み出すための戦術を構成し、各局面においてもより得点期待値が高いプレーを選択することが可能になるでしょう。
弊社では、サッカーだけでなくバスケやラグビーのデータ分析も行っております。
取り組みの詳細やチームからの反響についてはこちらをご覧ください。
また、イークラウドにて株式投資型クラウドファンディングも開催中ですので奮ってご応募ください!
次回もスポーツデータ分析の記事を投稿します!