BBANALY プロ野球データ分析

NPBのデータから、野球に関する議論や迷信を検証していくブログです。

もくじ

制作物

プロ野球データベースNEO

セイバー指標や、シーズン内の成績推移等を可視化したデータサイトです。

 

野球シミュレータ(ソースコード)

打席結果や走塁遷移を確率的に生成し、打順等の戦略が得点期待値や分散にどれほど影響を与えるのかを検証できます。

 

データを用いた検証

 

定性分析

セイバーメトリクスに関する説明

 

野球シミュレータ

 

 

「球種を張る」戦略の効果

 

打者の打席内での振る舞い

プレイヤー全員に当てはまるか定かではありませんが,多くのプレイヤーは打席に入る際,どのような球を打ちに行くのか,いわゆる「狙い球」を打席に入る前・打席中に選択します.自然な発想として,狙い球の種類は大きく分けて「球種で待つ」「コースで待つ」の2つに分類されるものと考えることが出来ます.

しかしながら,試合で活躍し,試合後のヒーローインタビューや取材等で直接プレイヤーから話を聞けるような特別な場合を除いて,試合やそのデータから打者がどのような球を狙って打席に入っているかを判別することは困難です.

そのため,一般に「狙い球を張る」効果を定量的に測定あるいは推定することは非常に困難であることが想定されます.

しかしながら,この「狙い球を張る」効果を定量的に評価するにあたって,最高のサンプルが存在していたことが,昨シーズンオフ,事後的に明らかになりました.

 

アストロズのサイン盗み

www.youtube.com

 

アストロズはセンター後方にあるTVカメラの映像をベンチ脇の壁に設置されたモニターに映し出し、それを使ってリアルタイムで捕手のサインを確認。そしてチームスタッフと選手らでサインの内容が判明できると、すぐさまベンチからバットケースやごみ箱を叩くなどして打者に伝達するシステムが出来上がっていた*1

 

2017年シーズン,ポストシーズン,2018年シーズンの一部のホームゲームにおいて,MLBヒューストン・アストロズがサイン盗みを行っていたとして話題になりました.この件に関しては,スポーツ倫理的な観点からはもちろんのこと,サイン盗みは実際にどれくらいの効果を上げたのかについても,多くの議論がなされていたようです.

さて,このアストロズのサイン盗み騒動について,倫理的な観点から僕があーだこーだ語る記事のニーズは宇宙一無さそうなので,セイバーメトリクス的な観点からもう少し詳しく見ていくことにします.

 

サイン盗みの効果

多くの方にとっては意外かもしれませんが,アストロズがサイン盗みを試みたことによる打撃成績への影響は,(トータルで見ると)ほとんどなかったことが明らかになっています.

full-count.jp

www.latimes.com

 

こちらの記事では,サイン盗みをしている場面をTV中継の映像から判別し(ゴミ箱を叩く音で伝達したとされています),サイン盗みをした投球におけるアストロズの野手成績をまとめています(厳密にはまとめていた事実がまとめられています).全部で58試合・のべ8200球以上の投球において,サイン盗みをしていたことが分かったみたいです.すごい根気...

球場のセンター方向からカメラを使ってキャッチャーのサインを撮影・解読し,ストレートか変化球かをゴミ箱を用いてアストロズベンチから伝達していたそうなのですが,先ほど言及したように,トータルで見たときの打撃成績にはそれほど影響がありませんでした.これは,

the signaling was not perfectly accurate. Arthur calculates that bangs accurately foretold breaking pitches 93% of the time, and no-bangs foretold fastballs only 65% of the time.

とあるように,100%正確にサインを解読することが出来ていなかったためです.記事に基づいてサイン盗みによる球種の予測率を整理すると次のようになります.

f:id:hihrois_1104o:20201024191457p:plain

サイン盗み予測率
  • ストレートと予測したときの正解率が 65%
  • 変化球と予測したときの正解率が 93% 

ということになります.つまり,全投球に占めるストレートの投球割合が仮に 60% 程度だったとすると,トータルの予測率は,

 0.6 \times 0.65 + (1 - 0.6) \times 0.93 \fallingdotseq 0.76

