thuml/Time-Series-Library

Normalization from Non-stationary Transformer

Flying7514 opened this issue · 2 comments

文件 model/iTransformer.py 里面的

Normalization from Non-stationary Transformer

means = x_enc.mean(1, keepdim=True).detach()
x_enc = x_enc - means
stdev = torch.sqrt(torch.var(x_enc, dim=1, keepdim=True, unbiased=False) + 1e-5)
x_enc /= stdev

这个normalization操作有点疑问,正常不是应该对x_enc求标准差方差吗,而这部分代码先进行了x_enc = x_enc - means操作,然后对x_enc求标准差方差的标准差。

疑惑:是这种方式效果更好?还是写错了?

标准差和方差与均值大小无关,所以两者计算结果是一样的

哦哦 感谢 感谢 😂