2015年12月3日木曜日

階層型モデル:守備毎打撃力

Therapeutic Touch を検証」からの続き。

今回はモデルの詳細より先に、モデルを実装したスクリプトの実行結果から、その目的を示す。

2012 年のデータから、948 名のメジャーリーグ選手の守備と打撃のデータを、本書提供のスクリプト Jags-Ybinom-XnomSsubjCcat-MbinomBetaOmegaKappa.R で分析。分析は、守備と打撃の関係を測ること。

以下は、スクリプトを実行して、本書の図 9.14 を再現したもの。
左図は投手と捕手の、右図は捕手と一塁手の「position-level 打撃力 ωc」の比較。ωc は 前回「Therapeutic Touch を検証」の「group-level parameters の ω 」に相当し、守備(Category)ごとの ωc 。

左図の投手と捕手の比較では、95%HDI [-0.132 : -0.0987] と投手の打撃力が劣っている。方や右図の捕手と一塁手の比較では、95%HDI [-0.0285 : -0.000285] と大きな差ではないが一塁手が勝っている。

次に、group-level の ωc と、個々の選手の関係を見る。

個々の選手は θs|cSubject | Category)。以下は本書の図 9.15 を再現したもの。
左図は一塁手 Kyle と投手 Bruce の比較。二人とも打数が極端に少ないが、position-level の ωc により "Shrinkage"("Shrinkage" については前回投稿参照)が起こっている。Kyle は実際の打率は 1/5 = 0.20(赤「+」印) だが、一塁手の position-level により右に寄っている。投手 Bruce の場合は左に寄っている。

右図は同じライト守備の ShinSooIchiro の比較。二人とも打数は多く、95%HDI の幅は、左図の一塁手と投手のものより圧倒的に狭い(つまり、データが多いので、強い確証が持てる)。また、ShinShooIchiro は、position-levelmode = 0.259 側に僅かながら "Shrunken" している。


階層型モデルの特徴

「一つの造幣局で全コインの偏り」と同様に、選手 948 名の分析を「メジャーリーグの全選手の打撃力」というモデルも可能。しかし、今回の分析とどちらが有効かは明らかだろう。同様にこのモデルを言葉にすれば「メジャーリーグの守備ごとの打撃力」という、まさに「階層型」の分析。

本書からの引用

The hierarchical structure is an expression of how you think the data should be meaningfully modeled, and the model description captures aspects of the data that you care about. 

以下は、左が今回のモデルの図 9.13 、右が前回のモデルの図 9.7
最下段のサンプリングデータ yi|s,c と yi|s の違いの内訳は、階層の上部にさかのぼると明らか。

以下は図 9.17 を再現したもの、全守備 つの ωc と、overall mode の ω 。
つの ωc は overall の ω に関係し、全選手のデータは各 ωc に関係する。

overall-level の ω の 95%HDI の幅は約 0.11 で、一方 ωc は概ね約 0.02 。つまり overall-level の ω が明らかに広く、確信度は低い。これは、高々 9 つの ωc との関係のためで、948 名のデータによる ωc との確信度の違いは明らか。

「データの捉え方がモデル化」であり、階層型モデルは直感的にも非常に理解しやすい。さらに特徴的なのは、モデル化の方法は恣意的だが、その分析結果は データが語る という、Bayesian の真髄ともいうべき点。そのため、分析結果に恣意的な操作が入りにくい(とはいえ、人の行為なので「100 % 入らない」とは言い難いが...)。

実務においても、この階層型モデルの応用範囲は広い。

0 件のコメント:

コメントを投稿