让我们来聊聊统计吧 - 软件质量的统计入门(No.11 置信区间与误差:这个结果能信到什么程度?)

日本語|English|中国语
| 7 min read
Author: shuichi-takatsu shuichi-takatsuの画像
Information

为了覆盖更广泛的受众,这篇文章已从日语翻译而来。
您可以在这里找到原始版本。

引言

#

在“让我们来聊聊统计吧”系列的第11期中,我们将从实务视角,介绍“置信区间”和“标准误差”等推断统计的基本概念,以及如何将它们应用于报告撰写和质量判断中。

在软件质量实践中,对于“结果能信到什么程度?”这一疑问,通过置信区间和 Z 分数对不确定性进行量化正变得越来越重要。


概率论与统计推断的区别:先打好基础

#

虽然我们在第8回中也有提到,作为复习这里再写一遍。
要理解“置信区间”和“估计”,关键在于弄清“概率论”和“统计推断”之间的区别。

比较项目 概率论 统计推断
范围 提供理论框架 实务数据分析
方法 构建数学模型和定律 从数据中提取见解并做出决策
数据处理 理论事件的概率(例:理论缺陷率) 从实测数据估计总体(例:从测试数据估计缺陷率)

概率论是“统计推断”的基础。
统计推断是利用概率论从“现实数据”中得出结论的工具。

理解了这一区别后,“如何从样本推断总体?”这一问题的全貌将一下子变得清晰起来。


平均值 ± ○○ 是什么意思?

#

到目前为止,我们一直从质量数据中提取“平均值”“比例”等代表性指标,并试图据此了解整体情况。
这无疑就是“从有限的样本(标本)对整体(母体)进行估计”的行为。

这种“从样本解读总体”过程称为统计推断

不过,你是否也有这样的疑问?

“那个平均值到底有多准确?”
“要是再测一次,不一定会得出相同的数值吧?”

统计推断必然伴随着误差
“平均值 ± ○○”这一表达正是用来定量地说明该误差的大小。

比如──
如果写着“此缺陷率为 3.2 ± 0.4%”,
那么这个“±0.4”究竟意味着什么呢?

一句话来说,它表示的是误差
不过,所谓“误差”并非模糊概念,而是通过统计学上定义的
标准误差(Standard Error)置信区间宽度(Confidence Interval) 进行量化表示的。

也就是说,它以数值形式显示了“该估计值(3.2%)可能有多大幅度的波动”,即**“不确定性的程度”**。

● 什么是标准误差(Standard Error)?

#

尽管样本均值会趋近于总体均值,但要定量测量其**“会波动多大?”**,就需要使用标准误差。

SE=σnSE = \frac{\sigma}{\sqrt{n}}

  • σ:总体标准差(分布的离散程度)
  • n:样本量

标准误差表示“均值误差的幅度”,随着样本量的增加,SE 会减小。
也就是说,数据越多,估计越精确

Information

为什么标准误差要用 n\sqrt{n} 而不是 nn 去除以标准差?

标准误差表示“样本均值的波动幅度”。
当对多条数据求平均时,波动(即方差)会缩小至原来的 1/n1/n
此时,标准差是方差的平方根,因此结果自然变为除以 n\sqrt{n}

也就是说:

  • 方差(波动的平方) → σ2n\frac{\sigma^2}{n}
  • 标准误差(波动的幅度) → σ2n=σn\sqrt{\frac{\sigma^2}{n}} = \frac{\sigma}{\sqrt{n}}

因此,通过“开平方”操作,分母变成 n\sqrt{n} 而不是 nn

从标准误差公式 SE=σnSE = \frac{\sigma}{\sqrt{n}} 中也可看出,随着样本量 nn 的增大,分母增大,
标准误差 SESE(即均值波动幅度)就会减小。

Information

“标准差”与“标准误差”有什么区别?
这两个术语虽然相似,但在用途和含义上完全不同。我们在此梳理如下:

  • 标准差(Standard Deviation, SD):数据本身的离散程度(每个数据点距离均值有多远)
  • 标准误差(Standard Error, SE):样本均值的波动幅度(均值有多稳定)

也就是说:

  • 标准差 → 个体值的离散
  • 标准误差 → 对“均值”这一估计结果的可靠性

这一区别也会影响到下次讨论的“假设检验”中的统计量(t 值或 Z 值)。
这里的理解对于把握检验的本质十分重要。

为了直观理解,我们通过下图比较在不同 nn 值下“样本均值分布的扩散程度”。
下图展示了当 nn 分别增至 5、10、30、100 时“样本均值分布的扩散程度”的对比。

样本量与标准误差

  • n=5n = 5 时:分布宽且离散度大(标准误差大)
  • n=10n = 10 时:离散度仍较大,但相比 n=5n=5 已开始集中
  • n=30n = 30 时:分布进一步变窄,十分接近正态分布形状(中心极限定理的效果)
  • n=100n = 100 时:分布狭窄且尖峰,离散度小(即标准误差小)