から,76% 程度となります.

 

また,予測が当たったときとはずれたときの各打撃成績についても記事では紹介されています.

On correctly-signaled pitches, the Astros as a team improved their batting average by seven points, to .289, and their slugging percentages (total bases divided by at-bats) by 25 points, to .503. As Arthur wrote, “25 points of slugging is a material boost.” On-base percentage didn’t change.

They lost 45 points of batting average, 52 points of on-base percentage and 93 points of slugging

こちらについても表で整理すると,下のようになります.*2

f:id:hihrois_1104o:20201024193309p:plain

予測結果と打撃成績

ここで注目したいのは,予測が的中した場合に得られる成績の向上分よりも,予測が外れた際の成績の下降分の方が大きいという点です.

これは,「盗塁において成功したときに得られる得点期待値よりも失敗したときに失う得点期待値の方が大きい」という話と同じようなもので,今回のようなサイン盗みを行う場合には,それなりの予測率をキープできなければトータルで見たときに得点を増やすことが出来ないということになります.

今回の場合,計算可能な上記の指標のうち最も得点との相関が高いOPSを用いて,損益分岐点(確率) p を計算すると,

 (0.849 - 0.824) \times p -  (0.824 - 0.679) \times (1 - p) = 0 より,

 p \fallingdotseq 0.85 となります.すなわち,サイン盗みの予測率が 85% 以上である場合に,今回のサイン盗みは有効であるといえます.さきほど計算した通り,実際の予測率は 76% 程度であったことから,今回のサイン盗みは有効であったとはいえません.

実際,アストロズの選手たちが有効でないと感じ始めてサイン盗みをやらなくなったことも,今回のサイン盗みがそれほど有効でなかったことを裏付ける根拠の1つになるかと思います.

 

相手投手の投げる球種が伝達される環境

さて,サイン盗みの効果がそれほど高くないことを確認した上で本題に戻ります.今回のアストロズのプレイヤーが打席内で置かれている状況を整理すると,

  • 予測確率は 100% ではないが,それなりの予測確率で相手投手が次にストレートを投げるか,変化球を投げるかを予測できる
  • 予測が正しかった場合には打ちに行く

となります.(厳密に言うと2つ目は少し怪しいですが,MLBのトッププレイヤーが球種の分かっている状態でスイングしない状況は合理的でないと今回は判断しました)

この状況は,今回のテーマとなっている「狙い球を張る」,具体的には「球種を張る」打者が打席内で取る振る舞いとよく似ており,球種を張ったときの効果に置き換えて考える方法がある程度有効であると考えます.(少なくとも実際のプロ野球の試合から取ることができるサンプルとして,今回のケースほど有用なものは過去にないと思われます)

先ほども言及したように,予測が当たったときと外れたときの打撃成績の変化から,必要な予測確率は約 85% であることが示されました.したがって,打者が球種を張るアプローチで打撃を行う場合,85% 以上の精度で球種を張ることが必要であると考えられます.

この数値の解釈については読者のみなさんにおまかせしますが,個人的な意見として, 85% 以上で予測できるのはせいぜい 3-0 からのストライクを取りに行くストレート程度で,それ以外の場面で 85% 以上の精度を持って予測するのは非常に困難であると考えます.

 

まとめ

本記事では,打者が球種を張ったときの環境をアストロズのサイン盗みの環境に置き換えて,得点を増やすために必要な予測率を算出してみました.

本来打席内での球種を予測する行動は反復試行であり,打者には「見逃す」行動もとることが出来るため,ストライクを取られることによる得点期待値の変化なども考慮にいれると,より現実に近い形の分析になって面白いんじゃないかと思いました.

 

最後までお読みいただき、ありがとうございました。ご意見などはこちらまで↓

twitter.com

 

 

 

*1:ヒューストン・アストロズ - Wikipedia より引用

*2:出塁率については元の数値が掲載されていなかったため,FanGraphsで確認した値を使用しています