トム・ブレイディは、NFL史上最高のクォーターバックと広く考えられています。彼の通算パスヤード記録は、彼が持つ数々の輝かしい記録の中でも特に際立っています。この記録を達成できたのは、年間パスヤードを常に高く維持し、パス試投数と成功数でトップに立ち、シーズンを左右する怪我を避け、そして長いキャリアを築いたからです。
このプレゼンテーションでは、データ探索と可視化を通して、トム・ブレイディがNFLでいかにして圧倒的な存在になったのかを紐解きます。そして、現在のクォーターバックの中で、この記録に挑戦する可能性が高い選手は誰なのか、そしていつ挑戦できる可能性があるのかを明らかにします。
分析ワークフロー全体、つまり、Web サイトからデータを取得する JSL スクリプト、分析用にデータを準備するデータ クリーンアップ ワークフロー、データの探索と視覚化、そして最後に、シーズンを通して更新される公開済みの JMP Live レポートを取り上げます。
こんにちは、スコット・アランです。JMPのシステムエンジニアです。同僚のヤスミン・ハジャールと共に、ケーリーで開催されるDiscovery Summit 2024のポスター発表に臨むことができ、大変嬉しく思っています。今年の初め、ヤスミンと私はDiscovery Summitについて、そしてデータアクセスからJMP Liveでの公開までを網羅したデータ可視化・分析ワークフローのプレゼンテーションについて話し合いました。私たちは日々お客様と連携しており、データのインポートから分析、そして結果の公開まで、このワークフローを完全に自動化することへの関心が高まっていることを感じています。
このプレゼンテーションでは、JMPの様々な機能についてご紹介します。ウェブサイトからデータを取得する方法、ワークフロービルダーを使ってデータの更新とクリーニングを自動化する方法、JMPの様々なプラットフォームを使ってデータを視覚化、探索、さらにはモデル化する方法、そしてその結果をJMP Liveに公開する方法などをご紹介します。さらに、カスタムアドインを使ってボタンをクリックするだけで、これらの機能を実行する方法もご紹介します。
このプロジェクトでは、元NFLクォーターバックのトム・ブレイディをワークフローの背景として使用することにしました。当時、私たちはアイデアを練っていました。彼のキャリアがいかに圧倒的で、彼の記録が非常に長く続くだろうという記事を読んだのです。そこで考え始めたのは、「長い期間」とはどれくらいなのかということです。次の記録を破るクォーターバックは既に現役で活躍しているのでしょうか?もしそうだとしたら、いつその記録に挑戦するのでしょうか?
トム・ブレイディはNFLで数々の記録を保持しています。今回のプレゼンテーションでは、そのうちの一つ、通算パスヤードに焦点を当てます。しかし、彼のどの記録でも同じワークフローを適用できます。ヤスミンも私もNFLの大ファンではありません。誰が有力候補なのか、誰が候補者なのか、そして誰が選ばれるのかさえ知りませんでした。しかし、このデータを掘り下げていくうちに、トム・ブレイディがキャリアにおいていかに異端児であるかが分かり、彼がなぜ史上最高の選手の一人と称されるのかが容易に理解できました。このデータ探索の旅は、まさにそのデータにアクセスするところから始まります。それでは、ヤスミンにバトンタッチしましょう。
スコット、ありがとう。まず最初にしなければならなかったのは、1940年から2023年までのすべての統計の履歴データを作成することでした。Pro Football Referenceのウェブサイトにアクセスする必要があったのがお分かりいただけると思います。そこで、独自のJSLスクリプトを作成し、ここにあるサブ年変数を対応する年に置き換え、すべての統計を連結して、過去すべての年の大きな生データテーブルを作成しました。これが最初のステップでした。
次に、ワークフロービルダーを使用してワークフローを作成しました。まずこの履歴データを開き、そこに現在の週の統計を追加します。2024年シーズンが始まれば、これらの週ごとの統計を履歴データに追加できるようになります。列属性の標準化、キャリア年の追加、現役年の追加、そして累積ヤード列の追加など、複数の追加手順を実行する必要があることがわかります。これにより、すべてのヤードを合計できるようになります。
ただし、現在の週と履歴データのインポートなど、一部のステップの横にプラス記号が付いていることに注意してください。これは、それがカスタム ステップであり、JSL で作成して、カスタム ステップとしてワークフローに貼り付ける必要があることを意味します。
このワークフローを作成すると、今週までの情報がすべて含まれた最新のフットボール統計表が作成されます。まず、既存の視覚化ツールを使い始めました。最初に作成したグラフは、年間の累計獲得ヤード数で、引退したクォーターバックは灰色、トム・ブレイディは紫色、現役クォーターバックはオレンジ色で表示されています。
早期引退したクォーターバックの中には、現役を続けていればトム・ブレイディの記録を破っていたであろう選手、あるいはトム・ブレイディが現役を続けていれば彼らの記録を破ることはできなかったであろう選手がいることが一目で分かります。現役選手の累積獲得ヤードには、既に強い傾斜が見られる選手もいます。現役選手のみを対象とし、キャリア年を基準としてプロットしました。これをキャリア年で正規化してください。
次に、これらの選手のうち誰がトップに立っているかを見ていきましょう。アーロン・ロジャースがトップに立っているのは明らかです。しかし、彼は昨年厳しいシーズンを過ごしており、今シーズンはどうなるかは分かりません。一方、例えばマシュー・スタッフォードとラッセル・ウィルソンは、キャリア通算で比較すると、トム・ブレイディよりも既に多くのヤードを獲得しています。
同じキャリアイヤーで両選手を比較するなら、彼らはすでにそのラインを上回っています。デレク・カーはこのあたりです。好調ですが、まだキャリアの初期段階です。少し違った見方をすることにしました。年間平均ヤード数ですが、これらのクォーターバックは年間平均ヤード数でどのようになっているでしょうか?ジャスティン・ハーバートは年間4,300ヤードと、他のクォーターバックと比べても非常に優れた成績を収めています。ずっと下位にいるトム・ブレイディと比べても、その差は歴然です。
しかし、こちらの別のグラフを見てみると、選手たちがキャリアイヤーのどの位置にいるのかが動的にリンクされています。ジャスティン・ハーバートはまだキャリア初期で、まだ4年しかプレーしていないことがわかります。それでは、スコットが私たちが作成したより高度なレポートとモデルをご紹介します。
新しいデータを入手したら、まず最初にヤスミンが示したようにデータ探索を行います。これらの記録に挑戦する可能性のある候補者を考え始めるもう一つの方法は、クラスタリングなどのデータ探索です。ここで行ったのは、あらゆる特性において類似したクォーターバックを見つけることです。累積ヤード数や年間ヤード数といった単一の統計値だけでなく、あらゆる特性において類似した特性を持つクォーターバックを見つけるために、階層的クラスタリングを行いました。
今回は、全てのクォーターバックをクラスタリングしました。このデータテーブルには約800人のクォーターバックが登録されており、過去の試投数、パス成功数、インターセプト数など、あらゆる統計情報に基づいてクラスタリングしました。ここでご覧いただいているのは、コンステレーションプロットの結果です。このコンステレーションプロットは、全ての統計情報において類似した特性を持つクォーターバックのグループを示しています。
ここにはいくつかの大きな分岐があり、クォーターバックの異なるグループやクラスを区別し始めていることがわかります。トム・ブレイディがどの位置にいるのかが分かります。これは彼らの統計や能力について何も教えてくれません。ただ、これらの統計データ全てにおいて、彼らが互いに似ていることを示しているだけです。
トム・ブレイディのいる枝を拡大してみましょう。確かに、おなじみの名前、前のグラフで見たことのある名前、そして意外な名前もいくつかあることがわかります。引退したクォーターバックや、もう現役ではないクォーターバックも含めました。それらは小さな灰色の点です。
もし彼らがキャリアの別の年を迎えていたら、もっと長く活躍できたかもしれない。これらの記録のいくつかに挑戦できたかもしれないが、彼らはもう現役ではない。それらの記録に挑戦する能力はもうない。トム・ブレイディの現在地を見れば、他のクォーターバックがトム・ブレイディの記録を破ったり、挑戦したりし始める可能性が見えてくる。
次に、このデータをモデル化することに着手しました。最初の2つの手法、つまりデータ探索とクラスタリングは、データを探索し、記録に挑戦する可能性が高いクォーターバックを特定することを目的としていました。しかし、これらの記録がいつ挑戦されるかを判断するためには、モデルを構築する必要がありました。このために使用できるモデルはいくつかありますが、私たちは混合モデルを構築することにしました。
混合モデルパーソナリティを用いてモデルプラットフォームを適合させ、累積ヤードを応答変数(Y変数)、通算ヤードをX変数とし、選手名をランダム効果として用いて、これらの係数を入れ子にしました。基本的に、ここで得られるのは、各クォーターバックの年間累積ヤード数に関する単回帰直線です。それぞれに傾きと切片があります。この情報から、様々な回帰式が得られるので、逆予測を行うことができます。
トム・ブレイディの81,294ヤードという記録の逆予測を用います。この逆予測から得られるのは、そのクォーターバックがその累積ヤード数を達成するのにかかる年数です。このレポートからデータテーブルを作成し、各クォーターバックのルーキーイヤーに基づいて正規化しました。右側のグラフは、各クォーターバックを示しています。このグラフは、記録達成にかかる年数で並び替え、昇順で表示しています。
この場合、私たちが特定した2人、アーロン・ロジャースとマット・スタッフォードがオレンジ色の点になっています。紫色の点のトム・ブレイディの位置が分かります。彼は2000年のキャリア24年目にこの記録を達成しました。それが何年だったかは覚えていませんが、1922年だったと思います。しかし、ここには他のクォーターバックもいます。アーロン・ロジャースとマット・スタッフォードが、この記録に挑戦する最初のクォーターバックになるのは間違いありませんが、達成するにはまだ6、7年かかるでしょう。2031年か1932年のシーズンには彼らの記録が見られるでしょう。彼らがプレーを続ければ、キャリアヤード記録に近づき始めるかもしれません。
さらに先の世代のクォーターバックたちが、この記録に挑戦し始めるでしょう。おそらく2030年代後半か2040年代初頭でしょう。期待しすぎないでください。すぐには実現しません。しかし、この記録を目立って破ろうとしているクォーターバックはいないものの、将来的に記録を更新する可能性のあるクォーターバックが何人かいるのは喜ばしいことです。データの調査と分析が終わったので、次は、このデータをどのように公開・共有し、ワークフロー全体を自動化していくかをご紹介します。
それをヤスミンに渡して手伝ってもらいます。
スコット、ありがとう。スコットが言ったように、私たちの目的は、これらのレポートの一部をJMP Liveに公開し、シーズンの進行に合わせてレポートがどのように変化するかを人々が把握できるようにすることでした。そのためには、ファイルを開いて「公開」をクリックし、レポートをJMP Liveに公開するだけです。必要なレポートを選択しました。今回の場合は、いくつかの画像やグラフで構成されたダッシュボードを用意し、JMP Liveのデータテーブルを、プロフットボールウェブサイトの統計情報で更新されたデータテーブルに置き換えました。
さらに一歩踏み込んで、JMP Liveへの公開を含むすべての手順をアドインに統合しました。ここでは、アドインの作成手順をご紹介します。アドインの作成は非常に簡単なので、他の方にもその方法を共有したいと思ったからです。アドインを作成するには、「ファイル」→「新規」→「アドイン」をクリックします。クリックしたいボタンの下に、ワークフロービルダーからエクスポートしたJSLスクリプトをコピー&ペーストします。ワークフロービルダーでワークフローを作成したら、JSLスクリプトをエクスポートして、ここにコピー&ペーストします。
さらに一歩進んで、このアドインをアドインメニューではなく、別の場所に移動しました。ボタンをクリックしやすくするために、独自のカスタムメニューを作成しました。それでは、手順を簡単にご説明しましょう。こちらがカスタムメニューです。「Run Stats」をクリックすると、現在の年が更新されます。標準化された表や列などが表示されます。
上位レイヤーを含む表のサブセットを作成します。ここにダッシュボードが作成されました。JMP Live の画面を簡単に表示します。JMP Live は自動的にリロードされ、年間平均ヤード数と選手別ヤード数の最新の統計が表示されます。公開と追加作業はこれで完了です。最後にスコットにコメントをお願いします。
これで、データアクセス、クリーンアップ、グラフ作成、モデリング、そして公開までのワークフロー全体について説明しました。このダッシュボードをJMP Publicに投稿する予定です。他にも興味深いグラフをいくつか追加する予定ですので、ぜひご覧ください。JMP Publicサイトが開設されたら、リンクをコミュニティに投稿します。
ここでご覧いただいた内容について、さらに詳しく知りたい方は、あくまで概要をお伝えしただけです。スクリプトと分析をざっと見ただけです。もっと詳しく知りたい方は、コミュニティに投稿してください。喜んでご質問にお答えします。最後に、このポスターとプレゼンテーションの機会を与えてくださったJMPに感謝申し上げます。このプロジェクトに協力してくれたYasminにも感謝いたします。本当に素晴らしい時間を過ごし、多くのことを学ぶことができました。
ありがとう。