Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

预测结果和真实值发生偏移问题 #339

Open
kavinwow100 opened this issue Feb 22, 2024 · 7 comments
Open

预测结果和真实值发生偏移问题 #339

kavinwow100 opened this issue Feb 22, 2024 · 7 comments

Comments

@kavinwow100
Copy link

用自己的数据尝试训练了itransformer 完成了Long-termForecasting任务,features为MS类型,数据间隔为每15分钟,freq设置为“t”,但是我在plot 项目result文件夹中的预测结果时,图像发生了偏移。详细如下,翻了历史的issue也对temporal embedding进行了调整发现仍然有这种问题。辛苦您能给我指点下问题,非常感谢。

plt.plot(trues[:,0,-1].reshape(-1)[-50:], label='GroundTruth')
plt.plot(preds[:,0,-1].reshape(-1)[-50:], label='Prediction')
image

如果对preds中结果进行人工偏移发现拟合的还不错,不知道问题出在哪里?
plt.plot(trues[:,0,-1].reshape(-1)[-50:], label='GroundTruth')
plt.plot(preds[:,0,-1].reshape(-1)[-49:], label='Prediction')
image

@lss-1138
Copy link
Contributor

lss-1138 commented Mar 1, 2024

说明目前单点预测最好的结果,就是copy上一个点,无解

@LY-must-win
Copy link

跟LSTM单步预测结果有点像

@xiaolin96
Copy link

你把数据用一个最简单的lstm跑一下应该也是这种,最近和老师争议的也是这个问题,老师说我直接copy上一个点来预测,你的方法都没我的好,还提出什么新方法。。。如果找到解决方案,烦请告知,mark一下

@ztxtech
Copy link

ztxtech commented May 18, 2024

时间序列预测有$k$迟滞性,这也是研究方向,如果延迟消失,自然预测的好。如果直接偏移,等价于构建$\hat{y_i} = Net(y_i)$$,而你需要预测的时间点$i$,你是获取不到的,不能拿预测值预测预测值。

@ztxtech
Copy link

ztxtech commented May 18, 2024

朴素预测是一种方法,逻辑上确实误差很低,但用的是上一个时间点的数值。

@xiaolin96
Copy link

lstm 单点预测,每一步同样要用上一个时间点的数值啊

@ztxtech
Copy link

ztxtech commented May 18, 2024

lstm 单点预测,每一步同样要用上一个时间点的数值啊

是啊,但如果把预测的平移,就相当于已经知道了下一个时间点的数值嘛。本来构建的是 \hat{y}_i+1 = Net(y_i),平移后相当于是\hat{y}_i+1 = Net(y_i+1)

朴素预测直接不处理,我的意思是不处理直接作为预测值 \hat{y}_i+1 = y_i。上一个时间点的数据肯定要用的。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants