Contents
はじめに
初めまして、東大ア式蹴球部(以下ア式)テクニカルユニットで今シーズンからデータ分析長を務めている新3年の木下です。テクニカルユニットとは、実際にプレイヤーとしてピッチに立つのではなく、ピッチ外からさまざまな形でプレイヤーをサポートするユニットのうちの一つです。その活動内容は、対戦相手の戦術や個人の特徴などを徹底的に分析し、監督やOBコーチなどのコーチ陣とミーティングを重ねながらア式の戦い方を決定していくことであったり、実際の試合を振り返り選手らにパフォーマンスに対するフィードバックを行い、彼らの成長の手助けをすることであったりと、多岐に渡ります。
そうした活動の根底を支えているのが日頃の練習、そして試合から得られる数多くのデータです。世界の最先端を行くヨーロッパのプロクラブにおいては、近年データ収集のテクノロジーや分析手法が格段に進化しており、また望めばデータを手に入れられる資金力があるため、分析に積極的にデータを活用しています。投資を惜しまず、優秀なデータサイエンティストをクラブに引き入れ、彼らがクラブを更なる高みへと導いています。
もちろん、ア式は大学の部活動であり、アマチュアクラブに過ぎません。しかしだからといって最初から諦めるのではなく、これまでに我々テクニカルユニットは「日本一のスポーツアナリティクス集団」になるべく、限られたデータを活かすア式独自の方法論を確立してきました。今回この記事では、ア式のデータ分析の取り組みのほとんどすべてを書き連ねています。濃い内容となっていますので、最後まで読んでいただけると嬉しいです。
データ収集〜ソフトウェア・デバイスの活用
ア式のデータ分析のサイクルは大きく三つに分けられます。データの収集/データの算出・可視化/フィードバックです。まずはア式がどのようにデータ収集を行っているかを説明します。
Hudlを用いた試合のタグ付け
現在ア式はHudlという試合のタグ付けを行うことのできるソフトを用いています。撮影した試合映像にシュート、パス、ポゼッション、トランジションといったタグを付けることで、指定のタグが付いたシーンだけを見返す、などといったことが可能になります。
これに加えア式はHudl Assistというサービスと契約を結んでおり、このサービスを利用することで撮影映像を送信すればタグ付けされたものが数時間後に返ってきます。これにより、ゴールやアシストはもちろんのこと、パス本数やポゼッション、シュート本数やシュート位置などの各スタッツのレポートを(時間帯ごとに)確認できるようになります。
Catapultによるトラッキングデータ
Catapultとは、いわゆるGPSデバイスです。プレイヤーが練習や試合の際に体に装着することで、0.2秒ごとのトラッキングデータを得ることができます。具体的には、主に緯度経度で表された位置情報、速度、心拍の三つです。練習や試合の後にパソコンに接続し、得られたDB3という拡張子のデータベースファイルを部で共有しているGoogleDriveにアップロードします。ただし、データベースファイルはそのままではデータの中身を理解しやすい形でコーチ陣に提供することはできないので、後述するデータの処理・可視化といった作業が必要となります。
FL-UXを用いたリアルタイムのタグ付け
上記二つは昨シーズンから用いていましたが、現在導入段階にあるのがFL-UXというソフトです。Hudlが試合後にタグ付けするのに対し、このFL-UXはリアルタイムで映像にタグ付けすることができます。これにより、例えば試合の前半を見ながら気になるシーンにタグ付けをし、ハーフタイムにそれらのシーンをコーチ陣に見せるというようなことが可能になります。動画編集も簡単にできるようになっており、今後かなりの活躍が見込めそうですが、具体的にこのソフトをどう使いこなすかはこれから模索していくことになりそうです。しかし既に試合のリアルタイム分析の取り組みは始めていて、部室の分析室に試合映像をLiveで送り、そこでの複数のテクニカルスタッフの分析をベンチにリモートでフィードバックすることもできます。
その他の手集計
これらのソフトを利用すれば確かにデータ収集はより簡単になりますが、それでもサッカーのデータ分析を行うにはまだまだデータが不足しています。幸い、ア式のテクニカルユニットは先輩方のご尽力のおかげで徐々に東大に合格した新入生にも認知されるようになり、現在では約15名の人員を擁しています。分担して、誰から誰へパスが通ったか、どのエリアでボールを失ったか、どのエリアから侵入したか(侵入を許したか)などを、試合を見返すことで人の手で収集していきます。収集するのは毎試合のフィードバックに用いるデータだけでなく、その時々のコーチ陣や選手の要求に応じてフレキシブルに対応します。また、試合を見返す際にHudlのタグが威力を発揮します。
データの算出・可視化〜自動化システムの運用
例えばHudlから得られるスタッツなどは、データを収集するだけでもある程度フィードバックに使うことができますが、データを加工処理しより高次なデータを算出することでフィードバックの質を高めることができます。これにはある程度のプログラミング技術が求められますが、そこは東大ア式テクニカルの腕の見せ所と言えるでしょう。
また、重要になってくるのがこれらの作業を「共有」かつ「自動化」することです。昨シーズンまでの課題として、データの算出はできるものの、書いたコードが散乱していて他のテクニカルスタッフに共有できていなかった点や、それに伴い欠損値の処理などの前処理を毎回人の手で行っており作業を特定の個人に依存しすぎていた点が挙げられます。今シーズンは、これらを改善するため、Google Colaboratory(無料で、環境構築を必要とせずブラウザからプログラミング言語の一つであるPythonを記述・実行できるサービス)を用いて、可能な限り誰でもデータの算出・可視化が行えるような、また可能な限り自動でそれらの作業を終えられるようなコーディングを行い、既に以下に紹介するデータのうちいくつかではその一連の自動化システムを運用しています。
xGとPPDA
主にHudlから算出できるより高次な指標として、xGとPPDAを紹介します。xGはサッカーに精通している方ならご存知かと思いますが、「ゴール期待値」のことです。シュートの位置や周りのディフェンダーの位置などからゴールに入る確率を求め、それを累計していくことで「本来ならn点決めているはずだった」や「本来ならm失点しているはずだが無失点に抑えられた」など理想と現実のギャップを認識できる他、「ここで劇的に流れが変わった」という時間帯も導き出すことができます。これはゴールを連続的な数値として解釈することを意味しています。
これはある練習試合(45分×3本)のxGです。75分〜90分の時間帯以降相手に試合の主導権を握られてしまったことが見て取れます。ア式では、Hudlによりシュートの位置と時間帯のデータを得られるので、簡易版のxG算出が可能というわけです。
もう一つ紹介したいのがPPDAです。これは「Passes Allowed Per Defensive Actions」の略で、相手チームに許したパス本数をこちらの守備アクションの数で割ることで得られる指標です。これによりプレッシングの強度を測ることができます(本来はカウントするエリアを定めることが前提となります)。Hudlのトランジション、ファウル、シュートブロック、アウトオブプレーなどのタグを用いることでこれも擬似的なア式版PPDAが算出可能です(xGもPPDAもタグの時間を手集計する必要があるので少し大変ですが)。
フィジカルデータ
Catapultから得られる速度と心拍を加工することで、さまざまなフィジカルデータを算出することができます。まず真っ先に頭に浮かぶのは走行距離でしょうか。これは速度を時間で積分することで簡単に求められます。また、反対に速度を時間で微分することで加速度も求められます。さらに、時速v キロメートル以上をt秒持続したらスプリント1回とする、と定義してその回数をカウントするコードを書けば、スプリント回数も求められますし、加速度に対しても同様のことが可能です。
心拍は少し問題があり、なぜかというとプレイヤーは試合中に激しく動くためデバイスが胸の位置からずれてしまい、欠損値を含むからです。しかし、欠損値が少ない場合は移動平均などを適用し補完することでより信頼度の高いデータを出す工夫をしています。心拍の説明変数となり得る他の指標を用いてモデリングを行い、心拍を予測して補完するということにも挑戦しましたが、現時点では精度の高いモデルはできていません。この心拍からは、心拍の最大値に対する割合ごとに重みをつけて時間で積分していくことで、心肺機能にかかる負荷を測る心拍負荷という指標を出しています。また、毎日の練習後にプレイヤーに対して主観的な疲労度を自己評価してもらうアンケートをとっており、bot化して(自動化して)共有しているのですが、スプリント回数などのデータや心拍負荷といった客観的疲労度とこの主観的疲労度を比較検討することで、その相関について分析するという取り組みも行っています。信頼度の高さは未知数であり、今後本や論文などを読んで勉強していきたいと考えています。
こうしたフィジカルデータは主にフィジカルユニットのスタッフと連携をとりつつ、プレイヤーのフィジカル向上や怪我防止のための練習の負荷調節に活用しています。必要に応じてプレイヤー個人にもフィードバックすることで、数字を使って目的意識を持たせることができます(次の試合はスプリント回数がn回を超えるように頑張ろう、など)。
現在では、GoogleDriveにアップロードされたDB3ファイルをGoogle Colaboratory上で読み込み、日付を入力すればその日の練習または試合の全プレイヤーのフィジカルデータを表示でき、プレイヤー名を入力すればそのプレイヤーのフィジカルデータを時系列で表示できるという自動化システムを完成させ、運用しています。
パッキング・レートとパスマップ
パッキング・レートとは端的に言えば「一本のパスで何人の相手選手を越えることができたか」を表す指標です。これにより各プレイヤーがどれほど効果的なパスを出せていたか(効果的な位置でパスを受けられていたか)を数値で評価することができます。
例えば上の画像では一本のパスで3人の相手を越えたので3点(パスの受け手が前を向けなかったら3×0.2=0.6点というように重みを変える)となります。例えばただパス本数が多くてもそれが相手の守備ブロックの外を回しているだけなら効果的とは言い難く、この指標はそこを考慮して評価できるという点で有益だと言えます。パス集計は手で行いますが、スコアの算出などはGoogleスプレッドシートの簡単なテンプレートを作成し可能な限り自動で行っています。
ここまでたくさんのデータ・指標について説明してきましたが、今回一番紹介したいのがパスマップです。これはグラフ理論(ネットワーク図)を用いて対象チームの一試合の挙動を表したもので、以下が実際にプロの試合のデータサイトで用いられているものです。
選手の丸(ノード)の位置はその試合の平均ポジション、丸の大きさはどれだけパスに関わったか、矢印(エッジ)の太さ、濃さはどれだけその選手間のパス交換が行われたかを表しています。これはパッキング・レートを算出する過程で集計したパス本数のデータをCatapultから得られる位置情報と組み合わせることで作ることができます。Googleマップの航空写真から試合が行われたピッチの緯度経度を求め、それとプレイヤーの緯度経度をピッチ上のある一点を原点とする平面直角座標に変換し、ピッチの向きと座標軸の向きが揃うように回転して補正してあげることによって、以下のようにプレイヤーの移動の軌跡をピッチ上に落とし込むことができます。この軌跡の平均値をとれば、平均ポジションを算出できるというわけです。ただし、給水やハーフタイムの時間はノイズとして取り除かなければならず、この部分のコーディングは大変でした。また、さらに応用してヒートマップやボロノイ図まで算出することができます。
平均ポジションを算出したら、あとは集計したパス本数に合わせて丸と矢印の大きさ、濃さを調節してプロットしてあげれば完成です。集計したファイルの読み込みやCatapultデータとの連結も含めて、パスマップの表示もすべてGoogle Colaboratory上で自動化することができました。実はこの記事やリーグ戦の開幕に間に合うよう急いで完成させたため、本格的な運用はこれからしていくことになります。時間帯ごとに表示することも可能で、攻め込んでいたか、攻め込まれていたか、どのような配置(戦術)をとったか、誰が中心となってパスを繋いでいたか、どこから前進できていたかなどが一目でわかるため、今後フィードバックの質が高まることが期待できます。また位置情報は手に入らないものの、パス集計は可能なため相手チームの戦術分析にも大いに活用できると考えられます。
フィードバック〜レポートの作成
このようにア式では複数のソフトの活用やプログラミング技術によりさまざまなデータの算出・可視化に成功していますが、データそのものだけに頼って試合の本質を見抜くことはできないと考えて良いでしょう。あくまでデータは、肉眼で見て行う試合分析を客観的に裏付け、補強し、その先の意思決定に活かすためのものだと認識しています。そのためフィードバックには、さまざまなデータを整理・統合し、試合を肉眼で見て課題を抽出した後、必要に応じて統合したデータから客観的な裏付けに役立つものを正しく選んで提示する、という力が求められます。これまではばらばらにデータを算出し、それぞれに対してフィードバックを行ってきましたが、「データを出すだけ」で終わってしまうこともありました。上述したように本来こうあるべきフィードバック作業を円滑化し、こうした力を最大化できるようなフレームワークおよびレポートのテンプレート作成を現在進行形で進めています。
データ分析を料理に例えた話があります。データは食材で、我々テクニカルユニットが料理人、コーチ陣や選手がお客様です。料理人は食材を加工して、「魅力ある料理に仕上げる」必要があります。そのポイントは、
1.栄養(内容)があること、
2.美味い(魅力ある分析内容である)こと、
3.盛り付けが美しい(一見してわかりやすいプレゼンとなっている)こと、そして
4.食材には賞味期限がある(アウトプットをタイムリーに出す)こと
です。こうした話を踏まえ、テクニカルユニットはデータのデザインという点にもこだわっていきたいと考えており、フリーのデータ可視化ソフトGrafanaを用いたデータの可視化にも挑戦しています。
企業や大学の研究室との関わり
テクニカルユニットに所属していると、外部の企業や大学の研究室との関わりを持つこともできます。実際に、ある大手企業とは昨年の夏頃からミーティングを重ね、共同でのデータ分析技術開発やアイデアの共有などを行っています。パスマップのアイデアやGrafanaも紹介していただきました。また、現状どうしても相手プレイヤーとボールの位置情報を得ることは難しく、データ分析の幅が限られてしまっています。そのため、撮影した映像から画像認識技術により位置情報を推定する技術を開発しているGlaucsという企業とも、協力しています。一方撮影の質向上のためドローンの導入も検討しましたが、都市部であるなどの理由により大学から許可が下りませんでした。
さらには、先日アクセンチュア株式会社との弊部初となるスポンサー契約締結を公式に発表しましたが、定期的にミーティングを行い組織としての理想と現実のギャップを埋めるために今後どういう取り組みをしていくべきかの指導をしていただいています。
テクニカルユニットの中には大学の研究室と共同で分析デバイスの開発を行っている部員もいます。テクニカルユニットはこうした部員個人の活動もサポートしていく考えです。
おわりに
一応これは新入生向けの新歓記事ということでしたが、もしかすると少し難しい話題だったかもしれません。新入生だけでなく、実際にサッカーのデータ分析を行っている他大学の学生や将来このようなことをやってみたいと考えている中高生、プロのアナリストの方など、より多くの人に読んでいただけたらと思います。ちなみに筆者は大学入学当初はプログラミングなどまったくできませんでしたし、実際にプログラミングの勉強を始めたのは将来データサイエンティストになりたいと思い始めたちょうど一年前頃でした。サッカーが好きという強い気持ちか、データを扱ってみたいという熱意があれば、上級生が優しく教えてくれることでしょう。また、既にスキルがありデータ分析の即戦力となってくれる学部生の入部も大歓迎です。ぜひ一度お話を聞きに来ていただけると嬉しいです!
最後までお読みいただきありがとうございました!
6 thoughts on “ア式のデータ分析2021”