【模型显著性分析】配对样本 t 检验

发布于:2025-05-29 ⋅ 阅读:(19) ⋅ 点赞:(0)

写在前面:本博客仅作记录学习之用,部分图片来自网络,如需引用请注明出处,同时如有侵犯您的权益,请联系删除!



前言

在机器学习与数据科学领域,模型性能评估往往依赖单一指标(如mAP、准确率),但仅凭数值差异难以判断其是否具有统计意义。

例如,两个模型在测试集上的mAP分别为0.75和0.78,若直接断言后者更优,可能因样本波动或随机误差导致误判。这种“表面差异”可能掩盖真实性能差距,甚至误导决策。

显著性验证通过统计方法(如 t t t 检验)量化差异的可靠性,其核心价值在于:区分随机波动与真实效应。当样本量有限或数据存在噪声时,显著性检验能提供客观的置信度(如p值),避免主观臆断。尤其在模型迭代、算法对比或实际应用部署中,仅依赖点估计值(如均值)无法支撑科学结论,而显著性验证为模型性能的比较提供了可重复、可量化的标准。


t t t 检验

在统计学中,t检验用于比较两组样本的均值是否存在显著差异。

配对样本 t t t 检验(适用于相关组)

场景:比较同一组样本在两种条件下的均值差异(如同一数据集上两个模型的重复实验)。

公式:

t = d ˉ s d / n t = \frac { \bar { d } } { s _ { d } / \sqrt { n } } t=sd/n dˉ

  • d ‾ \overline { d } d:每组样本对的差值均值(如模型A和模型B的mAP差值)。
  • s d s _ { d } sd:差值的标准差。
  • n n n:样本对的数量。

自由度(df):

d f = n − 1 df = n - 1 df=n1

  • t t t 值衡量差值均值相对于差值变异的程度。
  • 较大的 t t t 值表示差异更显著。
  • 使用 t t t 分布表或统计软件,根据 t t t 值和自由度计算 p p p 值。

代码

  • t分布表:根据 t t t值和自由度,查表得到对应的 p p p值。
  • 统计软件:如Python的scipy.stats库可以自动计算 p p p值:
from scipy.stats import ttest_rel   # 配对t检验

# map
mAP_baseline = [27.77, 27.91, 28.20, 27.92, 27.83]     # baseline
mAP_ours     = [28.24, 28.33, 28.41, 28.57, 28.59]     # ours 

# 配对t检验(同一数据集的重复实验)
t_stat, p_val = ttest_rel(mAP_ours, mAP_baseline)
print(f"Paired t-test - t statistic: {t_stat:.3f}, p-value: {p_val:.3e}")

论文描述

为了证明所提方法的优越性,本文对所提模型与基线之间进行了差异显著性试验 。本文从同一数据集中随机选取了若干数量的样本作为测试集,共计N组,分别测试基线模型和所提模型在每个子集上的性能。

假设:本文所提方法的性能与基线相当,并且两个模型处于相同的数据分布中,并设定显著性水平设置为 α = 0.05。

本文使用了 t t t 参数检验,所得的 p 值小于 α 值,因此原假设 不成立,表明所提方法的性能明显优于基线方法。


总结

  • 配对样本t检验:用于比较同一组样本在两种条件下的均值差异。

  • t值:衡量差异的显著性,值越大差异越显著。

  • p值:小于显著性水平(如0.05)时,拒绝原假设,认为差异显著。

  • 数据分布:确保数据满足t检验的假设(如正态性、方差齐性)。

  • 样本量:较大的样本量可以提高检验的效力。


互动

  • 上述内容对你有用吗?

欢迎在评论区解答上述问题,分享你的经验和疑问!

当然,也欢迎一键三连给我鼓励和支持:👍点赞 📁 关注 💬评论 💰打赏。


致谢

欲尽善本文,因所视短浅,怎奈所书皆是瞽言蒭议。行文至此,诚向予助与余者致以谢意。


参考

[1] 文心一言