[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

バスケットボールのトラッキングデータをLLMは理解することはできるのか?

前書き

私は以前から、バスケットボールのデータの活用に関心を持っていました。

kokiando.hatenablog.com

特に、過去の記事でも言及したNBAにはトラッキングデータに関して強い興味を抱いておりました。

https://cdn-ak.f.st-hatena.com/images/fotolife/k/kokiando/20221211/20221211111634.gif

そもそもトラッキングデータとは何か?と言いますと、

添付GIFのようなものをイメージしていただければ良いですが、それぞれの時点において、コート上の選手の位置と、ボールの位置がX軸・Y軸を用いて記録されているものです。

これらの細かい時点のデータを結合して見ることで、選手の動きや、戦術などの理解を深められるようなデータとなっています。

ただ、私個人としては、このようなデータは、一見興味深いように見えますが、有益なインサイトを得るのは非常に難しいのでは?と感じておりました。

その一つの要因としては、トラッキングデータはデータ量が非常に大きく、そこからパターンを読み解くのは非常に難しいため。 また、最終的には連続的なアニメーションを人間が読み解かなければ、意味がないのではないかと感じていたためです。

ただ、そこでふと思ったこととして、昨今多くの人に使われるようになったChatGPTをはじめとした、LLMに生データをインプットとして認識させることによって、人間が膨大なデータを読み解く手間を省くことが可能なのではないのか?と思い立ったため、本記事のタイトルのような検証を行いました。

データ準備

データセットは下記のURLから拝借いたしました。

github.com

対象のデータセットから、任意のプレーを抽出して、LLMがバスケットボールの動きをトラッキングデータから読み解くことが可能かどうか検証しようと思います。 対象とするプレーはこのようなシークエンスデータとなっています。

バスケットに馴染みのない人には見づらいデータかもしれませんが、特徴としては、

  • 赤色のチーム(Toronto Raptors)がオフェンス、青色のチーム(Charlotte Hornets)がディフェンス
  • プレーの始まりは、右上(右45°あたり)の選手「Lowry #7」がボールを持っている
  • 左上(右コーナー)柄「DeRozan #10」がカッティングを行い、ボールをキャッチし、一度インサイドに攻める
  • この攻撃に反応し、3人のディフェンスが引き付けられたことによって、左下(左コーナー)にオープンの「Scola #4」にパスがいく

というようなプレーが表現されています。

では、これをLLMはどのように読み解くのか検証していきます。

LLMを用いた検証

LLMには下記のようなテーブル(全部で1,65)をインプットしてプロンプトを投げます。

モデルはClaude 3.5 Sonnetを利用しました。

タイムスタンプ ゲームクロック ショットクロック チーム名 選手名 背番号 ポジション X座標 Y座標 Z座標
2016-01-02 09:40:52 711.26 11.99 - ボール - - 23.4254 45.12734 3.64299
2016-01-02 09:40:52 711.26 11.99 Toronto Raptors Luis Scola 4 F 19.08811 13.91147 0.0
2016-01-02 09:40:52 711.26 11.99 Toronto Raptors DeMarre Carroll 5 F 10.11935 13.54703 0.0
2016-01-02 09:40:52 711.26 11.99 Toronto Raptors Kyle Lowry 7 G 20.81838 44.51006 0.0
2016-01-02 09:40:52 711.26 11.99 Toronto Raptors DeMar DeRozan 10 G 14.16535 38.7957 0.0
2016-01-02 09:40:52 711.26 11.99 Toronto Raptors Jonas Valanciunas 17 C 20.89057 34.20938 0.0
2016-01-02 09:40:52 711.26 11.99 Charlotte Hornets Marvin Williams 2 F 13.30744 22.19981 0.0
2016-01-02 09:40:52 711.26 11.99 Charlotte Hornets Nicolas Batum 5 G-F 9.1404 18.58649 0.0
2016-01-02 09:40:52 711.26 11.99 Charlotte Hornets Kemba Walker

ここに下記のようにプロンプトを投げました。

今から渡すデータはバスケットボールのプレーを表現している。
レコードごとに、プレイヤーと、ボールの位置と時点のtimestampが入っている。
これを解釈して、プレーを説明してください。

そしたら下記のような文章が生成されました。

データを分析させていただきます。まずトロント・ラプターズとシャーロット・ホーネッツの試合のプレーデータのようですね。
約2秒間(9:40:52から9:40:57まで)のプレーが記録されています。この間の動きを解析すると:

プレーの開始時:


ボールはコート中央やや右側(x:23.4, y:45.1)の位置で、高さ約3.6フィート
カイル・ラウリー(トロント)がボールを持っているエリアにいます


プレーの展開:


ラウリーはコート右側に位置取りつつ、徐々に前進
デマー・デローザン(トロント)は右サイドから左サイドへ大きく移動
ヨナス・バランチュナス(トロント)はペイントエリア付近に位置取り
シャーロット側では、ケンバ・ウォーカーがラウリーに対して守備位置を取っています


プレーの終盤:


ボールの高さが上下に変化していることから、ドリブルの動作が見て取れます
プレイヤーたちの位置関係から、これはセットオフェンスの組み立て場面のように見えます

ショットクロックは約12秒から8.5秒まで進行しており、オフェンス側のトロントがプレーを組み立てている序盤の場面だと判断できます。

内容としては、最低限のプレーの理解はできている印象を得ました。 特に、どの場所からプレーが開始されているのか、そこからボールを持ったプレイヤーが移動しプレーを展開させていること、またディフェンスのプレイヤーのことも認識していることが確認できます。

また、プレーの終盤にかけての分析も行えているようです。

ただ、最終的な考察が、

「ボールの高さが上下に変化していることから、ドリブルの動作が見て取れます プレイヤーたちの位置関係から、これはセットオフェンスの組み立て場面のように見えます」

となっているのはやや、物足りなさを感じました

そこで、もう一つ追加でプロンプトを投げました。

なるほど。それでは、ここでどのようなセットオフェンスが展開されていたのか、説明してください。

このプロンプトでは、セットオフェンスの内容について問い合わせています。

すると下記のような回答が返ってきました。

データを詳しく見ていくと、以下のようなセットオフェンスの展開が見て取れます:

初期配置


ラウリーがトップオブザキー付近でボール保持
デローザンが右ウィング
キャロルが左コーナー付近
スコーラが左ウィング
バランチュナスがハイポストエリア


動きの展開


ラウリーがトップからやや右側に位置取りながら、ドリブルで前進
重要な動きとして、デローザンが右ウィングから左サイドへ大きくカットしていきます(約20フィート移動)
バランチュナスはペイント付近で固定的なポジションを保持
スコーラとキャロルは左サイドでスペーシングを作っています

これはホーネッツのディフェンスを引き付けながら、デローザンの動きでディフェンスを崩そうとする展開に見えます。特にデローザンの大きな横方向の動きは、ディフェンスのローテーションを誘発しようとする意図があったと考えられます。
防御側のホーネッツは:

ウォーカーがラウリーにマッチアップ
ゼラーがバランチュナスとマッチアップ
しながら、比較的コンパクトなディフェンス陣形を保っています。

この約2秒間のデータからは、おそらくこの後デローザンへのパスかスクリーンプレーに発展する可能性を持ったセットオフェンスの序盤だと分析できます。チームとしてはスペースを作りながら、デローザンの動きを活用したプレー展開を狙っていたように見えます。

印象として、非常に良い説明が返ってきたと思います。

特に「動きの展開」の部分で

「スコーラとキャロルは左サイドでスペーシングを作っています これはホーネッツのディフェンスを引き付けながら、デローザンの動きでディフェンスを崩そうとする展開に見えます。特にデローザンの大きな横方向の動きは、ディフェンスのローテーションを誘発しようとする意図があったと考えられます。」

デローザンが起点となって、ディフェンスを崩そうとしている特徴を捉えていることをちゃんと把握できています。

また最終的に下記のように、該当するセットオフェンスが意図している、「チームとしてはスペースを作りながら、デローザンの動きを活用したプレー展開を狙っていたように見えます」という部分をしっかり捉えられていて非常に良いと感じました。

「おそらくこの後デローザンへのパスかスクリーンプレーに発展する可能性を持ったセットオフェンスの序盤だと分析できます。チームとしてはスペースを作りながら、デローザンの動きを活用したプレー展開を狙っていたように見えます。 」

結論

総じて、「ラッキングデータからオフェンスの大まかな特徴をLLMは捉えることができる」ことが示唆されたと思います。

これまであまり、個人的にはトラッキングデータの有効性に関して疑問を抱いていたのですが、LLMを活用することで、プレーの特徴を自然言語の形で記録することができる可能性や、効果的にかつ、定量的にプレーの特徴を分析できる可能性が見えたので、非常に興味深かったです。

類似の取り組みが他にもあるか調べてみたりしようと思います。

また、興味のある方などいれば、ぜひご意見伺ったり、やディスカッションしたいなと思いました。

以上です!

新しいことに挑戦したく、簡単なWebサイトを作ってみた

今年は全然新しいことに挑戦できなかった。

ということで駆け込みで二つほどウェブサイトを作ってみた。

1つ目。SimpleTime。

www.simpletime.site

なんというか、本当にただ現在の時刻を表示するだけのサイト。

だけども、自分で一番利用しているサイトの一つ。

元々、違うサイトで1日に何回もブラウザで時刻を表示していた。

PCに標準でついている時間でも何一つ問題ないが、癖でブラウザで開いていた。そのため、リプレイスするために、作った。

海外出張とか、TimeZoneが違うところに行くことがあれば、TimeZoneをユーザ側で変更する機能とか作りたい。

2つ目。バスケコートInfo。

www.basketcourt-info.jp

これは、日本全国のバスケコートを検索できるサイト。

特にこれといった機能はないが、割と内容としては充実している気がする。

まとめ

来年はもっと新しいことに挑戦したい。

2024年の振り返り

  • 2023年年末 父親が脳梗塞で倒れた。半年ほどで大分快復していて安心した
  • 兄弟家族で年末年始を軽井沢で過ごした、恒例にしたい
  • King Gnuのライブに行った。かなりこのアーティストにハマった
  • 新しい分野に挑戦できなかった
  • 比較的健康だったが、体重はかなり増えた。バスケは月1回くらいのペースでできた。もっとしたい。
  • 生活に変化があった
    • 三軒茶屋から横浜妙蓮寺に引っ越した
    • 入籍した
  • お仕事関連
    • 7月、NYに半年ぶりくらいに出張に行った
    • プロジェクトが変わった
    • 副業めっちゃやった
  • 奥さんといっぱい旅行に行けた
    • 沖縄の両親のもとにいき、結婚報告
    • 台湾旅行
    • 鹿児島旅行&親戚挨拶
    • 関西旅行を兼ねて兵庫のおばあちゃんを訪ねた。認知症がかなり進んでいた
    • その他国内旅行たくさん

月報 2024/08

2024/08

1年弱更新を怠っていたが、久々に月報を書く。

所感

ここ半年、というかここ数ヶ月で結構な一生に一度な経験をした。結婚した。本業 + 副業を頑張った。旅行たくさん行った(国内多め、海外1回)。 というのがざっくりした総論。

割と濃密な半年だったし、今後の人生設計とかしっかり考えなければ、というのを思った時期でもあった。

続きを読む

月報 2023/10

2023/10

少し触発されることがあったので、今月は少しマジメに月報を書いてみることにする。

仕事の話

本業に関して、転職して気付けば1年4ヶ月くらい経っていた。 会社の業績が鬼みたいに良く、それに合わせた決算関連のアレやコレやがあり、少し自分のバリューの出し方とか、今一度見直したくなった。

続きを読む

月報 2023/09

2023年9月

本業のプロジェクト開始、プライベートのプロジェクトの作業が重なって割とバタバタした月だった。 プライベートに関しては、割と色んなことが経験できた。友人の結婚式や、北海道のプチ1人旅行、前職の同期との一年ぶりの集まり、USから義妹の家族とのBBQなど。 2023年残り3ヶ月、プライベートも楽しみつつ、仕事も頑張っていきたい。

  • 2023年9月
  • エンタメコンテンツ
  • 技術系インプット
続きを読む

月報 2023/08

2023年8月

本業の期末ということもあり、有給消化をしつつ仕事もしつつといった、かなり中途半端な1ヶ月だった。 本業ではLLM関連のプロジェクトを少し関わりだしたり、新たなチャレンジも多少あった。 私生活では、札幌に2回帰省した。

  • 2023年8月
  • エンタメコンテンツ
  • 技術系インプット
  • その他
続きを読む