2018年9月16日日曜日

フライボールの変化が得点貢献に与える影響3: 移動平均を利用した打者の理想角度の推定の試み

もはや誰も憶えていないと思いますが 、前回までに、打球の角度を大きくすることが簡単な方法 (平均角度、あるいは平均角度の変化に関する単回帰) でみる限り、wOBAの改善という観点では、少なくとも全体的な傾向として見る限りあまり価値が無さそうなことを確認しました。

また、角度を大きくする価値が高い選手を探せる可能性がありそうな方法としてTangoによる移動平均値を利用する方法を紹介しました。つまり、打球角度に沿って打球の1/3のwOBAconの移動平均値を計算し、それを最大化する角度を理想的な角度とする、という方法です。今回はそれをいろいろと試していきます。結論から書くと、それに向かって角度を上げたり下げたりして良い結果を導くという、実用的な効果はあまり期待できないという感じですが。

まずこの移動平均で計算される結果の基本的な性質を掴むために、MLB全体の打球 (15-17; ファールと、バントの大部分を除く) に対してこの方法を使って理想角度を求めてみます (実際には理想なのかどうかはわからないので、この呼び方はやや問題がありますが)。下は移動平均値をプロットしています。


赤の点線で示した19°ほどにピークがあり、MLB全体で見るとここがこの方法で推定されるだいたいの理想的な角度、ということになります。これがどのように決まったかを見るために、打球の角度による打球をグループ分けして、その数と価値 (wOBA) を示します。


水色の点線では打球の角度を2.5°ずつにグループ化し、それらの平均wOBAを示しています。見づらいので一部を拡大して示します。


19°はこの図では中央のM字の落ち込んだ部分に相当し、理想角度はかならずしも打球価値のピークでは無いことが確認できます。平均的な打者では12°あたりの低いライナー性の打球とのピークと27°あたりのHRになるような価値の高いフライの角度のピークの高さがほぼ同等であり、また20°付近を中心にして概ね左右対称となっています。このため20°付近 (つまり19°)を中心とすると両方の大きなピークから打球を多く含むことになり 、打球価値だけでみても理に適った理想角度になっているように見えます。

ここで、上下の幅に相当する1/6という打球の数がどれくらいの角度範囲に相当するか、という問題があります。この例 (MLB全体) では実のところ計算していませんが、あとで示す各選手についての計算で試した感じでは、だいたい上下に10~15°程度の幅になっているようでした。つまり19°を中心とした場合, 10-30°あたりの打球の価値の平均を取っていることになります。

理想角度の計算では打球の数 (上の図のN) も関連します。上の図では打球の数は比較的価値の高い15°付近にピークがあり、概ね対称になっているようです。ここで仮に打球価値のピーク (19°) より上の角度で突然打球が非常に少なくなるとどうなるでしょうか。この場合、19°を中心にして上下に同じ打球数を数えると、低角度側 (左) には角度の広がりが少なく、高角度側 (右) に広い範囲になるはずです。こうなると、高角度側の遠く離れた価値の低い打球を拾いやすくなるので、理想角度は低角度側にシフトするだろうと思われます。上の平均値の例では、打球の数の分布 (N) も、価値のピークと概ね一致した上に高角度側と低角度側で概ね同程度の数の打球数があるのであまり影響は無かったと思われます。個人に適用する場合には、多少影響があるかもしれません。

ところで、打球数にしても、打球価値にしても、特定の低い角度グループで謎のピークが出ています。これはおそらく、実際の打球から角度が測定できなかったために推定値を入れている部分だと思われます。-90°あたりの価値のピークは単にサンプルが少なすぎるために起きたという可能性もありそうです。とりあえず無視して進めることにしますが、打球価値の低角度でのピークは後でそれなりに効いてきます。

同様の方法を選手ごとに適用して、理想角度を求めました (MLB15-17で200以上の打球を打った選手が対象)。



