使用ClimateLearn

news2024/11/24 21:00:41

来源

ClimateLearn官网使用介绍

ClimateLearn 是一个 Python 库,用于以标准化、直接的方式访问最先进的气候数据和机器学习模型。

背景

近年来,极端天气事件使气候变化的威胁更加明显。 袭击美国东部的大西洋飓风的强度和严重程度一直在增加。 倾盆大雨将巴基斯坦大部分地区淹没,造成数千人死亡。 前所未有的热浪引发了野火,席卷了葡萄牙和西班牙的大片地区。 中东和北非的严重干旱破坏了该地区的供水,引发了冲突。 根据国际社会未来十年的反应,到 2100 年,地球平均表面温度预计将上升 2°C 至 4°C。 随着气温的升高,气候科学家预测极端天气事件将变得更加普遍。

气候科学家用来预测未来天气和气候的工具称为大气环流模型(general circulation models, GCM)。 简而言之,GCM 是微分方程组,可以随着时间的推移进行积分,以产生对温度、风速和降水等变量的预测。 这些模型以物理学为基础,其内部工作原理很容易解释,并且对其进行模拟可以产生相当准确的输出。 然而,运行模拟是一个计算成本高昂的过程,并且当给定更多数据时很难改进模型。 这就是机器学习算法作为一种有前途的替代方案发挥作用的地方。 特别是,此类算法在解决气候建模的两个子问题“天气预报”和“空间降尺度”方面表现出了与传统气候模型的竞争力。
在这里插入图片描述

天气预报:使用历史数据(左)预测未来的天气状况(右)

在这里插入图片描述

空间缩小:将低分辨率全球气候模型(左)细化为高分辨率(右)

天气预报是预测未来气候变量的问题。 例如,鉴于过去一周加利福尼亚州洛杉矶的每日地表温度,下周的每日地表温度会是什么样? 回答这样的问题类似于计算机视觉中的视频帧预测问题。 空间降尺度是细化空间粗略气候模型预测的问题(例如,从 100 km×100 km 单元的网格到 1 km×1 km 单元的网格)。 这类似于另一个称为超分辨率(SR)的计算机视觉问题,其目标是对低分辨率图像进行上采样。 预测/缩减和帧预测/SR 之间的一个关键区别是我们可以使用额外的信号来限制可能预测的空间。 例如,在视频帧预测中,机器学习模型被给予图像序列作为输入,并产生图像序列作为输出。 输入和输出模式是相同的。 在天气预报中,机器学习模型可以以不同的方式利用外生变量。 假设该模型正在预测表面温度。 未来的表面温度不仅仅受到过去的表面温度的影响。 湿度和风速等因素也发挥着作用,除了温度之外,它们还可以作为模型的输入。
因此,随着近年来深度学习研究的爆炸式增长,机器学习和气候科学家都开始探索深度学习方法在解决天气预报和空间降尺度问题中的应用。 然而,这两个社区以不同的方式处理应用机器学习的问题。 气候科学家知道应该尊重哪些物理方程以及哪些评估指标最重要。 与此同时,机器学习科学家知道哪些架构最适合解决哪些问题以及如何以适合现代机器学习方法的方式处理数据。 混淆术语(例如,气候建模中的“偏差”与机器学习中的“偏差”)、将机器学习应用于气候科学问题时缺乏标准化(例如,定义适当的训练和保留数据集、数据增强)阻碍了进展。 策略),并且不熟悉如何解释气候数据(例如,重新分析与模拟数据集、NetCDF 等文件格式)。 “通用语言”的缺乏正是我们推出 ClimateLearn 的动力。
我们相信良好的研究需要良好的基础设施的支持。 本着这种精神,ClimateLearn 是一个 Python 包,用于以标准化、直接的方式访问最先进的气候数据和机器学习模型。 在这个包中,我们提供了对多个数据集的访问、一系列最先进的基线模型以及一套用于大规模天气预报和空间缩小方法基准测试的指标和可视化。
在这里插入图片描述

ClimateLearn 的功能

数据集

ClimateLearn 支持从 ERA5 加载数据,第五代 ECMWF(欧洲中期天气预报中心)对过去四到七年的全球气候和天气进行再分析。 再分析数据集是使用建模和数据同化系统将历史观测结果结合到全球估计中的数据集。 真实数据和建模的这种结合使得再分析产品能够以相当高的精度获得完整的全局数据。 然而,创建重新分析的过程非常耗时。 ERA5 数据在 3 个月内实时发布,这激发了通过机器学习计算成本低廉的方法的必要性。 除了原始 ERA5 数据外,ClimateLearn 还支持从 WeatherBench(数据驱动天气预报的基准数据集)加载预处理的 ERA5 数据。 无论哪种情况,ClimateLearn 都会以当今深度学习架构可以轻松使用的格式提供数据。

模型

