yuqinie98 / PatchTST

An offical implementation of PatchTST: "A Time Series is Worth 64 Words: Long-term Forecasting with Transformers." (ICLR 2023) https://arxiv.org/abs/2211.14730
Apache License 2.0
1.51k stars 262 forks source link

RevIN and StandardScaler #99

Open Arnold815 opened 8 months ago

Arnold815 commented 8 months ago

我注意到在训练前导入数据时已经使用StandardScaler对数据进行了Normalization,然后每个batch输入模型后又进行了RevIN操作,我想知道这两种Normalization是可以同时使用的吗?

ynning commented 8 months ago

我也想问 搞不懂

Arnold815 commented 8 months ago

我也想问 搞不懂

我在其他地方问了,给我的答案是说StandardScaler是针对全局的,而RevIN是针对局部的,应该不冲突;而且两种都用在我自己的数据集上确实也有提升,虽然我还是不太明白原理

ynning commented 7 months ago

为什么revin用在我自己的数据集上没有效果啊 用不用都一样的结果 是不是我哪搞错了 崩溃

Arnold815 commented 7 months ago

为什么revin用在我自己的数据集上没有效果啊 用不用都一样的结果 是不是我哪搞错了 崩溃

用上去不说效果好不好,结果应该不一样才对,要不再看看代码是不是不对

ynning commented 7 months ago

效果变了 从0.5170变成0.5168 这算吗 没多大区别啊 在您的数据集上变化大吗

Arnold815 commented 7 months ago

效果变了 从0.5170变成0.5168 这算吗 没多大区别啊 在您的数据集上变化大吗

我这边变化稍微大一点 在0.0x这个级别,那只能说确实变化不大

ynning commented 7 months ago

请问你有试过dish-TS吗?能交流一下吗

Arnold815 commented 7 months ago

请问你有试过dish-TS吗?能交流一下吗

不好意思,没有诶,我主要不是搞归一化这块的

ynning commented 7 months ago

请问你有试过dish-TS吗?能交流一下吗

不好意思,没有诶,我主要不是搞归一化这块的

那你搞patch或者 通道独立、 通道混合这一块吗

Arnold815 commented 7 months ago

请问你有试过dish-TS吗?能交流一下吗

不好意思,没有诶,我主要不是搞归一化这块的

那你搞patch或者 通道独立、 通道混合这一块吗

是最近才在看,通道独立和patch,有在跑一些实验

Arnold815 commented 7 months ago

请问你有试过dish-TS吗?能交流一下吗

不好意思,没有诶,我主要不是搞归一化这块的

那你搞patch或者 通道独立、 通道混合这一块吗

是最近才在看,通道独立和patch,有在跑一些实验

捞,抱个大腿可以吗?qq:1846782676

明天加你稍微交流一下,我也懂得很少,今天还有事情忙

ynning commented 7 months ago

请问你有试过dish-TS吗?能交流一下吗

不好意思,没有诶,我主要不是搞归一化这块的

那你搞patch或者 通道独立、 通道混合这一块吗

是最近才在看,通道独立和patch,有在跑一些实验

捞,抱个大腿可以吗?qq:1846782676

明天加你稍微交流一下,我也懂得很少,今天还有事情忙

好滴

joezou commented 5 months ago

我看StandardScaler只针对train data计算了mean和std,然后apply到了全量数据,这是为什么?

Arnold815 commented 5 months ago

我去看了一下代码,确实如此。 查了一下是说要假设未来数据的mean和std等数据是无法获知的,所以会用训练集的mean和std去apply到validation和test上。我之前不是这么做的,都没注意到,我现在改过去试一下,应该不会有特别大的影响

周泽龙

@. | ---- Replied Message ---- | From | @.> | | Date | 4/11/2024 22:04 | | To | @.> | | Cc | Arnold @.>, State @.***> | | Subject | Re: [yuqinie98/PatchTST] RevIN and StandardScaler (Issue #99) |

我看StandardScaler只针对train data计算了mean和std,然后apply到了全量数据,这是为什么?

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you modified the open/close state.Message ID: @.***>

joezou commented 5 months ago

我去看了一下代码,确实如此。 查了一下是说要假设未来数据的mean和std等数据是无法获知的,所以会用训练集的mean和std去apply到validation和test上。我之前不是这么做的,都没注意到,我现在改过去试一下,应该不会有特别大的影响 | | 周泽龙 | | @. | ---- Replied Message ---- | From | @.> | | Date | 4/11/2024 22:04 | | To | @.> | | Cc | Arnold @.>, State @.> | | Subject | Re: [yuqinie98/PatchTST] RevIN and StandardScaler (Issue #99) | 我看StandardScaler只针对train data计算了mean和std,然后apply到了全量数据,这是为什么? — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you modified the open/close state.Message ID: @.>

明白了,确实“假设未来数据的mean和std等数据是无法获知的”是有道理的,变化比较大。