DEIM Forum 2023 1a-4-5

MLB 試合データを用いた失点予測と継投計画の最適化
境田 晃大†

清 雄一† 田原 康之† 大須賀 昭彦††電気通信大学 情報理工学域 〒182-8585 東京都調布市調布ヶ丘 1-5-1
E-mail: †sakaida.koudai@ohsuga.lab.uec.ac.jp, {seiuny, tahara, ohsuga}@uec.ac.jp
あらまし：現在、野球界において「データ野球」というものが非常に浸透している。しかし、従来のデータ解析は統計的手法が用いられることが多く、機械学習が用いられる例は多くない。詳細なデータを得られるようになり、かつ、そのデータが公開されるようになったため、データ収集とこれを用いた機械学習が容易になった。野球においては、投手交代のタイミングが試合の勝敗を大きく左右する。そこで本研究では、１球ごとの失点数ラベル付きデータに、外部からの気候情報などを加えたデータセットを構築し、その１球での失点予測を行うことで、継投計画の最適化を図るシステムを提案する。元データを用いた５値分類よりも高い精度を示すことができた。
キーワード：失点予測、データ分析、投手交代支援、最適化

1 はじめに2 関連研究

現在、野球界において「データ野球」が非常に浸透し機械学習による野球分析は比較的新しい研究分野[4]ている。1970 年代にセイバーメトリクスに基づいたデーであり、既存の研究としては、おおよそ３つに分類する

タ分析が提唱され、2000 年代にはデータ野球による貧乏ことができる。１つ目は野球の試合結果の予測である。

球団の快進撃によって、データの重要性が注目されるよ

Valero[5]はセイバーメトリクス統計を含むデータセットうになった。日本プロ野球においても、当時ヤクルトスを用いて、MLB のレギュラーシーズンの試合結果（勝ワローズの監督であった野村克也が「ID 野球」を提唱敗）を予測するために、分類および回帰ベースのデータし、優勝争いから無縁であったチームを常勝チームに変マイニング手法で予測を行っている。結果としては、えていった。近年においては、軍事技術の転用によるトSVM が各チーム平均約 60%の予測精度で予測が可能に

ラックマンなどの精密機器を用いて、回転数や回転軸、なった。２つ目としては選手関連の予測で、選手パフォ球種といった詳細なデータを得られるようになった。今ーマンスやシーズン打率、年俸などを予測する論文が複ではこのようなデータが Baseball-Savant[1]や Baseball-数ある。Ishi[6]は、プロセスは優れているが結果が出てReference[2]、FanGraphs-Baseball[3]などで公開されていない選手に焦点を当ており、クラスタリングアルゴリおり、誰であっても分析が可能になっている。各球団がズムを使用して、成功した選手とプロセスが似ている選試合において目指すところは「勝つ」ことであり、その手を特定している。また、Ganeshapillai ら[7]は、正則ためには相手よりも得点する、または可能な限り失点を化された線形回帰を使用して投手固有の予測モデルを構抑えることが必要になる。データ野球が広まる前まで築している。この予測モデルは、投手交代のタイミングは、投手交代について監督の経験や勘に基づいて判断さを決める際に役に立つ。このモデルが投手交代させたがれてきた。これは非常に曖昧であり、適切な判断であっ監督が続投させた試合では、60%の確率でパフォーマンたのかは結果からでしか確認することができない。デースが低下したことが明らかになった。3 つ目は、球種やタ野球が普及してからも、基本的に統計手法が使われる球速、最適投球ゾーンなどの投手に関する研究である。

ことが多く、機械学習による研究は多くない。そこで、

Woodham ら[8]は試合中のある特定の時点で、先発投手

本研究ではフォーカスの比較的当たっていない継投計画を交代するかどうかを予測している。Woodham らの知について、pybaseball ライブラリから得られる１球ごとる限りでは、先発投手をいつ交代させるのかについてののデータを用いた失点数の予測と、投手交代の意思決定監督の意思決定をモデル化したのはこの研究が初めてでまでを行うことを目的とする。

あるそうだ。先発投手が交代した最後の投球に対して１のラベル(その他：0)が付与され、Light-GBM や DNN、DEIM Forum 2023 1a-4-5
ランダムフォレストなど複数の分類アルゴリズムで比較

数値化を図っている。

している。結果として、ランダムフォレストを用いた際に Accuracy が最も高くなり（96.96%）、Gradient-Boost

3.3 不均衡データへの対処を用いた際に F-score が最も高くなった（53.54%）。

失点予測をする際、１球ごとのデータには０〜４までの本研究では、Woodham らの研究とは異なり、失点とい５つのクラスが存在し、表 1 からも明らかなように、失う部分に焦点を当てて投手交代の意思決定支援を行う。