ClimateLearn 实现了各种基线机器学习算法,以便用户可以快速了解如何将机器学习应用于预测和缩小问题。 其中包括简单的统计方法,例如线性回归、持久性和气候学,以及残差卷积神经网络、U-net 和视觉转换器的最先进的深度学习实现。 我们的基线模型已经针对气候任务进行了很好的调整,并且很容易扩展到气候科学的其他下游管道。

指标和可视化

使用 ClimateLearn 对常用指标的支持,例如(纬度加权)均方根误差、异常相关系数、皮尔逊相关系数和平均偏差,可以轻松评估和可视化此类模型的预测。 ClimateLearn 还支持地面实况、模型预测以及两者之间差异的可视化。 对预测变量进行目视检查是获得有关模型性能和重要结果的直觉的自然方法。

结论

今天,我们推出了 ClimateLearn,这是一个软件包,可以通过提供直接的数据集访问、易于比较的基线方法以及用于理解模型输出的指标和可视化来弥合气候科学和机器学习社区之间的差距。
我们对 ClimateLearn 未来的路线图包括扩大对更多数据集的支持,例如 CMIP6(第六代气候建模比对项目),该数据集已在 IPCC(国际气候变化专门委员会)的第六次评估报告中使用。 我们还计划通过新的不确定性量化指标(例如连续排名概率得分)和新的机器学习算法(例如贝叶斯神经网络和扩散模型)来增加对概率预测的支持。 实施这些功能将为 ClimateLearn 创造额外价值。 机器学习研究人员可以深入了解模型性能、表达力和鲁棒性。 气候科学家可以理解改变输入变量的值将如何导致不同的输出分布,这与现代气候研究的完成方式相匹配:科学家根据假设的排放情景提供了一系列潜在结果。 我们还将正式制定 Github 存储库的功能/拉取请求指南,并期待社区贡献。
我们构建 ClimateLearn 的目标是创建一个可以加速机器学习和气候科学交叉领域研究的工具,我们希望您和我们一样对此感到兴奋。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/702968.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

飞凌嵌入式荣获「ISO14001」和「ISO45001」双认证

近日,飞凌嵌入式荣获 ISO14001环境管理体系认证 和 ISO45001职业健康安全管理体系认证 两项证书,标志着飞凌嵌入式在规范化、标准化和科学化的现代企业管理轨道上更进一步。 荣获ISO14001环境管理体系认证证书无疑是对飞凌嵌入式现有管理体系、产品质量与…

kubernetes集群备份与恢复

目录 一、k8s集群备份与恢复 二、k8s备份-备份etcd 2.1 etcd v2版本数据备份与恢复 2.2 etcd v3版本数据备份与恢复 2.3 etcd数据备份脚本 1.1.4 k8s集群etcd备份恢复流程 三、k8s备份-velero 3.1 velero简介 3.2 velero部署 1.安装 2.准备镜像 3.准备对象存储 4.准…

JAVA-编程基础-01初始Java

Lison <dreamlison163.com>, v1.0.0, 2023.03.05 JAVA-编程基础-01-初始Java 文章目录 JAVA-编程基础-01-初始JavaJava语言概述Java是什么Java语言的特 初始Java的main方法Main 方法示例了解HelloWorld代码的编写 运行Java程序**JDK、JRE、JVM之间的关系&#xff1f;** …

人工成本上涨推动服务行业转向智能化

近年来&#xff0c;随着人工成本的不断上涨&#xff0c;越来越多的企业开始转向智能客服系统&#xff0c;以提供更高效、更经济的客户服务。智能客服的崛起成为了服务行业的新趋势&#xff0c;为企业节省成本、提升服务质量带来了巨大的机遇。 ** 智能接口测试地址&#xff1a;…

【CentOS】VirtualBox yum 无法使用

【CentOS】VirtualBox yum 无法使用 yum install net-tools -y出现如下错误&#xff1a; cannot find a valid baseurl for repo: base/7/x86_64或无法ping 解决如下&#xff1a; 进入系统&#xff0c;修改网卡信息。 执行修改命令&#xff0c;ifcfg-xxx 后面的xxx就是上面…

Linux系统下查看动态库依赖关系指令(ldd)

下面介绍一下在Linux系统下利用ldd指令查看动态库依赖关系&#xff1b; 文章目录 1、ldd命令全称2 ldd参数说明3 简单示例4 查看缺少的依赖库5、ldd指令详细介绍 LDD用来打印或者查看程序运行所需的共享库,常用来解决程序因缺少某个库文件而不能运行的一些问题。ldd不是一个可…

iPad平板用的触控笔什么牌子好?主动式电容笔推荐

现在&#xff0c;电容笔已经成为在线办公、在线教育等产业中的热门产品&#xff0c;那么&#xff0c;平替电容笔是否会代替苹果原有的电容笔呢&#xff1f;实际上&#xff0c;你根本不需要花那么多钱去买一个原装的苹果电容笔。一支普通的平替式电容笔只需要一两百元&#xff0…

在Uniapp中实现在线使用iconfont的图标

