皆さん、こんにちは。JMPのガルフコースト・システムエンジニア、ライアン・クーパーです。同僚のローラ・ヒギンズと一緒にお話ししています。
こんにちは、ローラ・ヒギンズです。私もグローバル・テクニカル・イネーブルメント・チームでシステムエンジニアとして働いています。
私たちが手がけたプロジェクトは、メジャーリーグのトルピードバットに関するものです。このバットは、型破りなデザインとそこから生まれる攻撃力で注目を集めています。このアイデアが生まれた経緯について、少しお話があります。ローラと私は実は、シーズン開幕直後の4月初めにヒューストンで野球の試合を観戦していたんです。そこで開催されていたディスカバリーセミナーに参加するため、ヒューストンに来ていたんです。
シーズンが始まって数日後のことでした。テキサス州にあるヒューストン・アストロズが、ローラの出身地であるサンフランシスコ・ジャイアンツと対戦していました。私たちは試合を観戦していて、トルピードバットブームとニューヨーク・ヤンキースが立て続けにホームランを打っているという話を聞きました。そして、そのホームランの原因となっている魔法のバットがあるんです。私たちはその話をしながら試合を見ていて、「これをテーマにしたプロジェクトをやろう」と思ったんです。
これがこの調査の始まりです。シーズン序盤、皆がこれを始めた頃は、ほんの数点を除いてデータポイントがほとんどなかったので、結果を発表できることを大変嬉しく思っています。今では多くのデータポイントがあり、そこから非常に興味深い洞察が得られるようになりました。皆さんに発表できることを大変嬉しく思っています。
トルピードバットについて少し背景を説明します。私たちが注目するのは、トルピードバットがパフォーマンスにおいて目に見えるほどの向上を示すかどうかです。探索的データ分析、データマイニング、そしてメジャーリーグベースボール(MLB)がメジャーリーグに関する様々な統計データを公開しているリポジトリであるStatcastを用いたモデリングに焦点を当てます。
このバットがどんなものか、もっとよく見てみましょう。一番左の… ポインタをここに向けます。左のバットは右のものと少し違いますね。右のものは従来のバットです。バットの側面、エッジが少しまっすぐになっているのがお分かりいただけると思いますが、トルピードバットは内側にカーブしています。ここでは、ボールを打つ可能性のあるスイートスポットに重量が集中しているのに対し、このバットは均等に分散されています。この図にそれが反映されています。青い部分を見ると、トルピードバットはスイートスポットがより集中しているのに対し、従来のバットはスイートスポットが分散しているものの、インパクトはそれほど大きくないかもしれません。
この図のこの部分からこの部分に移ると、従来のバットとトルピード型のバットで同じオーバーレイ、同じ色彩が見られます。そして、スイートスポットはまさにここにあります。ここで何が起こっているかというと、これらのバットから発射されるボールの打球速度、つまり打ち出し速度が予想される分布が得られています。バットが少し幅広になっているこちら側では、打球速度と打ち出し速度が約5~7%向上し、バットから発射されるボールの最大値も高くなります。一方、こちら側で従来のバットでボールを打つと、約2~3%の向上が見られます。このバットは、こちら側でボールを打つ人のパフォーマンスに非常に大きな影響を与えるでしょう。あるいは、こちら側でボールを打つ人のパフォーマンスに、より大きく影響を与えるはずです。
ここには他にも小さなグラフィックがいくつかあります。ぜひご覧いただきたい動画があります。バットとグラフィックを描いて、バットの動きを解説しています。上の画像、特に斧を振る時の感覚をイメージしたグラフィックがあります。例えば、この伝統的なバットでは、斧の一番端に重量が分散されています。ところが、この重量を少し回転させて、手前の一番端に持っていくと、振りやすくなります。つまり、重量が少し移動することで、振りやすくなるのです。ここではいくつかのメカニズムが変更される可能性がありますが、その仕組みについては、後ほどデータで詳しく説明します。
データ探索の手法と目的についてお話しします。このデータはPythonパッケージであるPyBaseballを通してアクセスし、コードの大部分はChatGPTによって記述されました。実は、私のChatGPTとの会話へのリンクをここに貼っておきます。どのように構築され、Pythonからどのように取り込まれたのかを知るには、ぜひご覧いただきたいと思います。
JMP 18、そしてJMP 19以降の素晴らしい点は、Pythonが統合されていることです。Pythonコードを生成し、記述して好きなように操作し、JMPに取り込んで、このようにパッケージからプルすることができます。
この野球パッケージには、投球ごとに約119個の異なる変数があります。つまり、行があります。データセットがどのようになっているか見てみましょう。各行は実際にはトランザクションと投球です。各投球ごとに119個の異なる項目、つまりデータポイントが測定されています。このデータを取得し、ユーザーがトルピードバットを使用しているかどうかでセグメント化します。これはChatGPTによって検出されました。これを調べる良い方法はなく、あまりよく文書化されていないため、ChatGPTにマイニングしてもらいました。
私たちが注目しているのは、打ち出し速度、スクエアアップとブラスト、そしてスイングメカニクスといった主要な指標です。スクエアアップとブラストは打球速度と関係のある指標です。上の2枚の画像を見ていきましょう。これらはMLB Statcastのウェブサイトの用語集に掲載されているもので、参考文献にもリンクを貼っています。
しかし、スクエアアップはボールを打つ際の最大速度の割合であり、ブラストは実際にはスクエアアップをさらに強化したものです。ブラストはまさに最高のスイングであり、トルピードバットをうまく使いこなせるようになると、これらの数値も向上することが期待されます。
使用したツールの中には、グラフビルダーがあります。下にいくつかあります。分布、数式列、JMP 19の新機能であるデータテーブルタグ、そしてブートストラップフォレスト、ブーステッドツリー、ワークフロービルダーといったモデリング手法を使って、これらを統合しています。つまり、選択した選手におけるトルピードバット導入後のパフォーマンスの変化を調査し、モデリングを通して全体像を把握したいのです。
セットアップに戻り、ここでどのように動作するかを見てみましょう。JMPのPythonスクリプトについて言及しました。これはそのPythonスクリプトの一部で、Statcastデータへのアクセス方法を示しています。また、Statcastデータ自体も取得しています。これはスクエアアップとブラストを手動で取得したものです。これらはPyBaseballパッケージのデータには含まれていないためです。
これらの情報を統合する必要がありますが、その方法、あるいはその一部は、スクエアアップとブラストのデータの断片を別々のファイルに保存し、複数ファイルのインポートとJMPを使ってそれらを一度にインポートすることです。スクエアアップとブラストのファイルが詰まったフォルダがありました。それらをすべて一度にインポートして連結し、メインのデータテーブルスクリプトにマージし直しました。こうすることで、各トランザクションのブラストとスクエアアップが、それぞれの投球ごとに識別されます。
そこから、既知のトルペドバット使用者全員と、使用開始時期のルックアップテーブルを使用します。ゲーム開始日が初回使用日以降であればトルペドバット使用者、そうでない場合はゼロと判断する式を用意しています。そして、これら全てを統合するワークフローを構築します。StatcastデータからPythonスクリプトで保存したCSVファイルを読み込み、複数のファイルをインポートします。
これらの情報が得られれば、探索的なデータ分析を始めることができます。まず、何らかの影響力があると分かっている選手を数人選びました。アンソニー・ボルペは当初から成功を収めていると見られていました。ここでは、打ち出し速度の分布を調べました。さあ、見てみましょう。
これはグラフビルダーのグラフで、シャドウグラムです。X軸は打ち上げ速度です。レーザーポインターをここに持ってきてください。X軸は打ち上げ速度で、ゲーム年は色で示されています。2024年の青は、打ち上げ速度が2025年よりも少し遅いことを示しています。赤は少し速くなっています。そして、ここにいくつかの要約統計があります。
そこから、これが全員にとってどのように見えるかを見てみたいと思いました。一番右のグラフには、2025年の打球速度のモードと2024年のモードを直線で結んだものがあり、誰がこのように向上したかが分かります。結果は、誰もが同じように向上するわけではないということです。アンソニー・ボルペ選手は、打球速度に関して、このトルピードバットを変更することである程度の成功を収めました。しかし、緑色で示されている他の選手、そしてトルピードバットを使用しているかどうかは不明ですが使用していた可能性がある選手は、オレンジ色で示されています。このことから、トルピードバットの影響は人によって異なるという考えに至り、それがモデル化によって最終的に示されました。ローラが後ほどお見せします。
私たちがかなり詳しく調査したもう一人の選手は、コルソン・モンゴメリーという選手です。彼の特徴的な点は、2025年7月初旬にメジャーリーグでプレーを始めたことです。彼は約3週間、トルピードバットを使っていませんでしたが、トルピードバットを使い始めると突然、ホームランが増え始めました。ホームランはここに丸で囲まれており、彼の打球数は増加しています。赤い部分は打球数です。こちらはY軸に沿った打球速度です。そして、打球速度の移動平均が表示されています。
7月31日頃、確か8月1日だったと思いますが、彼のトルピードバットが壊れてしまい、新しいバットが作られるまで約1週間半、他に使えるバットがありませんでした。打球速度が著しく低下し、打球速度の上昇点やホームラン数も減少しているのが分かります。しかし、バットを取り戻すとすぐに、打球速度がはるかに高いホームランが数本打たれました。コルソン・モンゴメリーにとって明らかに良い影響があったようです。以上が探索的データ分析の結果と、いくつかの手法と目的です。それでは、データマイニングとモデリングについて、ローラにバトンタッチします。
ライアン、ありがとう。最終的に私が焦点を当てた問題は、トルピードバットがバッティング特性にどのような影響を与えるかということです。これだけのデータが揃っていたので、データマイニングとモデリングのアプローチを用いました。次のスライドをご覧ください。データの第一の問題は、トルピードバットを使用している人の代表が非常に少ないことです。データセットが非常にアンバランスな場合、探しているものがデータ内のごくわずかな割合である場合、実際には何のシグナルも見つけることができません。
そこで、トルペドバット使用者と非トルペドバット使用者の両方について、同量のデータを持つデータセットを作成する必要がありました。このデータプール全体からランダムにデータを取得するのではなく、公平性を保つために、似たようなデータセットを作りたいと考えました。そこで、トルペドバット使用者の発射速度で層別化を行いました。非トルペドバット使用者から、かなり代表的なサンプルを抽出するのが適切だと考えたのです。これが層別化の方法です。次のスライドをご覧ください。
データは非常に非線形でした。他のモデリング手法もいくつか試しましたが、ツリー法が最も効果的でした。これは、あまり線形ではないデータでは確かに当てはまります。線形モデルはどうしても奇妙な挙動をします。ブートストラップフォレストが最も効果的で明確な答えを出してくれました。ブースティングも試しましたが、どちらも質的に似たような答えを出しましたが、実際には結果の改善にはつながりませんでした。
33%の検証列を使用しました。各バットにトルピードバットが使用されたかどうかを考慮すると、モデルはデータの約9%から15%の範囲を説明していることがわかります。これは使用する項目によって異なります。誤分類率は良好でした。つまり、ある程度の予測は可能ですが、完璧ではありません。しかし、そこには確かにシグナルが含まれています。
結果はBootstrap Forestによるものです。グラフを見ればわかるように、これは列の寄与度を示しています。バットスピードは間違いなく最も重要な要素です。他のほとんどの列も同様の影響を与えており、次のスライドでそれらについてもう少し詳しく説明します。
プロファイラーでは、トルピードバットの値が1であればトルピードバット、0であればトルピードバットを使用していないことを意味します。スイングレングスが長くなっているのが分かります。スイングレングスとは、バットが動く範囲のことです。トルピードバットはより速く振れることを覚えておいてください。これも確認できます。バットスピードが速く、全体的に打ち出し速度も高くなっています。打ち出し速度とは、ボールが実際にどれくらい飛ぶかを示すものです。野球の試合でグラフを見ると、打球速度が表示されており、特にホームランを狙っている場合、ボールがどれくらい飛ぶかを示す良い指標となります。また、ボールが実際にどこに飛んだかを示す指標の1つも確認しました。フィールディングの位置については、ボールはフィールドの奥深くまで飛んでいきました。左か右かは、実際にはモデルには入力されていません。
モデルには他にも要素が含まれていましたが、基本的にすべて同じことを示しています。トルピードバットを使う人は、ボールを打つ場所がより安定しているということです。これは理にかなっています。バットのスイートスポットが小さいということは、スイングの仕組みに関して、より規律のある打者になる必要があるということです。これが成功かどうかは検証していません。次の論文で検証するかもしれません。しかし、トルピードバットはスイングの仕組みを、打者によって良くも悪くも確実に変化させるという結果は明らかです。それでは、次のスライドをご覧ください。ポスターにはアニメーションGIFがあります。プロファイルを確認したり、すべての変数の範囲を移動したりしたい場合は、PowerPointで確認できます。ライアン、戻ります。
モデル化と探索的データ分析から得られた結論のいくつかについてですが…このグラフに戻って、その結論のいくつかを詳しく見ていきましょう。トルピードバットは、一般的に、プレーヤーの成功とは関係なく、スイングのメカニズムを変化させます。これはここで起こっていることと似ています。バットを振る人それぞれに感覚が異なります。うまく振れているかどうかが、結果の良し悪しを左右します。つまり、探索的データ分析でご覧いただけるように、打ち出し速度、スクエアアップ、ブラストは、コンタクトの質の向上を示す有用な指標となります。
トルピードバットは一部の打者のパフォーマンスを向上させるかもしれませんが、すべての打者に効果があるわけではありません。つまり、個々のメカニクスと適応力が重要なのです。スクエアアップや強烈な打球、あるいは打球速度の向上といった成功を収めるには、スイングの中で何が起こっているのか、そしてそれがどのように変化するのかをコントロールできなければなりません。
選手の打球速度、ブラスト、スクエアアップから貴重な洞察を得ることができました。しかし、データマイニングとモデリングによって、トルピードバットがスイングメカニクス自体にどのような影響を与えるかが明らかになりました。モデリングの過程では、バットの使用状況に関する報告に制限がありました。各選手がトルピードバットをいつ使用したかという情報だけでは、頼りになるような有益なデータは多くありませんでした。しかし、私たちが明らかにできたことは非常に影響力があり、そこからいくつかの結論を導き出すことができました。
そして右下には、打者のポジショニングとインターセプトポイント、そしてスイングの長さが表示されています。これらは用語集にある定義の一部で、ローラが説明していたメカニクスの部分と関係があります。スイングの長さはどれくらいですか?インターセプトポイントとは、スイングのかなり後、しかしかなり速いタイミングでボールを捕球することです。つまり、ボールに早く到達し、より前に出るということです。これはモデリングで明確に表れています。
これでプレゼンテーションは終了です。さらに詳しく知りたい方は、右下に参考資料がありますので、ぜひご覧ください。Statcast、検索、用語集について触れました。解説記事もいくつかありますので、ぜひご覧ください。
見つけた時に本当に興味をそそられたのは、なんとサバンナ・バナナズの動画でした。30分の動画ですが、彼らは独自の方法でトルピードバットをテストしています。サンプル数やデザインは必ずしも最も有益な情報とは言えないかもしれませんが、内角球への打ち方の改善方法や、実際にこのバットを使用している専門家ならではの洞察、そして野球選手としての視点から得られる洞察など、彼らの話を聞くのは本当に素晴らしいです。それから、左から2番目のグラフはモンゴメリー選手に関する記事で、このグラフを描こうというアイデアにつながりました。それでは、皆さん、プレゼンテーションをご覧いただきありがとうございました。それでは、良い一日をお過ごしください。