序:
最近参加了天池的气象和海洋预测竞赛,希望能够借此机会学习时间序列的相关模型,接下来会通过系列博客记录并梳理自己在竞赛过程中的一些心得体会。
作为系列学习笔记的第一章,这篇文章旨在梳理和分享我对赛题的一些理解。

1. 项目背景

问题陈述

这个竞赛是一个自然科学相关的时间序列预测问题,要求基于历史气候观测和模式模拟数据,准确预测厄尔尼诺-南方涛动(ENSO)现象。具体来说,我们的任务就是根据过去12个月的气象及时空数据,预测未来24个月的Nino3.4指数。

1 什么是ENSO现象

ENSO现象是厄尔尼诺(EN)现象和南方涛动(SO)现象二者的合称。厄尔尼诺现象是指赤道中东太平洋附近的海表面温度持续异常增暖的现象。南方涛动现象则是热带东太平洋与热带西太平洋气压场存在的气压变化相反的跷跷板现象。在厄尔尼诺期间,东南太平洋气压明显减弱,西太平洋的气压增强,厄尔尼诺现象与南方涛动现象实际是反常气候分别在海洋和大气中的表现,二者密切相关,因此合称为厄尔尼诺-南方涛动现象。
ENSO现象会在世界大部分地区引起极端天气,对全球的天气、气候以及粮食产量具有重要的影响。

2 什么是Nino3.4指数

Nino3.4指数是Nino3.4区(170°W-120°W,5°S-5°N)的平均海温距平指数,是ENSO现象监测的一个重要指标,Nino3.4指数连续5个月超过0.5℃就定义为一次厄尔尼诺事件。
Nino3.4指数是连续的数值,因此从预测目标来看,这个题目是一个时间序列的回归预测问题。

数据集

1 训练数据

比赛给出的训练数据是CMIP5/6模式的历史模拟数据和美国SODA模式重建的近100多年历史观测同化数据。每个样本中都包含四种气象及时空变量:海表温度异常(SST)、热含量异常(T300)、纬向风异常(Ua)、经向风异常(Va)。每个数据的维度为(year, month, lat, lon)。
这样的数据描述对于非相关专业人士来说实在是一头雾水,但是工欲善其事必先利其器,要做好一个比赛我们首先要对给出的数据有一定的了解。

什么是CMIP5/6模式

CMIP5是世界气候研究计划(WCRP)的第5次耦合模式比较计划,CMIP6则是其第6次耦合模式比较计划,这二者都提供了多种不同的气候模式对于多种气候变量的模拟数据。
也就是说,CMIP数据中第一维度year在1-2265之间的是由CMIP6所提供的采用15种气候模式模拟出的过去151年中全球不同月份(month维度)、不同纬度(lat维度)、不同经度(lon维度)的SST、T300、Ua、Va数据,而2266-4645则是由CMIP5所提供的采用17种气候模式模拟出的过去140年中全球的SST、T300、Ua、Va数据。
关于SODA模式,我没有找到相关的信息,但是我们可以推测,SODA模式也是一种模拟气候数据的气候模式,SODA数据中给出的是由SODA模式模拟的过去100年的SST、T300、Ua、Va数据。
值得注意的是,CMIP与SODA数据提供的并非是逐年逐月得到一组数据,而是以每一年为起始,得到接下来三年内逐月的一组数据,例如当year=1时,SODA模式连续模拟出1-3年逐月的历史数据。

2 训练数据标签

训练数据的标签是不同年份(year维度)、不同月份(month维度)的Nino3.4 SST异常指数在当前月和未来两个月的平均值。

3 测试数据

测试数据时国际多个海洋资料同化结果提供的随机抽取的n段12个时间序列,测试数据包括多个文件,每个文件包括一段12个月的SST、T300、Ua、Va数据。但是测试文件是不可下载的,只能在docker提交时通过预测部分的代码进行预测。

评价指标