打球数と、理想角度からのずれとの関係を示しています。基本的にほとんどすべての選手が理想角度よりも低い角度となっていることがわかります。Tangoはこれについて、三振を減らすためにはある程度下げないといけないとかそういう可能性を考えているようです。また、理想角度に極端に近い選手も遠い選手も打球数が少ない傾向にありそうです。これはおそらくいわゆる、少数の法則、というやつで、推定が正確でないために、理想角度の推定値に極端な数値が出やすくなっているのだろうと思われます。

一応極端な結果になった選手などの具体例を挙げておきます。

Dae-Ho Lee (李大浩): 角度差最大.
Ryan Schimpf: 実際の平均角度最大.
Travis Jankowski: 実際の平均角度最小.
Giancarlo Stanton: なんとなく.

Aに示したShimpfは実際の打球角度が30°を超えている、はっきり言って打球を上げすぎていると思われる打者です。この移動平均値の図では、計算の都合上、打球のうち角度が高い1/6と低い1/6の部分は計算できないため、表示されません。Schimpfの場合で言うと5°より低い打球は1/6程度しか無く、55°より高い打球が1/6程度あったということになります。

Bでは李大浩を示しています。彼は理想角度はそれなりに高く20°を超えており、その範囲内でのwOBAconもなかなかのレベルですが、実際の平均角度が非常に低いケースです。

CのJankowskiは非常に理想角度が低いケースです。この方法がある程度以上正しいのであれば、野球の実況でよくある、ライナーが外野でアウトになって、「上げすぎました!」が当てはまっているケースという感じでしょうか。

DはStantonを示しています。非常に長打力があるイメージですが、計算された理想角度はリーグ平均と同程度でした。Stantonは他の注目した打者に比べて打球が多くなっています。Stanton以外は角度系の指標で極端な値を示す打者を集めてきたため、サンプルが少なく推定の甘い打者が選ばれてしまっているということだと思われます

この計算された理想角度が、打球価値を高める上で役に立つのか、ということを検討します。とりあえず、まずは選手間で見て、理想角度からのズレと、wOBAconの値に関連があるか、というのがよくある安直な方法だと思われます。問題としては、wOBAに影響を与える要素はこのズレだけでは無いはずです。とりあえず打球パラメータでは影響が大きいものである打球速度だけ調整して、角度のズレの影響を検討してみます。


この図では理想角度ごとにグループ化して図を分けて示して、x軸に平均速度をとり、y軸でwOBAconを、色で角度のズレ (理想角度 - 実際の平均角度) を示しています。角度のズレが選手間でのwOBAconでの非効率性の違いにつながっていたのであれば、同じ速度で比較した時に角度差が大きいほどwOBAは低くなっているだろうと予想されます。どの理想角度グループでもそのような傾向は見えません。下は最もサンプルが多い理想角度17.5~20について、もう少し詳しく見るために、特にズレが大きい選手15人を名前でラベルしています。ズレの大きくても全体的な傾向よりもwOBAconが高い選手もそれなりにいるようです。これらの結果から、少なくとも選手間での比較では、非効率性を予測する役には立たない可能性が高そうです。



というわけで、Tangoが示した移動平均を利用した方法を試してみましたが、その方法で推定された角度に近づけることはあまり打撃成績につながらない可能性が高そうです。この方法で出てくる角度は、MLB全体のデータから見た限りではそれなりに理に適った角度を示しているように見えるにも関わらずこのような結果になりました。その理由について少し調べてみた感じでは、
  1. 理想角度に近づけると価値が非常に低いフライが増える
  2. 理想角度に近づけると程々に価値があるゴロが減る (注目している範囲以外での価値が低下する)
  3. 実際の平均角度が低い打者は角度が低い打球の価値が高い傾向がありそう
あたりが理由かもしれません (注1にデータを示しています)。

これは逆に言えば足の遅いような打者が角度を下げすぎるとペナルティが大きいだろう、という可能性に繋がります。例えば、上で挙げた李大浩あたりはこのような打者の例にあたるでしょう。足の遅い選手が角度を下げすぎるとのが良くないというような話は、数字を計算しなくてもほとんど明らかな感じがしますが、数字を使えば効果があるかどうかだけでなく、どれくらい効果があるかを調べることもできるでしょう。ゴロの打球価値や、StatcastのSprint Speedあたりが利用できるんじゃないかと思います (やりませんけど)。李大浩でもwOBAconは0.41くらいでまあまあのレベルは維持していますし、全体的な傾向としては、長打力があれば角度が低くてもwOBAconは高めに出るので、個人的にはそこまで大きな効果は無いんじゃないかと思っています (注2)。また、李大浩の場合は狙ってその角度に打っていたというより、MLBの投手に短い期間ではうまく適応しきれなかった、というようなこともあると思うのでちょっと特殊な例かもしれません。

