数据稀缺条件下的时间序列微分:符号回归(Symbolic Regression)方法介绍与Python示例

时间序列概况在日常生活和专业研究中都很常见。简而言之,时间序列概况是一系列连续的数据点 y(0), y(1), ..., y(t) ,其中时间 t 的点依赖于时间 t-1 的前一个点(或更早的时间点)。

在许多应用中,研究者致力于预测时间序列概况的未来行为。存在各种建模方法。这些模型通常基于过去或现在的信息,对未来概况进行估计。相关研究涉及多个领域,如使用神经网络进行天气预报(Bi et al., 2023)、深度学习在股票价格预测中的应用(Xiao and Su, 2022)以及制药产品需求演变分析(Rathipriya et al., 2023)等。

然而,模型训练需要数据支持。通常,数据质量越高,对研究过程的描述就越准确。

一般而言,模型可以学习预测下一个状态 y(t+1) ,如果给定先前的时间点 y(0), ..., y(t) 。但在某些应用中,我们可能需要模型接收当前观察值 y(0), ..., y(t) ,并预测系统在当前或下一个时间点的变化速率。这就要求我们获得系统的导数 dy ,而非可观察状态 y 。所以要训练此类模型并输出导数 dy ,首先需要收集这些导数数据,这些导数是直接从观察数据 y 计算得出的,因为直接测量导数在很多情况下可能困难或不可行。

这就引出了一个关键问题:噪声。处理过噪声时间序列数据的研究者都知道计算其导数的困难。

有多种方法可以处理时间序列数据中的噪声。本文将介绍一种在我们的研究项目中表现良好的方法,特别适用于时间序列概况中数据点较少的情况。

让我们开始使用Python来实现这个方法。

 

https://avoid.overfit.cn/post/24cb44a912ba46ceaa035c26e5f89089

posted @   deephub  阅读(66)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2023-09-16 Python中进行特征重要性分析的9个常用方法
2022-09-16 使用阈值调优改进分类模型性能
点击右上角即可分享
微信分享提示