# 参与气象工作的人怎么看待天气预报？

By [man](https://paragraph.com/@man-3) · 2022-10-14

---

空报率与漏报率是气象行业中常用来评估预报模型性能的指标。评估指标的不同实质上反映了任务需求的不同，因此不同的指标在对同一预报模型进行评估时将会得到不同的结果。这就意味着预报模型的‘好坏’往往是相对的，好的模型不仅取决于数据和算法本身，还取决于是否契合实际问题需要。那么何时使用空报率，又何时使用漏报率呢？本篇将通过混淆矩阵逐步带大家了解精准度、查准率等多种评估指标，以此深入认识空报率与漏报率的含义，并提供场景实例让读者体会评估指标如何反映实际任务需求。（文末顺带提供混淆矩阵的 python 可视化代码方便大家使用。）

一、混淆矩阵

混淆矩阵也称误差矩阵，经常被用来对分类问题进行误差分析。为便于理解，我们以二分类预报——晴雨预报为例，将其所有可能出现的预报情形与实况结果两两进行交叉组合，得到如下四个基础项。

混淆矩阵的四个基础项

真正例（True Positive）：预报有雨 实况有雨

真反例（True Negative）：预报无雨 实况无雨

假正例（False Positive)：预报有雨 实况无雨（纳伪，第二类错误）

假反例（False Negative）：预报无雨 实况有雨（弃真，第一类错误）

将上述各项的计数以矩阵的方式呈现（其实就是一张表格啦），就得到了该预报模型的混淆矩阵。矩阵中的每一列代表预测类别，每列的数值和代表预报该类别的总次数；而每一行代表实况观测的类别，每行的数值和代表了该类别实况中出现的总次数。

晴雨预报的混淆矩阵

直观可见，当混淆矩阵对角线数值越大时，模型总体性能越好。将其定量化，将矩阵中 TP 与 TN 的代数和除以矩阵所有元素的代数和称之为精准率（Accuracy）。

将 FN 与 FP 的代数和除以矩阵所有元素的代数和称之为错误率（Error Rate)。

二、细分评价指标

从定义式可知，精准率和错误率的大小受到多个变量的约束，难以精准契合实际问题需要，需要引入细分指标。

1.查准率与空报率

查准率又可称为击中率、准确率(Precision，为了方便记忆可记英文，以免与精准率混淆)，其定义为真正例在预报正例中所在的占比。查准率是相对预报而言的，数值越大表示正例出现的可能性越大，预报可信度越高。（文末降水查准率为 259/(259+235)=0.524）

空报率与查准率有关联，被定义为假正例在所有预报正例中所在的占比，数值越大表示狼来了的可能性越大，由定义可知，空报率=1- 击中率。

2.查全率与漏报率

查全率又可称为召回率(recall)，其定义为真正例在所有实况为正例中的所在占比。查全率是相对实况而言的，数值越大表示越疏而不漏，出现漏网之鱼的可能性越小。（文末降水查全率为 259/(259+242)=0.517）

漏报率与查全率有关联，被定义为假反例在所有实况为正例中的所在占比，可推知，漏报率=1- 查全率。

三、场景实例

查准率和查全率针对同一个模型时往往是一对矛盾的评价指标。查准率高时，查全率往往偏低；而查全率高时，查准率往往偏低。可以想象，在晴雨预报中为了使得查全率偏高，可以通过增加预报有雨的次数来实现，极端的，预报未来每天都有雨，查全率为 100%，但空报率极高，查准率极低；而为了使查准率偏高，可以通过只预报有把握的降水，诸如信号明显的系统性大雨过程，这么做势必会减少预报次数，极端的，当只预报了一次降水且正确时，查准率为 100%，但查全率则极低，许多小雨和中雨过程都漏报了。

那么如何运用查准率和查全率综合评价预报模型的性能，从而在多个模型中选择相对较优的呢？请关注本渣渣的同名微信公众号（搜索 气象学渣 或者 qixiangxuezha），等待下回分解哦。

---

*Originally published on [man](https://paragraph.com/@man-3/QeWC8YzjkjbBbBAKr6Mz)*
