知行编程网知行编程网  2022-06-05 19:00 知行编程网 隐藏边栏 |   抢沙发  159 
文章评分 0 次,平均分 0.0

GAN,没错,生成对抗网络也可以被用于时间序列预测

来自 | 知乎  作者|夏明朗

链接 | https://zhuanlan.zhihu.com/p/121771459

编辑 | 深度学习这件小事

本文仅作学术交流,如有侵权,请联系后台删除。
GAN,没错,生成对抗网络也可以被用于时间序列预测


   背景简介

GAN,generative adversarial networks,中文名生成对抗网络,由大名鼎鼎的Ian Goodfellow(花书的作者之一)于2014年提出,可以算是深度学习模型近些年发展过程中重要的模型之一。既然说到这里,顺便贴一张深度学习模型的重要进展梳理图,GAN能从众多工作中脱颖而出,一定是具有自己的独到之处。

GAN,没错,生成对抗网络也可以被用于时间序列预测

图片来自2019年清华大学和中国工程院整理的《人工智能发展报告》

不了解GAN的小伙伴,可以去B站看台大李宏毅老师的GAN讲解

李宏毅2020深度学习(完整版)国语

视频链接:https://www.bilibili.com/video/BV1JE411g7XF?p=61

接着说咱的老本行,时间序列预测常用的模型包括传统的ARMA,ARIMA模型,各种数据驱动模型(各种各样的机器学习模型,包括但不限于线性回归,支持向量机,随机森林和各种结构的神经网络模型等等),近些年来随着深度学习的发展,卷积神经网络(CNN),循环神经网网络(RNN,以LSTM应用最广)等模型被广泛应用于时间序列的预测。但是运用GAN实现时间序列预测的,很少见,下面我们就一起来看一篇2019年发表于IEEE Access的文章。

Probabilistic Forecasting of Sensory Data with Generative Adversarial Networks - ForGAN

文章地址:https://arxiv.org/abs/1903.12549

鉴于大家可能都因疫情原因困在家中科研,文章在arXiv上也有预印版,我比较了一下,预印版和IEEE Access上发表的差别不大,如果大家想要发表版本但下载文献又不方便,请私信留邮箱就好。

下面进入文章的主要内容。

   正文

题目:

GAN,没错,生成对抗网络也可以被用于时间序列预测

题目:ForGAN,一种基于生成对抗网络的感官数据概率预测模型

摘要:

GAN,没错,生成对抗网络也可以被用于时间序列预测

摘要是文章核心点的浓缩,我们这里挑重要的说。动机:传统的预测模型使用均值回归的方法进行预测,而这类模型的特点是不能反映出真实数据中的波动。核心创新:提出一种基于GAN模型的单步的概率预测模型,起名叫ForGAN,其核心是使用了conditional GAN(条件生成对抗模型)。仿真实验:用Lorenz数据集,Mackey-Glass数据集和A5M数据集(一个交通流数据集)验证了所提算法的有效性。

说实话,我在读文章的时候并没有领悟到文中提到的均值回归预测(mean regression forecasting)和概率预测(probabilistic forecasting)的精髓,也就对ForGAN的优点和意义的理解存在些许偏差,这里叫不敢妄加评论了。但这不妨碍介绍GAN模型用于时间序列预测的过程。下面直接介绍文章的干货部分。

文中所提出的ForGAN实质上就是一种conditional GAN(条件GAN),那么其进行时间序列预测的过程如下:

GAN,没错,生成对抗网络也可以被用于时间序列预测

ForGAN的总体架构

GAN,没错,生成对抗网络也可以被用于时间序列预测

生成器(Generator)详情

生成器的输入包含两部分:

时间序列片段(X0,....,Xt)和长度为N的噪声,输出的便是单步预测值Xt+1_prediction

GAN,没错,生成对抗网络也可以被用于时间序列预测

鉴别器(Discrimination)

鉴别器的输入为时间序列片段(X0,....,Xt)和单步预测的标签Xt+1(这是真实观测数据)

生成器和鉴别器不停地对抗,实质上是让Xt+1_prediction不停接近真实值Xt+1的过程,从而实现了时间序列的预测。

   总结

这是我第一次看到用条件GAN模型实现时间序列预测的模型,其实思路并不复杂,就是利用条件GAN的对抗模式,将预测值Xt+1_prediction不断逼近真实值Xt+1_real的过程。当然该模型完全可以实现多步预测,只需要将生成器的输出和判别器的标签换成(Xt+1,Xt+2,...,Xt+h)即可(h表示预测的步长)。

文中对ForGAN的动机和优点没有打动我,实验部分也没有说服我,在此我就不一一描述了。利用GAN进行时间序列预测,或许有蹭热点的嫌疑,但是作者的的确确提供了一个新的视角与思路,有兴趣的小伙伴不妨在经典条件GAN的基础上试一试,或许会有新的发现。

<pre style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><p style="max-width: 100%;letter-spacing: 0.544px;white-space: normal;color: rgb(0, 0, 0);font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;widows: 1;line-height: 1.75em;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;font-size: 16px;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;box-sizing: border-box !important;overflow-wrap: break-word !important;">—</span></strong>完<strong style="max-width: 100%;font-size: 16px;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;font-size: 16px;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;letter-spacing: 0.5px;box-sizing: border-box !important;overflow-wrap: break-word !important;">—</span></strong></span></strong></span></strong></p><section style="max-width: 100%;letter-spacing: 0.544px;white-space: normal;font-family: -apple-system-font, system-ui, "Helvetica Neue", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;widows: 1;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section powered-by="xiumi.us" style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-top: 15px;margin-bottom: 25px;max-width: 100%;opacity: 0.8;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="max-width: 100%;letter-spacing: 0.544px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section powered-by="xiumi.us" style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section style="margin-top: 15px;margin-bottom: 25px;max-width: 100%;opacity: 0.8;box-sizing: border-box !important;overflow-wrap: break-word !important;"><section><p style="margin-bottom: 15px;padding-right: 0em;padding-left: 0em;max-width: 100%;color: rgb(127, 127, 127);font-size: 12px;font-family: sans-serif;line-height: 25.5938px;letter-spacing: 3px;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;color: rgb(0, 0, 0);box-sizing: border-box !important;overflow-wrap: break-word !important;"><strong style="max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="max-width: 100%;font-size: 16px;font-family: 微软雅黑;caret-color: red;box-sizing: border-box !important;overflow-wrap: break-word !important;">为您推荐</span></strong></span></p><p style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;">IoU、GIoU、DIoU、CIoU损失函数的那点事儿</p><p style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="font-size: 14px;">GitHub重大更新:在线开发上线,是时候卸载IDE了</span></p><p style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;"><span style="color: rgb(87, 107, 149);-webkit-tap-highlight-color: rgba(0, 0, 0, 0);cursor: pointer;max-width: 100%;font-size: 14px;box-sizing: border-box !important;overflow-wrap: break-word !important;">史上最烂的项目:苦撑12年,600多万行代码...</span></p><p style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;">数据分析入门常用的23个牛逼Pandas代码</p><p style="margin-top: 5px;margin-bottom: 5px;padding-right: 0em;padding-left: 0em;max-width: 100%;min-height: 1em;font-family: sans-serif;letter-spacing: 0px;opacity: 0.8;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;">知乎高赞:985计算机视觉毕业后找不到工作怎么办?<br  /></p></section></section></section></section></section></section></section></section>
GAN,没错,生成对抗网络也可以被用于时间序列预测

本篇文章来源于: 深度学习这件小事

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享