icanfont官网 iconfont官网&#xff1a;iconfont-阿里巴巴矢量图标库 在自己建的项目下&#xff1a;点击 Font Class 可以看到下面的在线 css文件 在 <style> 标签中&#xff0c;使用 import 指令来引入在线的 CSS 文件。例如&#xff1a; <style>import url…

西安石油大学期末考试C++真题解析

1、一、类型、返回值类型 二、参数表、函数重载 2、一、实例化 二、实例化的类型或类类是对象的蓝图&#xff0c;对象是类的实例化 3、const 4、一个 两个 5、一、公有继承 二、私有继承、保护继承 6、抽象类、实例化对象 7、函数模板、类模板 8、try、catch、throw 9、…

springboot 统一日志 链路跟踪 dubbo3链路 springboot log-starter 设计和实现- 统一日志和链路跟踪 管理、设计和实现

文章目录 1、目标2、源代码3、实现逻辑操作参数定义日志拦截器本地服务日志拦截调用微服务模块的日志保存接口继承日志工具类链路跟踪自实现 4、 logback.xml配置5、测试类测试http请求文件测试接口层 外传 springboot 统一日志 链路跟踪 dubbo3链路 springboot log-starter 设…

Springboot 定时任务,分布式下幂等性如何解决

一、概述&#xff1a; 在分布式环境下&#xff0c;定时任务的幂等性问题需要考虑多个节点之间的数据一致性和事务处理。 一种解决方法是使用分布式锁来保证同一时间只有一个节点能够执行该任务。具体实现可以使用Redis或Zookeeper等分布式协调工具提供的分布式锁功能。 另一…

CC2530 定时器配置步骤

第一章 CC2530时钟源 (1)时钟源 1、内部RC震荡器(32KHz、16MHz) 2、外部石英晶振(32.768KHz、32MHz) 注意:外部石英晶振比较稳定,在无线收发中采用外部石英晶振 (2)时钟源的切换 用于判断时钟源是否切换成功 第二章 定时/技术器的基本原理 定时/计数器,是一种…

(小程序)uniapp调接口完整流程

(小程序)uniapp调接口完整流程 代码&#xff1a; <script lang"ts" setup>import { ref } from "vue"; const form ref({searchVal: "", });//搜索const searchClick () > {console.log(form.value.searchVal)let data {text: form…

【C#】并行编程实战:实现数据并行(2)

本章继续学习实现数据并行&#xff0c;本文主要介绍任务并行度和自定义分区策略相关内容。 本教程对应学习工程&#xff1a;魔术师Dix / HandsOnParallelProgramming GitCode 2、任务并行度 数据并行设计在系统的多个内核上以并行方式运行循环所带来的的优势&#xff…

嵌入式系统:连接物理世界与数字世界的桥梁

目录 导语&#xff1a; 一. 什么是嵌入式系统&#xff1f; 二. 嵌入式系统的应用领域 三. 嵌入式系统的未来发展趋势 导语&#xff1a; 在当今数字时代&#xff0c;我们离不开各类智能设备的便利&#xff0c;它们在我们的生活中起着至关重要的作用。而这些设备中的关键技术…

基于Java+Swing+Mysql项目信息管理系统

基于JavaSwingMysql项目信息管理系统 一、系统介绍二、功能展示1.主页2.新增项目信息3.删除项目信息 三、数据库四、其他系统实现五、获取源码 一、系统介绍 该系统实现了查看项目列表、新增项目信息、删除项目信息 运行环境&#xff1a;eclipse、idea、jdk1.8 二、功能展示…

2023-最新-发布java工具包到 maven 中央仓库,不踩坑

说明 要想将自己的java工具提交到maven中央仓库并公开&#xff0c;但是maven中央仓库是不允许我们直接上传jar包到它上面的&#xff0c;因此我们只能将jar包发布到它指定的第三方maven仓库&#xff0c;然后这个仓库再将jar包同步到中央仓库。而sonatype的OSSRH仓库就是被认可的…

C++ day42

1、思维导图 2、 #include <iostream> using namespace std;class Person { private:int age;int *p; public://无参构造Person():p(new int(89)){age 18;}//有参构造Person(int age,int num){this->age age;this->pnew int(num);}//拷贝构造函数Person(Person …

MKS SERVO4257D 闭环步进电机_系列11 STM32_脉冲和串口例程

第1部分 产品介绍 MKS SERVO 28D/35D/42D/57D 系列闭环步进电机是创客基地为满足市场需求而自主研发的一款产品。具备脉冲接口和RS485/CAN串行接口&#xff0c;支持MODBUS-RTU通讯协议&#xff0c;内置高效FOC矢量算法&#xff0c;采用高精度编码器&#xff0c;通过位置反馈&a…

【java】线程池简介

线程池简介 一、什么是线程池 线程池是一种利用池化技术思想来实现的线程管理技术&#xff0c;主要是为了复用线程、便利地管理线程和任务、并将线程的创建和任务的执行解耦开来。我们可以创建线程池来复用已经创建的线程来降低频繁创建和销毁线程所带来的资源消耗。 二、线…