話を方法論に戻すと、この方法のありうる問題としては、正確に推定するためにはかなりのサンプル数が必要であり、さらに角度が変化した場合に、理想の角度も変化する可能性があるということが挙げられます。この場合、サンプルが足りなくて推定が甘いため上のように役に立たなかった可能性があります。

下は、2015, 2016年とそれぞれの次の年の各選手の理想角度をプロットしています。



平均はいずれも17, 18°程度ですが、前年度 (x) に25°であった選手の、直線回帰の予測値は21°ぐらいであり、平均からの差が50%程度回帰で失われています。また、角度が上昇した選手で、理想角度も高くなる傾向があったようです (逆よりはマシかもしれませんが)。例えば5年分ぐらいサンプルがあればある程度正確に推定できるかもしれませんが、その間レギュラークラスの打球数を打たせているレベルの選手の打撃を無理にいじるのは、多くの場合あまりいいアイデアではないかもしれません。少なくとも、試合の打球データだけでこの方法を使うのはちょっと無理がありそうです (注3)。

というわけで移動平均を利用した方法を見てきましたが、予測や個別の選手の指導方針的な部分で役に立てるのはなかなか難しそうです。一応この方法を擁護しておくと、基本的にはそれなりに理に適っているように見えます。それにもかかわらず役に立たないというのは、そもそも平均角度に注目するというアプローチ自体の効果の低さをほのめかしているように個人的には思えます。

この原因の一つは平均値だけに注目していることかもしれません。このような考え方は当然目新しいものではなく、例えばTangoは打球速度に関してですが、極端な例を持ち出して平均速度を計算することが無意味であるケースを説明しています。

Tango, Solution to calculation of “average” exit velocity?, 2016.
 http://tangotiger.com/index.php/site/article/solution-to-calculation-average-exit-velocity

この例では、それぞれ2つの打球を持つ二人の打者を考えています。一人目は、非常に早い打球である100 mphの打球と止めたバットにあたった40 mphの打球を持ち、この場合平均は70 mphです。ここでMLBでの非常に非力な打者の典型的な打球として75 mphの打球を2つもつ打者がいれば平均は75 mphです。後者のほうが速度は早いですが価値が高いと言えるでしょうか?

ここで速度から期待される価値Statcastデータから大雑把に推定すると、前者のwOBAconは約0.4 ((0.7+0.125) / 2)、後者のwOBAconは約0.25 ((0.25+0.25) / 2) なり、平均速度の小さい前者のほうがかなり価値が高いという結果になります。このような逆転現象は、単純な速度の平均が価値と速度の関係を考慮できていないために、このような結果になったと考えられるでしょう。また、価値を考えなくても平均値からの乖離の程度が異なる値、例えば (100 + 40) と (70 + 70) がデータとして同じ、と言っていいかどうかは考えるべき点があります。

図を使ってこの具体的に見てみましょう。下の図は乱数を発生させて、打球角度っぽい値を2 x 400ずつ取得し (それぞれをgroup 1, 2としています)、いろいろな方法で可視化しています。これらは平均は同じですが、上の極端な例と同様に平均値からの乖離の程度が違います。



Aはそれぞれの全打球データを概ねそのままプロットしました。グループ1と2を比べると、平均はだいたい同じですが、2は上下に広がりが大きく、かなりばらつきが多いことがわかります。この差は乱数を発生させる際のばらつきの大きさをそれぞれのグループで変えているためです (平均 = 12, 標準偏差SD = 18 vs 30; 実際には角度のSDが18は低すぎてありえなさそうですが見やすさのため)。平均値が同じでもデータではかなり差があることが見て取れます。

Bはヒストグラムで、Aを横に倒して、下の位置を揃えたイメージですが、それぞれの棒の範囲の中での区別が大雑把になっている分、Aよりも少し情報量が減っています。逆にあまり意味のない小さな差に振り回されにくくなるかもしれないので利点にもなりそうですが、範囲をどう設定するかで見え方が変わるのでやや注意が必要です。

Cは箱ひげ図で、中位値や四分範囲値などの分布の性質を捉える特徴的な値だけを示しています。情報量としてはさらに減っていますが、どの数値あたりのどれぐらいあるかということは (少なくとも見慣れている人間にとっては) よりわかりやすくなっています。

Dはよくある棒グラフとエラーバーで示しており、ここではエラーバーはSDを示しています。この例では平均に比べてSDが大きすぎるため、不格好と言うか非常に見づらいという問題もありますが、それを無視してもA-Cに比べても情報量が少ないことがわかります。 例えば、分布の歪み、外れ値からの影響の大きさ、あるいは複数のピークがあるかどうかといった情報は失われています。

という感じで、AからDに至るまでに情報量が落ちていくような図を作ってみました。こういう情報を伝える過程で情報量が落ちていっていることを認識するのはそれなりに重要だと思います。実際、科学的な分野では棒グラフとエラーバー (SD, SE, 95%CIなど) で示すのは、実際の分布の性質を表すことが難しいのでいい加減やめようとなっている分野は少なくないのではないでしょうか。

ただし、情報量が多ければいいのかと言うと微妙なところもあります。生のデータは人間の頭では理解するには複雑すぎることが多いですし、例えば分布同士を比較する場合、特徴的な値にある程度注目したほうが比較しやすいと思います。また、個人でデータを分けて効果を考えるなどの場合にも、特徴的な値を使わないと操作が困難になったりすることもあるでしょう。

話を平均角度に戻すと、この値はDの棒の高さや、Cの箱ひげ図の真ん中の棒あたりだけを見ていることになり、1と2の間に差がないと考えてしまうことになります (箱ひげ図の中央は実際には中位値ですが似たようなものとしましょう。実際には角度のデータでは結構違いがあります。)  (注4)。

角度の分布を、極端な具体例を見てみます。下はJoey VottoとCarlos Perezの15-17年のデータをヒストグラムで示しています。



ヒストグラムの上に、それぞれのデータの特徴を示す値を載せています。この二人の打球は平均 (mean) や中位値 (median) は近いですが、SDがかなり違います。ここでは歪度 (skewness) も計算していますが、これは分布がこの図でいうと左右でどれくらい歪んでいるのかを示すような値です。上の図では広がりの違いがわかりにくいので一つの図の中で比較しやすい密度分布にして、色を変えて比較してみます。


平均角度だけを使う場合、このような広がりの違いを無視することになります。平均に加えて、例えば打球の角度や速度についてのSDを使えばこの違いをある程度反映できるはずです。

打球の広がりを反映しても、打球の価値をうまく評価できるようにならないならば、あまり意味はないと考えることもできるかもしれません。この点に関してはEli Ben-Poratがいい感じの説明をしてくれています。

Eli Ben-Porat, Mike Trout, Statcast Darling, 2018
https://www.fangraphs.com/tht/mike-trout-statcast-darling/

ここでは、打球の角度と速度のSDを考慮することは、実は打球速度や角度の値と、打球の価値との関係を考える上でも重要となりうることが議論されています。

というあたりで項を改めて続く。

<参考>
Statcast data https://baseballsavant.mlb.com

前半あたりのもっと細かい話はRPubsに書いています。
https://rpubs.com/snin/mov_avg_wOBAcon_1
https://rpubs.com/snin/mov_avg_wOBAcon_2
https://rpubs.com/snin/mov_avg_wOBAcon_3
_________________________________________________________
<注>
1.
ここではその理由を調べる一つの方法として、上で注目した理想角度17.5~20のグループで、なぜwOBAconがあまり変わらなかったのか検討してみます。まず、この集団における、打球角度に沿った平均wOBAconを示します。