比赛给出的评估指标如下:
Score=23∗accskill−RMSEScore = \frac{2}{3} * accskill - RMSEScore=32​∗accskill−RMSE
其中
accskill=∑i=124a∗ln(i)∗coriaccskill = \sum_{i=1}^{24}a * ln(i) * cor_iaccskill=i=1∑24​a∗ln(i)∗cori​
accskill是相关性技巧评分,是所预测的24个月的累计值。
其中,a是一个系数,在不同月份a的值是不同的(1-4月a的值为1.5,5-11月a的值为2,12-18月a的值为3,19-24月a的值为4),可以看出,a的值越往后越大,也就是说,模型所能准确预测的时间越长,分数就越高。
cori则是预测值与实际值的相关系数,其计算公式如下:
cori=∑(X−Xmean)(Y−Ymean)∑(X−Xmean)2∑(Y−Ymean)2cor_i = \frac{\sum(X-X_{mean})(Y-Y_{mean})}{\sqrt{\sum(X-X_{mean})^2\sum(Y-Y_{mean})^2}}cori​=∑(X−Xmean​)2∑(Y−Ymean​)2​∑(X−Xmean​)(Y−Ymean​)​
其中X为实际值,X_mean为24个月的实际值的均值,Y为预测值,Y_mean为24个月的预测值的均值。
RMSE是所预测的24个月的rmse的累计均方根误差值。
由此看来,提分的要点在于提高accskil,降低RMSE。

2. Baseline提交

比赛要求用docker进行提交,目前我只提交了datawhale给出的baseline,熟悉了以下docker提交的流程。

  • datawhale给出的baseline
  • docker环境配置指南

目前baseline提交后的得分:

3. 后续提分策略

从目前的分析来看,后续可以朝以下几个方向努力:

  • 特征工程。好的特征工程往往可以达到巨大的效果,目前给出的是不同经度和维度下的SST、T300、Ua、Va数据,在进一步了解这些数据的含义可以进行一些相关的处理。
  • 采用GBDT或时序模型。给出的baseline只构建了简单的mlp模型,并且只用了SODA数据,在这个比赛中尝试LSTM等时序模型应该会有更好的效果。
  • 针对不同的气候模式数据训练不同的模型,将预测值进行加权或平均处理。题目中给出了15种CMIP6提供的气候模式、17种CMIP5提供的气候模式和SODA模式,也就是总共有33种不同的气候模式模拟的数据,对每种模式训练一个模型,可以将所有模型的预测结果加权处理。

天池时间序列竞赛——AI助力精准气象和海洋预测学习笔记其一:赛题分析相关推荐

  1. datawhale——阿里天池--AI助力精准气象和海洋预测学习笔记 task1

    1. 项目背景 问题陈述 这个竞赛是一个自然科学相关的时间序列预测问题,要求基于历史气候观测和模式模拟数据,准确预测厄尔尼诺-南方涛动(ENSO)现象.具体来说,我们的任务就是根据过去12个月的气象及 ...

  2. 时间序列预测(2):AI助力精准气象和海洋预测

    文章目录 一.背景 二.数据预处理 数据简介 训练数据标签说明 测试数据说明 模型评估指标 数据的转换 三.模型的构建和预测 构建训练集 训练模型 模型评估 模型预测 四.模型的改进方向 引言 本文主 ...

  3. 【算法竞赛学习】AI助力精准气象和海洋预测

    赛题简介 赛题背景 发生在热带太平洋上的厄尔尼诺-南方涛动(ENSO)现象是地球上最强.最显著的年际气候信号.通过大气或海洋遥相关过程,经常会引发洪涝.干旱.高温.雪灾等极端事件,对全球的天气.气候以 ...

  4. 2021 “AI Earth”人工智能创新挑战赛 AI助力精准气象和海洋预测

    这里揭露一下天池比赛里活跃着的部分小号行为. 在AI earth比赛里,12点提交截止,但运行时间最长6小时,因此12点到18点仍然有机会刷新排行榜,所以大家可能还有一次提分机会.16点南京某大学的人 ...

  5. “AI Earth”人工智能创新挑战赛:助力精准气象和海洋预测Baseline[3]:TCNN+RNN模型、SA-ConvLSTM模型

    [机器学习入门与实践]入门必看系列,含数据挖掘项目实战:模型融合.特征优化.特征降维.探索性分析等,实战带你掌握机器学习数据挖掘 专栏详细介绍:[机器学习入门与实践]合集入门必看系列,含数据挖掘项目实 ...

  6. 助力精准气象和海洋预测笔记

    竞赛题目 发生在热带太平洋上的厄尔尼诺-南方涛动(ENSO)现象是地球上最强.最显著的年际气候信号.通过大气或海洋遥相关过程,经常会引发洪涝.干旱.高温.雪灾等极端事件,对全球的天气.气候以及粮食产量 ...

  7. 数据竞赛入门-金融风控(贷款违约预测)一、赛题介绍

    赛题概况 比赛要求参赛选手根据给定的数据集,建立模型,预测金融风险. 赛题以预测金融风险为任务,数据集报名后可见并可下载,该数据来自某信贷平台的贷款记录,总数据量超过120w,包含47列变量信息,其中 ...

  8. [AI助力] 2023.2.23 考研英语学习 2010 英语二翻译

    [AI助力] 2023.2.23 考研英语学习 2010 英语二翻译 文章目录 [AI助力] 2023.2.23 考研英语学习 2010 英语二翻译 2010年英语二翻译真题 自己写的 积累

  9. 2020“数维杯”国际大学生数学建模竞赛赛题分析

    2020"数维杯"国际大学生数学建模竞赛赛题分析 1.ABCD赛题分析 1.1A题翻译:中国螺纹钢需求预测 1.2B题翻译:股票价格的混沌模型 1.3C题翻译:城市道路最佳除雪方案 ...

最新文章

  1. linux命令find的功能,linux find命令使用一览表
  2. hadoop官方文档_hadoop体系简介
  3. 太酷了!Linux的30 个实例详解 TOP 命令!
  4. RandomForest:随机森林
  5. 免费下载精美网站模板的25个网站推荐
  6. 在线代码编辑器---codemirror插件
  7. C/C++ 代码转换规范化的脚本
  8. Java黑皮书课后题第7章:7.2(倒置输入的数)编写程序,读取10个整数,然后按照和读入顺序相反的顺序将它们显示出来
  9. python怎么查询元素是否在列表中_python怎么判断某一元素是否在列表中
  10. c++语言运算符的优先次序,C++中的运算符和运算符优先级总结
  11. 在 Python 中使用函数式编程的最佳实践!
  12. class文件-常量池类型汇总
  13. Java类属性字段校验(validation的使用)
  14. SpringBoot基础-Environment解析
  15. 淘宝奇葩店铺:一个人的皇冠店|视频
  16. 刺猬猫服务器维护2020,刺猬猫杂谈:我认真起来连老板的号都敢封!
  17. telnet 和 ping的区别
  18. Android开发中所需颜色的RGB值
  19. 【微信小程序】小程序入门app.js、app.json、app.wxss解说
  20. 吴孟达版《高等工程数学》第四章+matlab实践

热门文章

  1. 如何输入版权特殊字符©
  2. 计算机网络--应用层(2)P2P应用
  3. 淘淘商城第55讲——商品搜索之表现层开发
  4. html5+css3满天星星音乐背景动画特效(超炫酷)
  5. 智慧社区解决方案核心要点有哪些 智慧社区解决方案
  6. Asp.Net读取excel文件的时候 出错提示:外部表不是预期的格式 解决方案
  7. chromedriver中的浏览器选项
  8. 生物技术的计算机应用系统,生物技术在计算机发展中的作用.pdf
  9. 公众号与App哪个更有前景
  10. 【数据库】浅谈WITH CHECK OPTION的作用