点数０とその他ではクラスデータに強い偏りがある。偏りが存在するまま機械学習を行うと、失点予測ができて3 提案手法いないにも関わらず、高い精度を出してしまう。そこ全体の流れとしては、まずデータの前処理を行う。そで、この問題を対処するために Synthetic Minority Over-して、前処理済みのデータを用いて、失点予測モデルをsampling Technique (SMOTE)[10]を適用した。これは構築する。最後に、作成した学習済みモデルを用いて、オーバーサンプリング手法の１つで、少数派データを単

最も失点を抑えてくれる投手への交代を支援する。にコピーするのではなく、検出した近傍のデータとの内挿を使ってデータを増やしている。新たに増やすデータ

3.1 データセット

𝑥𝑛𝑒𝑤 は、ある少数派データ𝑥𝑖 とその任意の数の近傍デー

一般に公開されている１球ごとのデータセットがないた

タからランダムな１つのデータ𝑥̂𝑖 が選ばれ、その差と𝑝 ∈め、データセットの構築から始めた。データ収集のため[0,1]との乗算を加えて作成される。式 (1)にこれを示に用いた Python ライブラリは pybaseball で、MLB の主す。

要なデータサイトから取得したデータを扱うことができ

𝑥𝑛𝑒𝑤 = 𝑥𝑖 + (𝑥̂𝑖 − 𝑥𝑖 ) ∗ 𝑝 … (1)る。これを用いて、2011 年から 2021 年の 10 年間での１球ごとのデータ(約 700 万球分)を取得した。ラベルの表１：ラベルごとのデータの割合

割り当てについては、投手が失点した 1 球に対して、失ラベル

01234

点数をラベリングしている。例えば、失点数２であると割合

97.7

1.8

0.4

0.096

0.016

き、データには２のラベルが割り当てられている。

(%)

3.2 データの前処理

3.4 モデル・特徴量作成：

前処理済みのデータセットにおける、LightGBM を用い不足していると考えられる特徴量に関して、精度改善た５値分類と失点数 1,2 の数が少ない、かつ、失点パタのため特徴量の作成を行う。加えて、Visual-Crossingーンが多いクラスを個別に２クラス分類し、５値分類にWhether and API[9]から得られる試合日の気候データをよる結果に対し、予測値を上書きするモデルを提案す追加している。また、複数の特徴量を組み合わせて新たる。これを図１に示す。に特徴量を作成を行う。具体的には、各試合に対する投手名、打者名の TF-IDF 値を算出し、特徴量として加えている。
・欠損値・外れ値の処理：
今回取得したデータセットには、情報が計測されなかった投球や敬遠など、失点を予測する際に結果にネガティブな影響を与えてしまうデータがある。本研究では、このようなデータは削除している。

図１：5 値分類と２値分類の組み合わせモデル

・エンコーディング
機械学習におけるカテゴリ変数は、数値化する必要がある。そこで、投手名・打者名・球種に関してはカウントエンコーディングを、ホームチーム名、アウェイチー
ム名に関しては、ラベルエンコーディングをすることで５値分類の際にはオーバーサンプリングを、２値分類の際はアンダーサンプリングを用いている。

DEIM Forum 2023 1a-4-5

3.5 継投計画最適化システム

表 4：前処理済みデータによる組み合わせモデル

ピンチ時における継投計画を行う。データセットをチーム毎に分割し、投手・球種・投球ゾーンの全組み合わせから、機械学習モデルを用いて失点０になる確率が最も高いものを探索する。モデル図は以下の図２に示す。

precision

f-score

00.98

0.99

10.14

0.18

20.05

0.02

30.14

0.03

40,000.00

そして、f-score の macro average 値を表５に示す。

表５：各モデルの macro f-score
モデル

macro average

ベースライン0.20

前処理済み５値分類0.22

前処理済み組み合わせモデル

0.24

図 2:継投計画最適化システム図

4 実験と評価
本研究ではチームごとにモデルを構築し、チームごとにパラメータ設定、評価を行う。
ベースライン手法としては、前処理を行う前のデータセットに対する LightGBM を用いた５値分類を用いる。
各手法において 5 分割交差検証により、モデルの汎化性の改善を行っている。評価指標としては、 各クラスにおける precision 値、f-score、macro_f-score を用いる。例
として、ボストン・レッドソックスの投手に対して、ベースライン手法、提案手法を用いた結果が以下の表 2,3,4のようになった。
表 2：ベースライン手法
ラベル

precision

f-score

00.98

0.99

10.15

0.01

20.00

0.00

30.00

0.00

40.000.00

表 3：前処理済みデータによる 5 値分類モデルprecision

f-score

00.98

0.99

10.09

0.00

20.00

0.00

30.06

0.07

40,030.05

各モデルにおける、特徴量の重要度上位 5 つは以下の表6 のようになる。そして、表７にその特徴量の簡易的な説明を示す。
表 6:各モデルにおける重要度
ベースライン(特徴前処理済み 5 値分類

量 20 個)(特徴量 29 個)