10°-30°あたりで非常に価値が高いことがわかります。しかし、そこから高角度側では打球価値が急激に低下し、40°以上ではほとんど打球価値が無いこともわかります。

ここで理想角度17.5~20のグループの中では理想角度が一致しているわけですから、打球の価値はある程度揃っている可能性が高いと思われます (実際には低角度部分では違うかもしれないことを後で示します)。一方、実際の平均角度に注目するとかなり個人差があるはずです。今度は、理想角度が揃ったこのグループの中で実際の打球の平均角度でさらにグループ化 (angle_group) して、打球角度の分布を見てみます。



推定値を放り込んでいると思われる不自然なピークを無視すると、実際の平均角度が高いグループほど全体的に角度が高角度側 (右) にシフトしています。ここでは特に5°-8°のグループと、14°-17°のグループに注目するので、それだけを抜粋した図も示します。これらに注目した理由は、比較的人数が多く、かつ比較的極端な角度であることです。



青の破線で示した14°-17°のグループでは、価値が特に高い打球である10°から30°の打球相対的にが多かったことがわかります。ただし、価値が非常に低い40°以上の打球も多かったようです。5°-8°のグループは10°以下の低角度領域で打球が多くなっています。

さて、ここで打球の価値が平均角度に依存しない、つまり理想角度グループ内で一定であると仮定すると、その平均価値とグループごとに特有な打球の頻度から、各平均角度グループそれぞれのwOBAconを推定することができます。下の図は角度で分けた部分ごとの推定されたwOBAconです。



特に注目している平均グループの結果を別に示します。



角度が大きい14°-17°では当然10°から30°あたりで大きく価値を稼いでいます。しかし、角度が小さい5°-8°のグループは低い角度 (0°以下) あたりで相対的に価値を稼いでおり、特によくわからない-20°のピークあたりで価値を取り返しているようです。

これらの角度ごとの値をすべて足し合わせたものが推定wOBAconとなります。


5°-8°のグループと14°-17°のグループはほとんど変わりません。実際のwOBAconと比較してみましょう。下は実際のwOBAconと打球速度の平均を示しています。



極端に高いor低い平均角度グループを除けばそれなりに悪くない推定になっているようです。推定値の足し合わせは角度が大きい14°-17°でも角度が小さい5°-8°でもほとんど変わらず、実際のwOBAconの値に差がないことと概ね一致していると言えるでしょう。これは上で説明したように、角度が小さい5°-8°は角度が低い領域の打球で価値を取り返している可能性を支持しているかもしれません。2°-5° あるいは17°-20°では予測値からかなり乖離していました。これは、これらのグループでは含まれる個人の数が少なくうまく推定できていない、あるいは他の要素としては打球価値が一定という前提があまり当てはまっていない、ということもありえます。実際の打球速度の違いも関連があるかもしれません。

上の推定wOBAconと実際のwOBAconのテーブルを比較すると、推定wOBAconの方は角度が高い選手を過大評価しているように見えます。これは、この計算のために置いた角度に沿って打球価値が一定という仮定が多少不適切であった可能性があるかもしれません。下は特に注目している14°-17°と5°-8°のグループのそれぞれの、打球価値を示しています。



主要なピーク部分である0°から30°あたりではあまり差がなさそうに見えます。これは、上でMLB全体について説明した内容と合致していると言えるでしょう。一方で、特に角度が低い-30°以下あたりでは角度が低い5°-8°のグループのほうが高そうに見えます。角度が低い選手は、角度が低い打球でも少し価値が高いという可能性がありそうです。上の推定で角度が低めのグループで推定wOBAconが低い傾向があったのは、部分的にはこのためでしょう (おそらく足が速い) 。この移動平均を利用した方法では、このような極端に角度が低い領域はピークからピークから過ぎているため、ほぼ考慮するのが困難のように見えます。上で見られた、価値一定を仮定した時に平均角度が低い選手の価値が低く出がちなのは、この低角度側の価値の違いが関わっているかも知れません。

