星期一, 11月 14, 2005

CPBL的Batting Run

根據文書記載,最早開始使用Batting Run(BR)這個概念的人是Pete Palmer,
他在70年代,透過最小平方法嘗試去解析得分背後,
每個因子(一壘安打、二壘安打、全壘打、四壞球等)所佔的權重,
而得到一個BR公式。
這裡有關於Batting Run公式發展及其內容的一些介紹

某種程度上,套用統計學的觀點,
Palmer做的東西其實就是迴歸,
(寫到這裡,沒學過統計學的朋友,往下可能會比較痛苦些..XD)
如果依變數(Y)是得分,因變數(X1,X2….Xn)則是打者的各項表現,
透過歷史資料,利用迴歸,可以推導出像是以下的式子
Y= a0 + a1X1 + a2X2 + a3X3 +…+ anXn
而迴歸的重要目的就是預測,
也就是,透過歷史數據的分析,再蒐集因變數的資訊,
應該可以得到依變數的理論結果。

如果我們套用1989年Total Baseball所發展出來的BR公式,
我想大家會有更多的了解…
BR = (.47*1B)+(.78*2B)+(1.09*3B)+(1.40*HR)+(.33*(BB+HBP))+(.30*SB)+(-.60*CS)+(-.25*(AB-H))

當然,有興趣的人大可直接套用這個公式
來計算CPBL的得分情形,
然而,一則套用的結果不如人意,
再者,MLB畢竟和CPBL不同,
於是,小可就在想應該可以發展一套屬於CPBL的BR公式..

在開始之前,有三點必須說明
1. 常數項為0
引用過去先人的經驗,我令常數項a0=0,
也就是說,這會讓所產生的迴歸式會通過原點,
當然,我們都知道這樣會降低解釋能力,
不過,也較能讓普羅大眾接受這樣的公式…

2. 因變數選擇
嚴謹的統計分析,在進行因變數選擇的時候,
通常要先進行檢定分析,以了解該因變數對於依變數的解釋能力,
如果,解釋能力偏低的話,理論上就不應該選擇該變數。
然而,為了增強解釋能力,就不得不選入部分解釋能力偏低的因子..

3. 方法論
Palmer的BR是用每場比賽的數據來進行的,
然而,我個人認為每場比賽之間的變異性太大,
何況,只要樣本數夠的話,
我覺得差異性應該不大才是…

所以我找了職棒元年到15年共70筆的球隊得分歷史資料
[獅象15筆(元~15年),龍虎10筆(元~10年)、牛(含前身熊)12筆(4~15年)、鯨8筆(8~15年)]
(對不起,沒有時報鷹的資料..=.=)
然後利用職棒16年各隊的資料來進行檢測成果。

第一階段:
我先找了解釋能力最強的幾個因變數,1B、2B、3B、HR、BBA、AB-H
(其中BBA=BB+IBB+HBP)
得到的迴歸公式是
BR = (0.56*1B)+(0.73*2B)+(1.35*3B)+(1.52*HR)+(0.42*BBA)+(-0.12*(AB-H))

然後來檢測結果
 
    BR  R  誤差%
象  418.44 414 -1.06%
獅  427.02 409 -4.22%
牛  386.77 431 11.44%
鯨  376.78 395 4.84%
誠  453.02 460 1.54%
熊  431.49 426 -1.27%
(R平方=0.88)

儘管象、誠、熊的結果都還算是正確,
對於這樣的結果,我個人是相對不滿意的,
所以開始引進其他的因變數。

第二階段:
我把BSR的觀點引進,其實就是加入盜壘(SB)、盜壘失敗(CS)2項
得到的迴歸公式是
BR = (0.56*1B) +(0.69*2B) +(1.08*3B) +(1.57*HR) + (0.38*BBA) +(0.20*SB) +(0.07*CS) +(-0.12*(AB-H))

檢測結果
   BR   R  誤差%
象  413.05 414 0.23%
獅 420.82 409 -2.81%
牛  382.46 431 12.69%
鯨  376.30 395 4.97%
誠  439.81 460 4.59%
熊  425.70 426 0.07%
(R平方=0.89)

其實這樣的結果,和第一階段的其實相去不遠,
唯一可以觀察的結果是,CS對於得分的貢獻居然是正的
合理的解釋可能是往往盜壘失敗後,
戰術作戰的空間受限,反而會有大局的出現…XD
這點倒是可以持續觀察。

第三階段:
這個階段,我把一些出局的觀念引進,
加入雙殺打(DP)、三振(K)、犧牲短打(SH)、犧牲飛球(SF)的變數
得到的迴歸公式是
BR = (0.56*1B) +(0.70*2B) +(0.97*3B) +(1.50*HR) + (0.38*BBA) +(0.10*SB) +(-0.01*CS) +(-0.12*(AB-H))+(-0.32*DP)+(0.05*K)+(-0.21*SH)+(0.99*SF)

檢測結果
   BR   R  誤差%
象 425.01 414 -2.59%
獅 418.62 409 -2.30%
牛 387.08 431 11.35%
鯨 394.27 395 0.19%
誠 451.23 460 1.94%
熊 432.63 426 -1.53%
(R平方=0.90)

在進行這樣的修正後,我個人倒是可以接受這樣的結果。
此外,值得注意的是這幾年來一直困擾CPBL的問題,
在這裡得到不錯的解釋。
就是K對於得分貢獻是正的、SH則是負的
這跟一般人傳統觀念上,似乎是相違背的..
這樣的現象,可以用2句話來解釋
『三振不是原罪』
『過多的觸擊、造成得分的負擔』


綜觀三個階段,
1.其實各項主要因變數的係數在第二階段後都幾乎沒有變化,
而這些主要因變數的內容,其實就是一句話,『上壘
不管你是用安打、還是選球,
持續上壘就是對於得分最大的貢獻

2.對於牛隊實際得分的差距都有一段距離,
我們只能推論,牛隊今年得分的模式,
和過去、以及其他各隊都不大相同,
至於實際情形是如何,留待有心人士解謎了。

後話:
在做這個BR公式的同時,我也有想到球風的問題,
用英文來說,應該是Stylish Batting Run吧,
就是有些球隊,擅用強攻猛打(如過去的時報、今天的LaNew)
有些球隊則喜歡用小球戰術,
兩者之間應該有不同的BR公式才是…
但是,一方面因為CPBL球隊歷史較短,
而且球風通常也不大固定,總教練陣亡的速度也驚人..
再者,如果是用game by game來進行的話,
一則陷入我先前提到變異性較大的問題,
二則實在是沒有那樣的時間去執行了…

希望這篇短文能發揮拋磚引玉的效果,
讓其他先進發展更多相關的論述了…

沒有留言: