第四部分 · 数据革命
WAR:把一切折算成「比替补多赢几场」
上一课,我们用 wOBA 把打击端的每一个事件——保送、一垒安打、全垒打——都按它对得分的期望贡献定了价,加成一个干净的「这个打者的进攻值多少分」。可一名球员从来不止会打击。他还在垒上跑、在外野扑、有的人还站在投手丘上。问题立刻变得更野心勃勃:能不能把打、跑、守、投这四件本来用完全不同的语言描述的事,折算到同一个单位上,加成一个数字,让一个游击手、一个外野手、一个投手——哪怕他们在场上做的事毫不相干——可以被摆在同一把尺子上比高下?这一课的主角 WAR,就是数据革命试图给出的那个「万能货币」。它很强大,但你也必须诚实地知道它的噪声从哪来、为什么会有好几个版本互相打架。
留下的问题:wOBA 只量了打击这一件事。可球员的价值还散落在跑垒、守备、投球里,而且这些事用的单位天差地别(守备说的是「多防住几个出局」,投球说的是「少丢几分」)。怎么把它们通约成一个能比较的数?
本课新增:读完你会理解 WAR(Wins Above Replacement,胜利贡献值)的整条折算链——选一个替补水平当零点,把打/跑/守/投全部换算成「比替补多产出的得分」,再用「约 10 分 ≈ 1 胜」换成胜场加总。同时你会亲手看到它最大的软肋:守备那一块的噪声,如何给整个估计套上一条很宽的误差带。
一、第一个真问题:跟谁比?——为什么是「替补」,不是「平均」
在折算任何东西之前,必须先回答一个被很多人跳过、其实决定一切的问题:当我们说一名球员「值几场胜利」,是相对谁而言的?得有一条零线。
一个看似自然的选择是联盟平均。但只要想一下就会发现它不对劲:如果零点是平均,那么所有低于平均的球员 WAR 都是负的——可一名「略低于平均」的先发球员,仍然是一份对球队有正价值的资产,球队为他付薪水、给他位置,他显然比「这个位置上根本没人」要强。把他算成负贡献,与常识相悖。
真正的零线应该回答一个更实在的问题:如果这名球员明天受伤了,球队能免费、立刻找来顶替他的那个人,是什么水平?答案就是 WAR 的零点——
这个选择极其关键,因为它把 WAR 钉在了「稀缺」上。回想这门课的总引擎:棒球是一套规则制造出来的稀缺(27 个出局、没有时钟),一切价值都来自对稀缺的回应。替补水平不稀缺——它要多少有多少;所以一名球员值钱的,恰恰是他高出这条免费基准线的部分。一名「联盟平均」的球员,相对替补其实是一份不小的正价值(差不多值 2 个 WAR 上下,示意);这正解释了为什么平均不能当零点——平均水平本身就已经稀缺、值钱了。
二、把四件不同的事,通约成同一个单位:得分
定好了零点,接下来是 WAR 的核心工程:把球员做的四类完全不同的事,全部翻译成同一种货币。这里的关键洞见,正是第 05 课「数学心脏」那张 RE 矩阵给的——棒球场上发生的任何事,最终都能折算成「得分(runs)的增减」。得分,就是那个万能单位。
于是四块贡献,各自换算成「比替补多产出多少得分」:
还有一块不显眼却重要的位置调整 (positional adjustment):同样的守备表现,蹲在游击(防守难度高、稀缺)比站在一垒(谁都能站)更值钱,所以要按位置加减几分。它的作用,是让「一个游击手」和「一个一垒手」的守备能被公平地放到同一条线上——这恰恰是 WAR 想解决的「跨位置比较」的一部分。
把这几块「得分」全部相加,就得到一个球员「比替补多产出的总得分」。注意这一步有多妙:打击、跑垒、守备、投球,本来分别用「上垒」「多跑一垒」「多防一个出局」「少丢一分」这些互不相干的语言描述,现在全被翻译成了同一个词——得分。通约完成,就只差最后一道换算了。
三、最后一步:把「得分」换成「胜场」——约 10 分 ≈ 1 胜
得分还不是终点。我们真正关心的从来不是分,是赢球。所以需要一个汇率,把「得分」换成「胜场」。这个汇率就是那条著名的经验规律:
WAR ≈ (比替补多产出的总得分) ÷ 10
它背后是一个叫得分差→胜率(毕氏定律,Pythagorean expectation)的关系:一支球队长期的胜率,主要由它的总得分与总失分之差决定,而经验上每多净赚约 10 分,长期会多赢约 1 场。所以一名球员比替补多创造(或多省下)10 分,就大致等于帮球队多赢了 1 场。这个「10」不是精确常数(随得分环境在 9–10.5 间浮动,见数据小注),但作为数量级它出奇地稳。
于是整条折算链可以一口气写下来——这就是 WAR 的全部:
这条链的回报,正是开头那个野心:跨位置、跨打投的通约比较。一个 5.0 WAR 的游击手、一个 5.0 WAR 的右外野手、一个 5.0 WAR 的先发投手——他们在场上做的事毫无可比性,但 WAR 说:他们各自都让球队比用替补多赢了约 5 场。于是它成了估值与薪资谈判的通用货币(「这名自由球员值 4 个 WAR,市场上 1 个 WAR 约值 X 百万」),也成了 MVP 之争里最常被搬出来的依据。一个数字,第一次把整张球员名单放到了同一个坐标轴上。
给个直觉刻度(示意):替补级 ≈ 0;普通先发 ≈ 2;好球员 ≈ 3–4;全明星 ≈ 5+;MVP 级的赛季能到 7–9,史上极个别封神赛季更高。
四、诚实:WAR 不是真理,是一把带误差棒的尺子
到这里必须踩刹车——这门课对每一个强大的工具都要这么做。WAR 很有用,但它绝不是从天上取来的精确读数。它有三条你必须知道的局限,否则就会把它用坏。
局限一:守备那一块噪声大,拖高了整个估计的不确定性。这正是第 09 课埋下、说好要在这一课兑现的那条线。回忆一下:守备度量样本小(一名野手一季真正有难度的机会才几十次)、归因难(球没接到,是范围不够、布阵放错、还是投手诱导的难球?)、口径不一(UZR 和 DRS 经常打架)。于是守备贡献本身就带着一条很宽的误差带——典型可达 ±5 到 ±10 分的量级(示意)。而打击和跑垒相对干净。问题在于:WAR 是把四块加起来的,所以守备那条宽误差带会原封不动地传进总和。±7 分的守备不确定性,除以 10,就是大约 ±0.7 个 WAR 的不确定性——这意味着一个「3.6 WAR」的球员,诚实地说其实是「大约 3 到 4.3 WAR」。本课的 widget 会让你亲眼看到这条带子被守备撑开。
局限二:有多个版本,结论会差。WAR 不是一个被官方统一定义的量,而是各家自己搭的一套折算流程。最常见的两个版本——FanGraphs 的 fWAR 和 Baseball-Reference 的 bWAR——在好几处用了不同的算法:投手该用 FIP(只看投手能控制的三振/保送/被全垒打)还是用实际失分?守备用哪套范围指标?结果就是同一名球员,fWAR 和 bWAR 经常对不上,差出半个甚至一个 WAR 都不稀奇。这不是哪一方算错了,而是「把模糊的真实贡献压成一个数」这件事本身就有多种合理的压法。所以引用 WAR 时,最好说清是哪一个 WAR。
局限三:它是估计,不是真理;单季小差距没有意义。正因为有误差带,「4.1 WAR 的球员一定比 3.8 WAR 的球员好」这种话是站不住的——这 0.3 的差距,远小于估计本身的不确定性,基本是噪声。WAR 真正可靠的,是它的数量级与排序的大致区间:一个 6 WAR 的球员几乎肯定比一个 1 WAR 的好;但 4.1 对 3.8,该当成「半斤八两」。
五、动手:亲手把四块贡献拼成一个 WAR
下面这台「WAR 拼装器」把整条折算链做成了可拨动的旋钮。四根滑杆分别是打击 / 跑垒 / 守备 / 投球对球队的贡献,单位都是「比替补多产出的得分」(已经通约过了)。拖动它们,下方会实时把四块加成总得分,再除以 10 合成 WAR。
真正要你盯住的是那条误差带:它来自守备度量的噪声(约 ±7 分,示意),除以 10 后变成约 ±0.7 个 WAR 的不确定区间,画在合成 WAR 的两侧。试三件事:(甲) 把守备拉到很高的正值——WAR 点估计上去了,但误差带依旧那么宽,提醒你这块本就测不准;(乙) 把守备归零、只留打击和跑垒——这是一个「几乎只靠干净数据」的球员,注意误差带会明显收窄;(丙) 调出两个 WAR 点估计差不多、但一个靠守备、一个靠打击的球员,体会为什么「数值接近时不能轻易说谁更好」。
拨弄几下,WAR 的两面就都立住了:一面是它真正的强大——四件用不同语言描述的事(打、跑、守、投),被一条「全部折成得分、再折成胜场」的链通约进了同一个数,于是游击手、外野手、投手第一次能同台比较;另一面是它诚实的边界——那条由守备撑开、怎么也甩不掉的误差带,时刻提醒你:这是一把数量级的尺子,不是精确的卡尺。把这两面同时握在手里,你就握住了数据革命最成熟的那种态度。
六、把这一课接回主线
可是,整条折算链——wOBA、RE24、范围接杀、位置调整——它喂进去的那些原始数字,到底是从哪来的?过去,它们来自记分员一笔一笔的人工记录,和球探用肉眼下的判断:这球打得「结实不结实」、这名野手「脚步快不快」,全凭经验和直觉。可你现在应该警觉了——本课的守备噪声,很大一部分正源于「肉眼判断」的不可靠。如果连数字的来源都还停留在人工与肉眼,那再精巧的折算也建在流沙上。要让 WAR 这样的尺子真正变准,必须从根上换掉数据的采集方式。而这场变革已经发生了:今天,每一个球的初速、转速,每一名野手的每一步跑动,都被机器实时追踪。