Zone(15%)

Zone(11%)

Pitcher_name(14%)

Pitcher_name(8.8%)

Game_ID(7.7%)

Batter_name(6.3%)

Batter_name(6.6%)

uvindex(4.1%)

On_2b(6.0%)

On_bases(3.9%)

表 7:特徴量の説明
Zone

投球場所

Pitcher_name

投手名

Game_ID

試合ごとに付与される固有の ID

Batter_name

打者名

uvindex

紫外線量

On_2b2 塁上にランナーがいるか

On_bases

塁上のランナーの数

継投計画最適化システムによる出力結果は表８のようになる。実際の投球シーンと提案手法を用いたシーンを比較している。

DEIM Forum 2023 1a-4-5
表 8：最適化モデルによるピンチ時の継投計画結果

実際のシーン
提案のシーン

実際の失点数
４

投球ゾーン
12

投手名

球種

Sale, Chris

4-Seam6

Ort, Kaleb

Fast-Ball

6 まとめ
本研究では、pybaseball から得られる投球データに対し、精度向上のために複数の前処理を行った。加えて、失点予測モデルを構築し、このモデルを用いて継投計画最適化システムを作成した。精度としてはベースライン手法と比べ、提案手法は macro_f-score 4%の向上が見られた。今後の展望としては、より多くのデータ収集をこの投手に交代し、指定の球種、ゾーンに投げることで失点０になる確率は最大で 89.9%になる。

し、精度の向上を目指す。また、シミュレーションなどを用いた継投計画最適化システムの評価を行っていきたい。

5 考察
参 考 文 献データの前処理に関して、特に TF-IDF を用いた特徴量作成は工夫した点でもあり、精度向上にも役立ったと考える。特に試合に対する投手の TF-IDF 値は、先発投手に有効であるとわかる。なぜならば、１度登板すると数日は投げないため IDF 値が高くなり、登板し、調子が良ければ１試合あたり 100 球近くなげるため、TF 値が大きくなる。つまり、調子の良い先発投手の値が大きくなる。実際に、特徴量の重要度も７位に入ってきている。

[1] Baseball-Savant, https://baseballsavant.mlb.com/[2] Basevall-Reference,” https://www.baseballreference.com/”[3] Fan-Graph baseball, “https://www.fangraphs.com/”[4] K. Koseler and M. Stephan, "Machine learning
applications in baseball: A systematic literaturereview", Applied Artificial Intelligence, vol. 31, no.
9-10, pp. 745-763, 2017.
[5] C. S. Valero, "Predicting win-loss outcomes in mlb

予測モデルに関して、特に１失点に関しては失点する

regular season games: A comparative study using

パターンが非常に多いと考える。例えば、ランナーなし

data mining methods", International Journal ofでホームランによる１失点や、ランナー１塁での２ベーComputer Science in Sport, vol. 15, no. 2, pp. 91-

スヒットによる１失点などがある。逆にランナー１塁で112, 2016.の２ベースヒットであっても、１塁ランナーの走る速度[6] T. Ishii, "Using machine learning algorithms toによっては得点されないケースも存在する。２失点に関identify undervalued baseball players", Technical

しても同様のことが言える。５値分類に関しては、Report: Stanford University, 2016.

SMOTE アルゴリズムを使用したオーバーサンプリングを適用したが、このモデルでの１〜２失点ラベルの水増しがより学習を混乱させてしまったのではないかと考える。そこで、１〜２失点ラベルに関しては、個別にアンダーサンプリングを用いることとなった。無駄にデータを増やすことよりも、質の高いデータによって、量が少なくても精度の改善（macro f-score 4%増）が可能であ[7] G. Ganeshapillai and J. Guttag, "A data-driven
method for in-game decision making in mlb", SloanSports Analytics Conference, 2014.
[8] M. Woodham, J. Hawkins, A. Singh and S.
Chakraborty, "When to Pull Starting Pitchers in
Major League Baseball? A Data Mining
Approach," 2019 18th IEEE InternationalConference On Machine Learning And Applications

ることがわかる。また、失点確率に閾値を設けることで(ICMLA), Boca Raton, FL, USA, 2019, pp. 426-431,

より精度が増すのではないかと考える。失点０の予測確

doi: 10.1109/ICMLA.2019.00080.

率は常に比較的高い値を示しており、他の失点確率が投[9] Visual Crossing Wether and API,

球の前後で相対的に増加していてもその影響が小さい。
Recall 値の増加になる可能性もあるが、各失点確率にあ“https://www.visualcrossing.com/”[10] Chawla, N. V., Bowyer, K. W., Hall, L. O., &る閾値を設けることで、確率の相対的な変化を汲み取る

Kegelmeyer, W. P. (2002). SMOTE: synthetic

ことができるのではないかと考える。

minority over-sampling technique. Journal ofartificial intelligence research, 16, 321-357.