基于PYTORCH的时间序列预测模型
2021-08-23罗晓牧弓伟门韶洋
锦绣·中旬刊 2021年10期
罗晓牧 弓伟 门韶洋
时间序列预测是机器学习中一个非常重要的方向。本文主要介绍了在不同领域中训练基于PyTorch 的时间序列模型中的要点,包括对问题的限定、数据的预处理、模型的选择等,对于系统性能的提升有一定的指导作用。
时间序列预测是一个富有挑战的领域。使用FlowForecast [1],可以用于训练出数百个基于 PyTorch 的时间序列预测模型,用于不同范围的数据集,如河流的流量,COVID-19,太阳能,风能等。本文主要讨论了训练这些时间序列模型时的要点。
1.对问题加以限定
对于使用基于机器学习的时间序列模型,通常有不同的定义:
a)异常检测:这是用于在时间序列中检测出异常值的通用方法。然而“异常值”通常只出现在数据集中的很小一部分,但却与其它数据点截然不同。虽然二值检测通常那被认为是另外一个领域,异常检测可以被认为是二值检测的极端形式。大部分的异常检测都是无监督学习,因为我们通常只有在异常数据出现时才有可能判别出那是异常的数据。
b)时间序列分类:与其他形式的分类问题类似,我们将时间序列中的一段拿出来,然后将它分成某一类。与异常检测不同,通常每一类样本的数量都更加平衡(尽管有时候有些倾斜,如 10%,80%,10%)。
c)时间序列预测:通常指的是预测时间序列数据中的下一个值,或后面的 n 个值。这也是本文分析的重点。
D)时间序列分析:这是一个可用于包括以上各个分类的词。然而,通常可以认为是检查整个时间序列数据,比较不同的时间结构,然后设计出一个预测的模型。……
登录APP查看全文
