当前位置: 首页 > news >正文

【OpenSTL】方便好用的时空预测开源库

OpenSTL:方便好用的时空预测开源库

请添加图片描述

时空预测学习是一种学习范式,它使得模型能够通过在无监督的情况下从给定的过去帧预测未来帧,从而学习空间和时间的模式。尽管近年来取得了显著的进展,但由于不同的设置、复杂的实现和难以复现性,对其缺乏系统性的理解。我们提出了OpenSTL,这是一个全面的时空预测学习基准,将常见的方法分为recurrent-based和recurrent-free的模型两大类。OpenSTL提供了一个模块化和可扩展的框架,实现了各种最先进的方法。我们对包括合成移动物体轨迹、人体动作、驾驶场景、交通流量和天气预测等不同领域的数据集进行了标准评估。我们提供了详尽的标准评估结果和可视化样例,并发布了对应的模型权重和log记录文件。

OpenSTL的特性:

  • 灵活的代码设计。OpenSTL将STL算法分解为方法(训练和预测)、模型(网络架构)和模块,并提供统一的实验API。用户可以根据不同的STL任务使用灵活的训练策略和网络开发自己的STL算法。
  • 标准化基准。OpenSTL将支持STL算法的标准化基准,包括训练和评估,类似于许多开源项目(例如MMDetection和USB等)。
  • 支持多种模型和任务。OpenSTL包含了十四种有代表性的时空预测学习算法和二十四种模型,涵盖了从合成移动物体轨迹到真实世界的人体动作、驾驶场景、交通流量和天气预测等六类任务和十余个数据集。

论文:https://arxiv.org/pdf/2306.11249
代码:https://github.com/chengtan9907/OpenSTL

OpenSTL框架

OpenSTL是基于PyTorch开发的时空预测代码框架,包含了多种常用的算法和模型,提供了统一的训练、评估接口。此外,我们还提供了便捷的可视化功能,便于研究和应用过程中的效果展示。OpenSTL是高度模块化、可拓展的,用户可以灵活地基于OpenSTL来开发新的算法。

请添加图片描述
请添加图片描述

安装

OpenSTL提供了conda环境设置文件,用户可以通过以下命令轻松复现环境:

git clone https://github.com/chengtan9907/OpenSTL
cd OpenSTL
conda env create -f environment.yml
conda activate OpenSTL
python setup.py develop

我们提供了环境描述和数据集准备步骤,可以参考 install.md.

教程:利用自定义数据构建自己的项目

我们提供了一个使用OpenSTL在自定义数据上进行训练、评估和可视化的教程。这个教程可以帮助用户快速使用OpenSTL构建自己的项目。详细信息请参考examples/ 目录中的 tutorial.ipynb。

我们还提供了该教程的Colab演示:Colab链接.

标准化基准结果

详尽的标准化基准结果在 docs/en/model_zoos/ 中展示,可视化样例在 docs/en/visualization。

这里,我们以Moving Fashion MNIST和KittiCaltech为例,展示标准化基准评估结果。

Moving Fashion MNIST的标准评估结果如下所示:

请添加图片描述

KittiCaltech的标准评估结果如下所示:

请添加图片描述

我们以全球气象云层预测,展示可视化样例(建议在Github上看GIF动图,更清晰嗷):
请添加图片描述

最后,欢迎大家多多点star、提issue哈!

http://www.lryc.cn/news/241411.html

相关文章:

  • 【Unity】IBeginDragHandler、IDragHandler 和 IEndDragHandler 介绍
  • 杰发科技AC7801——Flash模拟EEP内存分布情况
  • 【前端知识】Node——http模块url模块的常用操作
  • 平衡二叉树 (简单易懂)
  • Vue.observable 是什么
  • 【五年创作纪念日】
  • 数据库基础入门 — SQL排序与分页
  • WordPress站点屏蔽过滤垃圾评论教程(Akismet反垃圾评论插件)
  • Modbus-RTU协议讲解与实战
  • 数据结构 查找基本概念
  • 『Linux升级路』基础开发工具——gcc/g++篇
  • 面试:RocketMQ相关问题
  • 2304. 网格中的最小路径代价 : 从「图论最短路」过渡到「O(1) 空间的原地模拟」
  • 【机器学习】算法性能评估常用指标总结
  • 前端 JavaScript 与 HTML 怎么实现交互?
  • 命令执行总结
  • 机器学习——词向量模型(CBOW代码实现-未开始)
  • 智慧海岛/海域方案:助力海洋空间智慧化、可视化管理
  • Bin、Hex、ELF、AXF的区别
  • IDEA安装教程
  • DRF-项目-(1):构建纯净版的drf项目,不再使用django的后台管理,django的认证,django的session等功能,作为一个纯接口项目
  • ubuntu 手动清理内存cache
  • gitBash中如何使用Linux中的tree命令
  • 【鸿蒙应用ArkTS开发系列】- 灌水区,鸿蒙ArkTs开发有问题可以在该帖中反馈
  • c语言习题1124
  • 线段树---数据结构学习
  • linux基础5:linux进程1(冯诺依曼体系结构+os管理+进程状态1)
  • JVM-基础
  • Baidu Comate 基于百度文心一言的智能编码助手
  • 基本微信小程序的图书馆座位管理系统