Meteva——让预报检验不再重复造轮子

更多精彩,请点击上方蓝字关注我们!
检验是什么?****预报准确率的客观表达
说到天气预报,你最先会想到什么?
早上听了预报,带了一天伞却没下一滴雨的调侃?
还是 “蓝天白云晴空万里突然暴风雨” 的无奈?

其实,认为天气预报该百分百准确,是对现代科学的“蜜汁自信”。毕竟,由于大气系统的不确定性,天气预报不可能百分百准确已是不争的事实。同时,因为“选择性记忆”的存在,人脑对“不满”的记忆也往往更加深刻。
事实上,近年来,我国的天气预报准确率已经有快速提升,晴雨预报准确率高达90%,台风路径误差小于70公里。无论是普通民众、专业用户还是预报员,对预报的感受绝对比十年前准确得多。
其实说到准确率的问题,首先要明确一个关键词——检验标准。
譬如暴雨的定义,国标规定是24小时降雨量为50-99.9毫米的降雨,而公众往往认为是“下得猛烈”的急雨,这就造成了理解上的偏差。作为衡量预报是否准确的一把标尺,客观的检验结果,有助于增进我们对天气预报的理解。随着中国气象局研究型业务的开展,满足各方面需求的“全流程检验”应运而生。
什么是全流程检验程序库
全流程检验程序库(简称Meteva)是面向气象预报产品及中间产品进行全面检验评估所需要用到函数和功能的集成。它是国内第一款专门用于气象预报检验的Python程序库,也是一款开源程序。数值模式和客观算法、精细化网格预报、各种应用预报产品等所需的检验算法,都将并入全流程检验。检验作为核心模块,将在整体天气预报链路中发挥重要作用。
全流程检验主要服务对象
1、预报员
2、数值模式的研发人员
3、数值模式后处理订正算法的研发人员
4、各级气象部门或公司内部负责本部门检验系统研发的人员
检验能做什么?怎么做?
那么,除了熟知的准确率和TS评分, 检验还能做些什么?怎么做?用什么工具做?
第一个问题最重要,如果知道了要做什么,终究会找到做的方法。但是如果这个问题尚不明确,毕竟除了知道准确率和TS评分,就连各级气象从业人员也不太清楚除此之外还能做些什么。有一些在检验方面造诣较深的学者或许能提供一些启发性的示例,但你要是想得到一整套可以直接对照施工的系统指导,怕是多半要会失望的。
如果第一个问题让人沮丧,那我们不如先想想第二个问题,有一句话叫“手里拿着锤子,看哪里都是钉子”,或许我们掌握了有效的工具,才有意识到我们要解决的问题。我们目前检验的工具,归纳一下主要有三类:

用眼睛看
就是把各种预报和实况放在一起显示,眼睛看的同时,大脑里进行着可以意会也可以言传但无法量化的检验操作。如果你能持续10年认真的做好这项检验工作,你就是首席预报员啦。优点:检验全面充分,有物理意义,缺点:10年太久了, 此外也没法定量。

上网站看
气象部门基本都有自己的检验平台,把各类预报的检验结果都算好,在网站上展示。用户可以很方便的找到检验评分的结果。优点:1分钟就能查看到定量结果。缺点是网站上有的检验指标才能看到,想看点定制化的,就要系统升级后再说了。此外,这些检验指标虽然是客观化的表达,但是物理意义不够明晰,不能告诉预报员怎么改进预报。

编程计算
如果你需要一些网站上没有的定量检验信息,那就只能编程咯。优点:想要啥都能编出来,缺点:你以为检验程序没技术含量就很好编吗,没个百十行代码,你根本做不出一项检验。
全流程检验——不要重复造轮子
面向研究型业务,检验需要率先满足定量的、不按固定套路的变化需求。
上述三种方式中似乎只有第三种可以满足。
但动辄百行代码让很多人望而却步,更要命的是稍微切换一下检验内容或思路,以前写的检验代码没法复用,基本又得重写。
因为编码的时间成本问题,实际上即使是有很强编程能力的研发人员也通常不会经常变换检验方式方法,一段检验代码用到黑,检验的广度和深度受到极大限制。可见,问题的焦点就到了如何提高检验工作的效率上来了。
提高效率的第一个要点就是不要重复造轮子,因此我们把我们造好的轮子全都开源共享给所有同行。当然,一个轮子是不够的,每个人需要用到的轮子是不一样的,为此我们要提供一套大家都用到的各种轮子的全集。我们的预期是将整个行业所有预报制作流程中用到的检验相关的算法和功能集成为一个开源程序库,即全流程检验程序库。
全流程检验程序检验算法函数合集
目前该程序提供了可供复用的函数达200多个,集成了开展检验所需的基础函数(包括数据的读写、插值、累加、平均、选取、分组等)、检验算法(包括各类二分类、多分类、连续型变量、概率预报和集合预报的检验等)和检验图形产品(包括空间对比图、时间序列对比提、误差序列分析图、误差空间分布图等),未来还在持续的更新扩展当中。
如果是检验的同道中人,那就先用为快吧:





全流程检验程序基本检验图形产品示例

福利
全流程检验程序官方说明文档网址https://www.showdoc.cc/meteva
Github开源代码网址https://github.com/nmcdev/meteva
往期精选




·END·
天气有我 科技为你
中央气象台“艾天气”小程序发布,欢迎试用

中央气象台科技创新服务
创新·绿色·共享

微信号:kjcx_nmc
我就知道你“在看”

