【バスケットボール】トップダウンなデータ分析とボトムアップなデータ分析

こんにちは、らんそうるい(@rnsr0371)です。この記事ではバスケットボールというスポーツの理解に向けて、私がやりたいと思っていることについて書きます。Twitterで断片的に投げていた内容をまとめた記事でございます。自分の思考の整理のためにこの記事を書いていて、要は壁打ちです。
 私が取ろうとしているアプローチは、もしかしたら過激なアプローチなのかもしれないし、もしかしたらバスケのデータ分析をされる方にとっては当然の内容なのかもしれません。似たようなことを既にされておられる方がおられましたら、ご紹介していただけると嬉しいです。

バスケを理解する上でらんそうるいが良さげだと思っている2つのアプローチ

バスケを理解する上で鍵になると私が思っているのは「何が勝利に結びつくのか?」を探ることです。これをミクロな視点から考えると「どんなプレーが得点(/失点)に結びつきやすいのか?」になると思いますし、マクロな視点から考えると「どんな選手が得点(/失点)に貢献しているのか?」になると思います。私は、ミクロな視点からのデータ分析を「ボトムアップ」、マクロな視点からのデータ分析を「トップダウン」と整理しています。これらの方向性は、互いに補い合う性質を持っていて、どちらが優れている・劣っているという類のものではないと考えています。

ボトムアップ型のデータ分析

ボトムアップ型のデータ分析の例として、ほせ様がご紹介されているEvaluating Micro-Actions in Basketball Using Deep Feature Representations of Spatio-Temporal Dataという論文があります(ほせ様による紹介記事)。
 私はまだこの論文の原著を読めていない(し、読んでも深く理解できない)のですが、個々のプレーに得点期待値を付けるという分析をしているそうです。このアプローチはサイエンス的に美しいと思っていて、それはバスケ以外のスポーツにも転用できるからです。それはさておき、個々のプレーに得点期待値を付けるというのは、まさに「どんなプレーが得点(/失点)に結びつきやすいのか?」に答えを出す方法だと思います。これは私たちのバスケへの理解を深めてくれるとても有望なアプローチだと感じています。

トップダウン型のデータ分析

トップダウン型のデータ分析の例として、私の記事で恐縮ですが「ボックススコアに残らないオフェンスへの貢献はどれくらいあるのか?(2)」を挙げたいと思います。ただ、この記事には後述しますが、問題点があります。記事の結論は気にせず、トップダウン型のデータ分析の雰囲気を感じ取っていただきたいです。
 この記事で試みているのはオールインワンメトリックと呼ばれるスタッツを、解釈可能な粒度のスタッツに分解するということです。オールインワンメトリックの例としては、RAPM(Regularized Adjusted Plus Minus)やPIPM(Player Impact Plus Minus)、LEBRONなどがあります。私のブログを御覧になってくれている方はBリーグでのPIPMが公開されているのをご存じの方も多いかもしれませんね。
 上に挙げたオールインワンメトリックは、選手の貢献を一つのスタッツで表そうとする試みです。+/-(プラスマイナス)を改良したものであったり、+/-にボックススコアのスタッツを重みづけて数値化しています。オールインワンメトリックの問題点は「ランキングを作ると信頼できそうな結果を出してくれるけれど、メトリックの解釈が難しい傾向がある──ブラックボックスになりがち」ということです。+/-にボックススコアのスタッツを重み付けるタイプのメトリックは、どのスタッツにどれくらい重み付けると良い感じになるか明らかなのですが、特にRAPMはブラックボックスです。
 選手の貢献を反映しているオールインワンメトリックを解釈可能な粒度のスタッツに分解するというデータ分析は「どんな選手が得点(/失点)に貢献しているのか?」に答えを出す方法だと思います。これも私たちのバスケへの理解を深めてくれるとても有望なアプローチだと思います。

で、らんそうるいはどちらのアプローチを採るのか?

私が今できることを考えると、トップダウン型のアプローチを採りたいと思っています。ボトムアップ型のアプローチは「論文を読んでも理解できない」と書いた通り、技術的に今の私には難しいです。いずれボトムアップ型のアプローチもやってみたいなぁ……
 トップダウン型のアプローチは機械学習の文脈では「教師あり学習」と呼ばれています。これは正解となるデータと正解の手がかり(特徴量)をコンピュータに渡して、手がかりから正解を導けるように学習させる方法です。教師あり学習なら、私にも何とか理解できるといいな〜〜と思っています。
 バスケで教師あり学習をしようとすると、教師データ(正解となるデータ)に何を使うかが重要になります。

教師データに何を使うか?

(*このチャプターにはらんそうるいの勉強不足により、不正確な内容が含まれている可能性が高いです)
結論から書くと、5年分くらいのデータを用いたRAPMを教師データに使いたいと思っています。RAPMは統計的に見て優れた性質を持っていると考えるからです。すなわち、ラインナップの影響を受けないこと、将来の活躍を予測するように値が算出されることです。このあたりのことは「リッジ(Ridge)回帰」というキーワードで検索すると情報がヒットします。RAPMの具体的な計算方法はGitHubで「RAPM NBA」で検索するとヒットします。
 LEBRONなどのオールインワンメトリックを教師データとして使わない理由は、計算に荷重したボックススコアのデータが使われているからです。私の分析ではLEBRONやPIPMは、確かにボックススコアからある程度予測できる(重回帰分析で自由度調整済み決定係数が0.40~0.50くらいでます)のですが、それは荷重したボックススコアの部分をうまく説明できているだけだと思います。実際、NBA公式で公開されている+/-は、ボックススコアのデータからはほとんど説明できませんでした。

今後の方向性

BリーグでのRAPMを計算したいです。

謝辞

この記事の内容はTwitterでの議論の影響を強く受けています。辛抱強く私とのディカッションにお付き合いしてくれた皆様に感謝いたします。今後もよろしくお願いいたします。

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA