飞桨时序建模库PaddleTS及产业应用实践

news2024/11/20 2:31:44

f4d65f66e9b1555837ef6082de7eb7cd.png时间序列:

一种普遍存在的数据形态

众所周知,时间序列是一种普遍存在的数据形态,与我们的日常生活及生产活动密切相关。如:股票指数、原油价格等金融市场数据;温度、湿度等天气数据;振动、转速等工业设备运行工况数据;以及电力负荷、新能源发电功率等电力数据;还有与我们身体相关的血压、心率、血氧饱和度等健康监测数据,都属于时间序列数据。

d626fced0252d5f41ca384c209149b62.png

概括起来,时间序列可以被定义为一组或多组按发生时间排列的随机变量。

时序数据如此普遍,时序建模也一直都是诸多领域所关注的重点问题。简言之,人们希望在对历史数据进行深入分析的基础上预知数据未来的走势,并根据预测结果来影响或改变决策。

对时序数据进行研究通常涉及以下三类任务:

  • 缺失值处理、异常值处理、归一化等数据处理任务

  • 时域分析、频域分析、时序分解等数据分析任务

  • 时序预测、时序异常检测、时序分类、时序聚类等建模任务

一个典型的时序应用场景,往往需要综合应用这些时序技术,才能有效解决问题并达到预期效果。

ad271fc65240b8b9d4bbebf0f803f845.png

技术升级:

深度学习推动时序建模进入新发展阶段

简单回顾一下时序技术的发展历程,可以发现时序技术的演进主要经历了3个阶段。

d3f2af12943772e4d7dfff5484cd8f0f.png

首先是从上个世纪50年代开始的统计学阶段,代表性的方法有简单滑动平均、指数平滑、ARIMA等经典方法。

从2000年开始,机器学习方法开始在时序建模中被广泛使用,代表性的方法有XGBoost、LightGBM等Boosting Tree方法,由于其优异的效果和较好的可解释性,这类方法被很多开发者所青睐。

从2017年开始,出现了大量基于深度学习的时序建模方法。在每年人工智能领域的顶级会议上,都会有代表性的工作被提出。比如,支持概率预测的DeepAR,具备可解释能力的Nbeats和TFT,时序表征学习TS2Vec和CoST等。可以看到,深度学习正在推动时序建模进入新的发展阶段,可以有效解决多变量、非平稳、长时序等时序建模所面临的一系列技术挑战。 

c1a37b362ce717f34eb8e7c58e38fcae.pngPaddleTS:

基于飞桨的深度时序建模库

为了使这些不断涌现的深度时序建模技术能够无门槛地惠及广大行业用户和开发者,我们打造了基于飞桨的深度时序建模算法库PaddleTS。顾名思义,这里TS就是Time Series的缩写。

PaddleTS所包含的主要功能模块构成,如下图所示:最下方是TSDataset,它提供了对整个时序数据的统一表达,是PaddleTS各个模块最主要的数据操作对象。在TSDataset内,对不同属性、不同用途、不同类型的数据列进行区分,方便模型算法按需对不同的数据列做不同处理。

174fe8d3a9f5c79d8709afb5d6fd014b.png

中间是一系列数据处理、数据分析、模型算法及高级建模能力相关的模块,其中模型算法当前主要包括时序预测、时序表征和时序异常检测这三类算法。

最上面是流水线的支持,包括通用流水线和场景化流水线。流水线的设计,是为了满足各种非常典型的时序运营需求。

a4c1a5a062b967f113093fc39260999d.pngPaddleTS产品特色:

简单易用、算法先进、开发者友好

在设计和开发PaddleTS的过程中,我们始终坚持3个基本原则:简单易用、算法先进以及开发者友好,这3个原则也构成了PaddleTS的产品特色。

简单易用

PaddleTS简单易用,希望用户无门槛使用前沿的深度时序建模方法,来解决实际业务问题。为了实现这个目标,PaddleTS主要从统一时序数据结构、标准化编程接口、提供丰富的数据处理能力入手,允许用户只编写少量代码就可以完成从数据加载到数据处理,再到建模的全过程。

此外,我们也提供了包括自动机器学习和集成学习这样的高级建模能力,这些功能可以帮助用户取得更好的建模效果。我们也提供了包括回测和交叉检验这样的实用工具。当然,针对所有的功能,我们提供了非常详实的API文档和丰富的示例教程,方便用户快速学习并精通PaddleTS。

算法先进

PaddleTS的另一特色就是算法先进。一方面我们提供了对近几年主流深度时序算法的支持,同时通过对前沿研究的跟踪,持续引入代表性的新算法,让用户能够在第一时间就体验到学术界最新的算法成果,并获得卓越的建模效果。当前PaddleTS主要支持3类深度时序模型,包括时序预测、时序表征、时序异常检测,已经实现了10余种极具代表性的深度时序建模算法。

f38438029b8a09a3f7d9d912e9af9ffd.png

开发者友好

PaddleTS希望能够持续引入前沿的模型算法来让广大的用户受益。这个目标的实现离不开社区的积极参与。为了让社区开发者、时序技术研究人员、行业从业人员都可以对模型算法的引入做出贡献,我们对模型开发框架做了精心的封装,使得开发者在充分理解算法的基础上,只须关注网络结构的实现。

对于较为复杂的模型,我们也推荐进行层次化设计,比如常见的从Block到Module再到Network,这样实现的代码逻辑清晰,可读性强,也便于维护。开发者可以参考PaddleTS已有的模型实现,快速熟悉模型开发工作。

e083ce5559fe1b67b8a87577b2e91a2e.png

8869f2f13d51d02d332774f0d3341c50.pngPaddleTS产业实践案例

接下来我们分享一则PaddleTS在电力行业的应用案例——电力母线负荷预测。

精准的电力母线负荷预测是实现电网安全调度的重要基础。近年来,由于大量新能源发电的并网,显著增大了母线负荷的波动性,从而为电力母线负荷预测带来了新的挑战。基于对业务的深入理解,我们与电力调度领域的专家一起提出了创新的母线负荷预测技术方案,包括基于电网结构的负荷分解与重构、多变量深度时序预测技术、多母线统一建模技术以及归因分析技术等。

基于PaddleTS所提供的强大的建模能力,通过充分利用历史负荷数据和气象预报信息、节假日信息等各类数据,实现了非常精准的预测效果,准确率超过98%。整个电力母线负荷预测系统的投入使用也极大提升了电网调度工作人员的工作效率,人效提升5倍。

77ad2e8aaa4afea9dc86f0d90404ff06.png

除此之外,PaddleTS也在新能源发电功率预测、设备健康管理、水质预测等众多时序建模场景做了大量实践,均取得了很好的效果。很多来自不同行业的用户,已经把PaddleTS用在各自的业务场景,也取得了非常不错的效果。

d21fa9538f7678249b82fd2bb2c8e3f8.png

最后,真诚希望与广大开发者、研究人员、行业从业人员一起将PaddleTS建成简单易用、算法先进、效果卓越的深度时序建模库,共同促进产业数据智能发展,迈上新的台阶。

欢迎加入PaddleTS社区,体验最新的产品特性。同时为PaddleTS的发展献言献策,共同推进PaddleTS的迭代升级。

  • PaddleTS社区网址

https://github.com/PaddlePaddle/PaddleTS

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

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

相关文章

【技术短文】汽车软件质量改善

一、根因分析 根据汽车软件脆弱性主要因素分析,共有10余种因素会导致软件质量问题: 1.项目时间点压力,占比 71%2.缺乏安全编程理解/培训,占比 60%3.偶然编程错误,占比 55%4.缺乏质量…

Tarjan算法的应用---缩点与割点

图论中有时候会涉及到一些连通性问题,主要是针对于点来说,在有向图中有时候需要计算强连通分量,这时候代表分量的的点就非常重要;在无向图中有时候会需要知道割点,用到的算法都是Tarjan,这个算法还是有难理…

了解多线程与并发

文章目录前言继承Thread类实现Runnable接口实现Callable和Future接口线程生命周期线程优先级线程加入操作线程休眠操作中断线程线程安全问题线程同步机制1. 同步代码块2. 同步方法线程暂停与恢复知识拓展死锁前言 📋前言📋 💝博客&#xff1a…

用Devc++与easyx一步一步做游戏[启动界面部分]-之按钮制作

前面我们介绍了如何为dev c配置好easyx,至于用easyx能够做一些什么呢?大用处我不敢说,用来学习了解消息机制还是不错的。这我们来实现一个简单的游戏启动界面的设计,主要是按钮的设计。总体设计好的效果如下: GIF截图…

(免费分享)springboot音乐网站

开发工具:eclipse,数据库mysql5.7 jdk1.8技术:springbootmybatis/** * * * */package com.bjpowernode.music.ss.service.impl;import javax.annotation.Resource;import com.bjpowernode.music.common.AbstractService; import com.bjpowe…

基于 ROS 机器人和 RTAB-MAP 算法实现室内三维重建

本文叙如何利用RTAB-Map算法和Turtlebot3机器人在自己构建的室内场景中建图 文章目录1、安装依赖2、创建工作空间3、安装rtabmap和rtabmap_ros4、建立gazebo场景功能包5、建立机器人功能包6、为机器人添加kinect相机参考7、编译工作空间8、建立环境地图9、建图1、安装依赖 必要…

数据结构第五周 :(进制转换问题 + 迷宫自动行走问题 + 杨辉三角形 + 队列元素逆置 + 银行排队 + 整数划分问题 + 卡特兰数)

目录进制转换问题迷宫自动行走问题杨辉三角形队列元素逆置银行排队——队列整数划分问题买票问题——卡特兰数小兔的棋盘——卡特兰数进制转换问题 【问题描述】根据课堂讲授,请用“顺序栈”解决进制转换问题,不采用顺序栈,不给分。 【输入形…

前端屏幕录制工具 + 录制<video>标签内容

一、录制的实现思路 1.开始录制、停止录制、下载视频 2.Blob介绍 3.概念 var mediaRecord //用于录制视频 var mediaStream //视频流 var videoBuffer [] //保存的视频数据二、屏幕录制工具 下载地址: https://chrome.google.com/webstore/detail/tampermonkey…

Linux- 系统随你玩之--文本处理三剑客--grep继任者awk

文章目录1、sed概述1.1、 与vim等编辑器的区别:1.2、sed工作原理1.3 、sed数据处理原理1.4 、正则表达式概念2、 sed语法和常用选项2.1、语法:2.2、sed常用内部命令2.3、参数:3、 sed 正则表达式(定位)3.1 、数字定址…

管理机密(RH294)

在ansible中有一个命令行工具ansible-vault可用于创建 编辑 加密 解密 查看文件举个栗子ansible-vaultcreate filenameNew Vault password: #输入密码Confirm New Vault password: #确认密码也可以使用别的方法 比如创建一个密码文件ansible-vaultcreate…

互联网开发必读Git工具利器-《30天精通Git版本控管》中文版免费分享

本书介绍在软体开发领域,对原始码进行版本控管是非常重要的一件事,有别于Subversion或TFS这类集中式版本控管系统,Git是一套分散式版本控管系统,并带来许多版本控管上的各种优势与解决传统集中式版本控管的缺失,例如支…

Spring Cloud_Hystrix断路器

目录一、概述1.分布式系统面临的问题2.是什么3.能干嘛4.官网资料5.Hystrix官宣,停更进维二、Hystrix重要概念1.服务降级Fallback2.服务熔断Breaker3.服务限流Flowlimit三、hystrix案例1.构建2.高并发测试3.故障现象和导致原因4.上诉结论5.如何解决?解决的…

面试_Selenium常见问题

1.selenium 工作原理 1.对于每一条Selenium脚本,一个http请求会被创建并且发送给浏览器的驱动 2.浏览器驱动中包含了一个HTTP Server,用来接收这些http请求 3.HTTP Server接收到请求后根据请求来具体操控对应的浏览器 4.浏览器执行具体的测试步骤 5.浏览…

Smali语法小记

Smali语法小记 介绍 在执行 Android Java 层的代码时,其实就是 Dalvik(ART) 虚拟机(使用 C 或 C 代码实现)在解析 Dalvik 字节码,从而模拟程序的执行过程。 自然,Dalvik 字节码晦涩难懂,研究人员们给出了…

通过 eShopOnContainers 项目学习一下微服务

这里是项目地址 https://github.com/dotnet-architecture/eShopOnContainers, 这是微软创建的一个基于 .NET 平台的微服务架构的示例应用程序,里面基本上市面上主流的时髦的技术都用上了。 因为涉及的内容比较多,所以我们只简单查看一下微服务的代码实现…

信息抽取命名实体识别和关系抽取)

信息抽取的定义为:从自然语言文本中抽取指定类型的实体,关系、事件等事实信息。并形成结构化数据输出的文本处理技术。 信息抽取是从文本数据中抽取特定信息的一种技术,文本数据由医学具体的单位构成,例如,句子、段落、…

JavaWeb—Vue的简单介绍

1 Vue介绍 概述 Vue是一套构建用户界面的渐进式前端框架。只关注视图层,并且非常容易学习,还可以很方便的与其它库或已有项目整合。通过尽可能简单的API来实现响应数据的绑定和组合的视图组件。 数据渲染 数据库 --JDBC–> java程序 --http协议–>…

《MySQL实战45讲》——学习笔记23 “binlogredolog 的写入机制/组提交机制“

本篇主要介绍数据的可靠性有关的知识,包括binlog的写入机制和redolog的写入机制,通过了解这些机制从而可以在MySQL的IO性能瓶颈上做些优化;前文介绍了MySQL在可靠性、性能相关的概念,包括WAL技术、redolog与binlog、2阶段提交、ch…

阿里云图标使用 (symbol 引用方式)

阿里云图标网址: https://www.iconfont.cn/ 一、登录注册 这个简单,就不说了 二、给当前项目找图库 2.1、添加项目 2.2、寻找图标添加入库 添加入库 2.3、打开入库 的图标添加到指定项目 添加到当前项目 1 2 三、项目使用图标 ( symbol 引用方式) 3.1、下…

《HelloGitHub》第 82 期

兴趣是最好的老师,HelloGitHub 让你对编程感兴趣!简介HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。https://github.com/521xueweihan/HelloGitHub这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Pyth…