这样,“大量观测可使均值趋于稳定”这一特性,是置信区间宽度缩小的原因,非常重要。


置信区间(Confidence Interval)的含义

#

例如:

“该缺陷率的 95% 置信区间为 3.2~4.8%”

这种情况下,人们往往会解读为“真实值有 95% 的概率落在此区间内”,
但准确来说,它的含义是:

“若使用此方法重新抽取样本并进行估计多次,
将有 95% 的此类区间包含真实值”

也就是说,置信区间仅表示**“估计的不确定性范围”**,
并不意味着“真实值以 95% 的概率落在某一个具体区间内”。

Information

置信区间不是“概率区间”,而是基于“方法本身的可信度”所推导出的区间宽度。
比如,95% 置信区间的含义是“若重复使用此方法 100 次,其中 95 次得到的区间会包含真实值”。
最常用的是对应 Z 分数 Z=1.96Z = 1.9695% 置信区间

● 使用 Z 分数计算置信区间的公式

#

那么,“估计的不确定性范围(即置信区间)”究竟如何计算?
这时就要用到“Z 分数”了。

Z 分数是衡量**“样本均值偏离多少个标准误差”的指标,
并被广泛用作标准正态分布中的
概率临界值**。

利用 Z 分数,置信区间计算公式如下:

置信区间=xˉ±ZSE\text{置信区间} = \bar{x} \pm Z \cdot SE

  • xˉ\bar{x}:样本均值
  • ZZ:与置信度对应的 Z 分数(95% → 1.96、99% → 2.58 等)
  • SESE:标准误差(即均值的波动幅度)

该公式的结构就是**“估计值 ± 波动幅度”**。

例如:

  • 某缺陷率的样本均值为 4.0%
  • 标准误差为 0.5%
  • 置信度 95%(Z 分数 = 1.96)

此时,置信区间为:

4.0%±1.96×0.5%=4.0%±0.98%4.0\% \pm 1.96 \times 0.5\% = 4.0\% \pm 0.98\%

也就是 3.02%~4.98%。就这样可以用“均值 ± Z × 标准误差”来计算置信区间,那么如何解读这一计算结果(例如:3.02%~4.98%)呢?

接下来,确认一下置信区间的“解读方式”

● 置信区间的“解读方式”

#

“如果使用该方法进行 100 次调查,其中 95 次得到的区间(上例中的 3.02% ~ 4.98%)会包含真实缺陷率”,
这就是它的含义,并不是指真实值本身以 95% 的概率落在此区间内

之所以不易理解,是因为人们容易将“概率”与“置信度”混为一谈。

这里的观点是“真实缺陷率(母参数)是唯一且确定的”。
通过估计得到的区间会因样本而有所波动,其中有 95% 的区间“恰好”包含真实值,这就是其结构。

也就是说──

置信区间的“区间”会变化(波动)
真实值不会变化(固定不变)

这是其前提。

Information

※这一观点将在后文的“易被误解的要点”部分再次细述。


实务中的应用

#

在具有统计意义的“估计”中,与单纯报告平均值不同,传达包含离散度和不确定性的信息非常重要。

● 软件质量示例

#
  • 评审所需时间的平均值上添加 ±,作为“预测区间”
  • 测试成功率给出置信区间,在考虑离散度的基础上进行决策

例如,当我们说“此版本测试成功率为 91.3% ± 2.4%(95% 置信区间)”时,就可以这样看待:“最差情况下为 88.9%,最好情况下为 93.7%”。

● 可以选择置信区间的置信水平

#

通常使用95% 置信区间,但可根据具体场景选择:

置信水平 使用场景 说明
90% 假设探索/初步评估阶段 以速度优先于精度
95% 标准分析/报告 平衡良好,最常见
99% 质量保证/安全性验证等场景 需要更谨慎决策的场合

● 实务要点

#
  • 不仅要标明“±多少”,还要说明这对应的是多少百分比的置信区间
  • 在关键决策中可考虑99% 置信区间,根据情况进行调整至关重要
  • 在业务场景中,用“最差情况下是……、最好情况下是……”这样的表述更易理解

易被误解的要点

#

置信区间并非“真实值落入的概率”

#

“置信区间”是指在多次重复同一调查时,预计有 95% 的调查结果所得到的区间会包含真实值的范围。
在古典(频率论)统计学中,真实值(如总体均值)是一个固定不变的值,前提是假定真实值必然存在于某处。
发生概率变化的是“估计量(如样本均值或置信区间)”
置信区间的含义是“使用此方法重复调查时,得到的区间中有 XX% 会包含真实值”。

也就是说,“95% 置信区间”并不是“真实值有 95% 的概率落在此区间内”,而是声明“有 95% 的置信区间应当包含真实值”。
由于真实值始终固定不变,只有“包含”或“不包含”两种可能,并不认为真实值按照概率分布变化。

Information

但是,理解为“95% 的概率真实值在区间内,也没什么大不了,对吧?”的想法也是可以理解的。
然而,这种误解有可能在实务或研究中导致严重的判断失误

● 为什么这种误解很危险?

置信区间是为了“假定估计值会发生波动,因而设定一个 95% 的范围”而构建的。
单个置信区间只有“包含真实值”或“不包含真实值”这两种可能。
如果错误地认为“真实值有 95% 的概率落在此区间内”,
就会陷入一种**“错误的因果解读”**:仿佛“每个区间都是概率性地包含真实值或不包含”。

● 导致实务判断失误的例子
某开发团队比较了产品 A 与产品 B 的缺陷率。
结果,差值(A−B)的95% 置信区间为“1.2%~3.8%”
此时,由于该置信区间不包含“0(无差异)”,
故在统计上判断“A 和 B 之间存在显著差异”。

● 常见的误解:
团队中有人这样说:
“真实差异很可能就在 1.2%~3.8% 之间吧,既然如此,A 明显更差,马上采取措施!”
→ 如此便错误地解读为“真实差异在该区间出现的概率是 95%”
(因为是 95% 置信区间,就觉得可以信赖)

● 然而,另一个团队再次调查后:

  • 这次的 95% 置信区间为“−0.5%~+2.0%”(差异包含 0)
    → 判断结果为“不存在显著差异”。
    最初的判断可能只是恰好由于偏差所致。

● 问题出在哪?
该置信区间并非意味着“真实差异有 95% 的概率落在此区间内”,
而是意味着“若重复进行相同调查 100 次,其中 95 次所得到的区间会包含真实差异”。
也就是说:

  • 单次获得的置信区间无保证包含真实差异
  • 但人们却往往认为“这是几乎确定的结果”,
    从而做出如延迟发布或仅对产品 A 严格检测标准等过度决策

● 教训:

  • 置信区间包含“不可避免的不确定性”,切勿过度信赖
  • 应以“此方法的多次重复结果会有这样的波动”作为前提,进行判断

● 导向正确理解的替换说法:

  • NG:“真实值落入的概率是 95%”
  • OK:“若使用此方法多次重复,95% 的区间将包含真实值”

起初这听起来可能有些拗口,但请逐渐去习惯。

置信区间不是“概率论意义上的区间”,
而是基于置信度的估计结果范围。
正确理解这一点,可以帮助实现可复现的决策并避免过度自信

Information

顺便一提,在贝叶斯统计中,甚至会将真实值作为随机变量来处理。
真实值(参数)以具有不确定性的“先验分布(prior)”开始,
再根据数据(观测)更新为“后验分布(posterior)”。
因此,**在贝叶斯统计中,说“真实值有 95% 的概率落在此区间”**是正确的表述。

“有意差”与“实务上有意义的差异”是两回事

#

即使很小的差异在统计上可能显著,但在质量层面往往可以忽略。

即便在统计上说“存在显著差异”,也不一定代表“在实务上具有意义”。

例如以下情况:

假设将某应用的启动时间在方案 A 和方案 B 之间进行比较。
在收集了足够的数据并进行统计检验后,结果为:

  • A 的平均启动时间:2.10 秒
  • B 的平均启动时间:2.04 秒

差异为“0.06 秒”。由于样本量较大,该差异在统计上显著(p < 0.01)

然而,在实务中,用户对“0.06 秒”的差异是无法察觉的
因此,可判断无需因该差异而特别采用方案 B。

教训:

  • “统计上显著” ≠ “具有实际意义的差异”
  • 显著差异仅表示“非偶然性波动”

“该差异是否重要”应结合现场判断、上下文和成本一起考虑

进一步来说:

  • 若样本量足够大,“极小的差异”也会被判为显著
  • 反之,即使差异很大,若样本量不足也可能“判为不显著”

统计学是“工具”,要得出有意义的结论,务必与人为判断结合使用


总结

#

在本文中,我们基于置信区间、标准误差、Z 分数等推断统计的基本概念,
从实务角度解答了**“对该结果到底能信赖到何种程度?”**这一问题的判断方法。

要点

#
  • 什么是置信区间?

    • 对一次估计而言,表示“存在多大不确定性”的区间
    • 不等同于“真实值落入的概率为 95%”,而是“若重复使用此方法,95% 的区间将包含真实值”
  • 什么是标准误差?

    • 表示均值波动幅度的指标,数据量越大越小
    • 注意公式 SE=σn\text{SE} = \frac{\sigma}{\sqrt{n}}
  • 为何能够进行估计?

    • “中心极限定理”→ 样本均值的分布趋向正态
    • “大数定律”→ 样本均值趋近总体均值
  • 如何解读置信区间与检验结果?

    • 即便存在显著差异,也不一定具有实务上的意义
    • 不可过度信赖,应作为“包含不确定性的判断”来对待

下期预告

#

下期我们将讨论“假设检验”。
将介绍如何判断“存在差异”究竟是偶然还是确实的逻辑。

这里汇总了统计相关信息。

希望对您的数据分析工作有所帮助。

豆蔵では共に高め合う仲間を募集しています!

recruit

具体的な採用情報はこちらからご覧いただけます。