2.
長打力がある打者が角度を上げても、それほど効果がなさそう (少なくとも長打力が高いという事実のほうがかなり影響が大きく、角度を上げることの追加的な効果はそこまで大きくなさそう)、というあたりは前回書きました。「理想角度からのズレとwOBAcon」の1つめの図で、打球速度だけに注目してもなんとなくわかるかもしれません。ついでに書いておくと、平均打球速度と平均角度を線形モデルにぶち込むと、交差項は有意ですが、結構な部分は (考慮されていない、考慮されるべき変数との) 交絡を拾っているような気がします。

移動平均を利用した方法でもうちょっとやるなら、MLB全体の傾向である理想角度に合わせて、計算された値の-5°くらいが最適として見直してみると、もしかしたらなにか見えるかも? これも「理想角度からのズレとwOBAcon」の1つめの図を見ると、無理があるかな? wOBAconじゃなくてwOBAで見ると? (やりません)

あとは、角度に関して問題になるのは打球の方向でしょうか。いわゆる逆方向の打球は、引っ張り方向にくらべて打球がかなり (20°ほど) 大きくなる傾向があるので、単に方向が変わったために角度が大きいように見えた、というケースが入ってくるのが影響を過小に評価させている可能性があるかもしれません。打球角度ではなく、スイング自体の角度を推定して影響を調べるともう少し見えかたが変わってくるかもしれないし、解釈が困難になる弊害のほうが大きいかもしれない。逆方向に打つことを前提にスイングを作っているように見える打者もいたりするので、このあたりはなかなか難しい印象を持っています。

3.
理想角度についての回帰の大きさについては、打撃指標の中で極端に回帰の影響が大きいものではないです。が、この指標は普通の打撃指標と違い、測定されたデータから推定された値を目標にする、というような使われ方をここでは想定しているので、特に回帰の影響が問題になりやすいと思います。

4.
ところで、仮にこの適当に乱数から取得して示した角度データが実際のデータであれば、すべてをプロットして示しても、速度が示されていない時点で、価値に関する情報はかなり損なわれていると言うべきかもしれません。考えたいのが価値であれば、両方考えるべきであって、角度だけをどれだけ正確に伝えても全体の理解としてはあまり意味はないかも、的な意味で。

これは平均されたデータでも同じで、上で速度100 mphでwOBAcon 0.7と書いていますが、これも速度だけを考えたMLB全体の話。全体的な角度が平均よりかなり低い打者だと、期待値はもう少し下がるはず (速度が主に効くのは低めのフライなのでこれが少ないと価値が少し下がる)。ある要因について調整されて計算された期待値は、考慮されていない要因との交絡ごと計算されるはず。なので、「それ自体の価値」的な効果とは大なり小なり異なることが多くて、どれぐらい違うのか考えないといけなくなったりする (話が飛びますが、これはXRを個人評価に使ってはいけない理由の一つ。)。

で、速度と角度を考慮すると各打球のxwOBA (あるいはそれに類するもの) になりますが、更に言うと、これだって他の影響を持つ要因を無視している。まず、守備がいないところの打球は価値が高いという意味で、方向や距離も価値に関連するはずでしょう。少なくとも打球の価値の記述としては意味はおそらくある。しかし、各打球のxwOBAは速度と角度までは考慮しますが、守備位置の穴に打ったかどうかは考えていません。これは、人がいないところに打球を制御するという部分で投手や野手に大きな能力があると考える証拠が無いため、考慮に入れたくないという評価上の理由だろうと思われます。さらに、xwOBAは走力を考慮に入れて計算することもおそらく可能ですが、そうしていない。このため、打者ごとにまとめてしまうとややバイアスが大きい。しかし、その代わりに打球一つ一つの価値の推定としては妥当性が高い。打球ごとに評価する目的を優先しているのかもしれません。

実際に起こったことをどう記述できて、その中のどの部分を取り出したくて、集計なりモデルなりで自分が実際に何を取り出してきて、どれだけを伝えられるか、あるいは伝えるべきなのか (or スペース的に伝えることを許されているのか) 、というのはそれぞれけっこう乖離があったりする。最終的に全体をうまく反映できているのか、が大事であって、どこか特定の部分だけを正確に測れたり示したりしても、あまり意味無いよね、という話でした。