Meteva——让预报检验不再重复造轮子的更多相关文章
- 避免重复造轮子的UI自动化测试框架开发
一懒起来就好久没更新文章了,其实懒也还是因为忙,今年上半年的加班赶上了去年一年的加班,加班不息啊,好了吐槽完就写写一直打算继续的自动化开发 目前各种UI测试框架层出不穷,但是万变不离其宗,驱动PC浏览 ...
- GitHub Android 最火开源项目Top20 GitHub 上的开源项目不胜枚举,越来越多的开源项目正在迁移到GitHub平台上。基于不要重复造轮子的原则,了解当下比较流行的Android与iOS开源项目很是必要。利用这些项目,有时能够让你达到事半功倍的效果。
1. ActionBarSherlock(推荐) ActionBarSherlock应该算得上是GitHub上最火的Android开源项目了,它是一个独立的库,通过一个API和主题,开发者就可以很方便 ...
- 第27篇 重复造轮子---模拟IIS服务器
在写程序的时候,重复造轮子是程序员的一个大忌,很多人对重复造轮子持有反对的态度,但是我觉得这个造轮子的过程,是对于现有的知识的一个深入的探索的过程,虽然我们不可能把轮子造的那么的完善,对于现在有的东西 ...
- 重复造轮子,编写一个轻量级的异步写日志的实用工具类(LogAsyncWriter)
一说到写日志,大家可能推荐一堆的开源日志框架,如:Log4Net.NLog,这些日志框架确实也不错,比较强大也比较灵活,但也正因为又强大又灵活,导致我们使用他们时需要引用一些DLL,同时还要学习各种用 ...
- Light libraries是一组通用的C基础库,目标是为减少重复造轮子而写(全部用POSIX C实现)
Light libraries是一组通用的C基础库,目标是为减少重复造轮子而写实现了日志.原子操作.哈希字典.红黑树.动态库加载.线程.锁操作.配置文件.os适配层.事件驱动.工作队列.RPC.IPC ...
- 重复造轮子系列——基于Ocelot实现类似支付宝接口模式的网关
重复造轮子系列——基于Ocelot实现类似支付宝接口模式的网关 引言 重复造轮子系列是自己平时的一些总结.有的轮子依赖社区提供的轮子为基础,这里把使用过程的一些觉得有意思的做个分享.有些思路或者方法在 ...
- 重复造轮子系列——基于FastReport设计打印模板实现桌面端WPF套打和商超POS高度自适应小票打印
重复造轮子系列——基于FastReport设计打印模板实现桌面端WPF套打和商超POS高度自适应小票打印 一.引言 桌面端系统经常需要对接各种硬件设备,比如扫描器.读卡器.打印机等. 这里介绍下桌面端 ...
- 答应我,用了这个jupyter插件,别再重复造轮子了
1 简介 在使用Python.R等完成日常任务的过程中,可能会经常书写同样或模式相近的同一段代码,譬如每次使用matplotlib绘制图像的时候可以在开头添加下面两行代码来解决中文乱码等显示问题: p ...
- 54 个官方 Spring Boot Starters 出炉!别再重复造轮子了…….
在之前的文章,栈长介绍了 Spring Boot Starters,不清楚的可以点击链接进去看下. 前段时间 Spring Boot 2.4.0 也发布了,本文栈长再详细总结下最新的 Spring B ...
随机推荐
- [Objective-C] 016_UI篇_UIView(上)
在我们使用app时屏幕上能看到的UI元素(按钮,列表,图片...),我们称之为视图,都是继承与UIView,它们通常有着位置,大小,背景颜色等属性,在appl中视图和窗口展示了应用的用户界面,同时负责 ...
- Java并没有衰落.大家对它的认识才刚刚开始 Java8全新出发
Java并没有衰落.大家对它的认识才刚刚开始 很高兴能在此给大家分享Java8的新特性.这篇文章将一步一步带你了解Java8的所有新特性.我将通过简单的实例代码向大家展示接口中默认方法,lambda ...
- 获取Class实例的方式与类加载器
1. java.lang.Class: 是反射的源头 2.如何获取Class的实例(3种) 3.关于类的加载器 TestReflection2 package com.aff.reflection ...
- 01 . HAProxy原理使用和配置
HaProxy简介 HaProxy是什么? HAProxy是一个免费的负载均衡软件,可以运行于大部分主流的Linux操作系统上. HAProxy提供了L4(TCP)和L7(HTTP)两种负载均衡能力, ...
- 前端Web浏览器基于H5如何实时播放监控视频画面(前言)之流程介绍
先看上边这张图.由于离2020年12月各浏览器禁用Flash的日子越来越近,又正恰巧要做新录播项目,所以有了以下内容. 还记得去年也是这个时候,大约是四五六月份,甲方来了个需求想把车间的监控系统接入到 ...
- PAT 1036 Boys vs Girls (25分) 比大小而已
题目 This time you are asked to tell the difference between the lowest grade of all the male students ...
- Rocket - interrupts - NullIntSource
https://mp.weixin.qq.com/s/Fn3u2OSLAzPDrlZTiLfikg 简单介绍NullIntSource的实现. 1. 简单介绍 NullIntSource实现一个不会发 ...
- 【Hadoop】配置全分布式模式
分布式原理 配置 详细过程 假设有三台虚拟机,1台master主机namenode,2台slave奴隶机datanode 所有机器都要配好jdk.Java环境变量.hadoop_env.sh里java ...
- 题解 P5329 【[SNOI2019]字符串】
用栈的做法来水一发. 首先我们有一个暴力的做法,枚举每个被删除的字符,然后排序输出,时间复杂度:$ O ( N \times N \times LogN ) $ . 然后我们观察一下数据,发现有一个数 ...
- python初学者笔记(2):阿拉伯数字转换成中文大写
题:输入一个数字,转换成中文大写的写法 可运行的程序(Python 2.7.9): # -*- coding: utf-8 -*- #在python2的py文件里面写中文,必须要添加一行声明文件编码的 ...