这篇论文的创新点主要集中在PatchTST模型的设计和应用中。以下是对其创新点的详细说明:
创新点
-
频道独立补丁设计:PatchTST模型通过将多变量时间序列分割成不同的频道,每个频道作为单变量时间序列处理。每个频道独立地通过实例归一化操作和补丁分割过程,避免了传统方法中可能的频道间信息混杂,提高了模型的泛化能力和效率。
-
补丁(Patching):补丁设计的引入显著减少了模型的时间和空间复杂度。通过将输入序列分割成长度为 P P P的补丁,并以步幅 S S S进行非重叠分割,使得输入标记的数量从 L L L减少到 L / S L/S L/S。这使得注意力图的内存使用和计算复杂度减少了 S S S倍,从而在计算资源有限的情况下允许模型查看更长的历史序列。
-
自监督表示学习:引入了掩码自监督学习机制,通过随机选择并掩码部分补丁,模型被训练来重建这些被掩码的补丁。这样,模型不仅在监督预测任务中表现出色,还能在无标签数据上学习有用的表示,从而提高了表示的通用性和迁移能力。
公式详细解释
补丁过程公式
N
=
⌊
L
−
P
S
⌋
+
2
N = \left\lfloor \frac{L-P}{S} \right\rfloor + 2
N=⌊SL−P⌋+2
其中,
N
N
N是补丁的数量,
L
L
L是输入序列长度,
P
P
P是补丁长度,
S
S
S是步幅。这个公式用于计算输入序列在分割成补丁后的补丁数量。
补丁的生成过程可以用以下公式描述:
x
p
(
i
)
∈
R
P
×
N
\mathbf{x}^{(i)}_p \in \mathbb{R}^{P \times N}
xp(i)∈RP×N
其中,
x
p
(
i
)
\mathbf{x}^{(i)}_p
xp(i)是第
i
i
i个单变量序列的补丁矩阵,维度为
P
×
N
P \times N
P×N。
Transformer编码器
补丁通过可训练的线性投影映射到Transformer潜在空间:
x
d
(
i
)
=
W
p
x
p
(
i
)
+
W
p
o
s
\mathbf{x}^{(i)}_d = \mathbf{W}_p \mathbf{x}^{(i)}_p + \mathbf{W}_{pos}
xd(i)=Wpxp(i)+Wpos
其中,
W
p
∈
R
D
×
P
\mathbf{W}_p \in \mathbb{R}^{D \times P}
Wp∈RD×P是线性投影矩阵,
W
p
o
s
∈
R
D
×
N
\mathbf{W}_{pos} \in \mathbb{R}^{D \times N}
Wpos∈RD×N是可学习的加性位置编码,
x
d
(
i
)
∈
R
D
×
N
\mathbf{x}^{(i)}_d \in \mathbb{R}^{D \times N}
xd(i)∈RD×N是投影后的补丁表示。
多头注意力机制的计算公式为:
Q
h
(
i
)
=
(
x
d
(
i
)
)
T
W
h
Q
,
K
h
(
i
)
=
(
x
d
(
i
)
)
T
W
h
K
,
V
h
(
i
)
=
(
x
d
(
i
)
)
T
W
h
V
\mathbf{Q}^{(i)}_h = (\mathbf{x}^{(i)}_d)^T \mathbf{W}^Q_h, \quad \mathbf{K}^{(i)}_h = (\mathbf{x}^{(i)}_d)^T \mathbf{W}^K_h, \quad \mathbf{V}^{(i)}_h = (\mathbf{x}^{(i)}_d)^T \mathbf{W}^V_h
Qh(i)=(xd(i))TWhQ,Kh(i)=(xd(i))TWhK,Vh(i)=(xd(i))TWhV
其中,
W
h
Q
,
W
h
K
∈
R
D
×
d
k
\mathbf{W}^Q_h, \mathbf{W}^K_h \in \mathbb{R}^{D \times d_k}
WhQ,WhK∈RD×dk,
W
h
V
∈
R
D
×
D
\mathbf{W}^V_h \in \mathbb{R}^{D \times D}
WhV∈RD×D。
注意力输出的计算公式为:
(
O
h
(
i
)
)
T
=
Attention
(
Q
h
(
i
)
,
K
h
(
i
)
,
V
h
(
i
)
)
=
Softmax
(
Q
h
(
i
)
(
K
h
(
i
)
)
T
d
k
)
V
h
(
i
)
(\mathbf{O}^{(i)}_h)^T = \text{Attention}(\mathbf{Q}^{(i)}_h, \mathbf{K}^{(i)}_h, \mathbf{V}^{(i)}_h) = \text{Softmax} \left( \frac{\mathbf{Q}^{(i)}_h (\mathbf{K}^{(i)}_h)^T}{\sqrt{d_k}} \right) \mathbf{V}^{(i)}_h
(Oh(i))T=Attention(Qh(i),Kh(i),Vh(i))=Softmax(dkQh(i)(Kh(i))T)Vh(i)
损失函数
L
=
E
x
1
M
∑
i
=
1
M
∥
x
^
L
+
1
:
L
+
T
(
i
)
−
x
L
+
1
:
L
+
T
(
i
)
∥
2
2
\mathcal{L} = \mathbb{E}_{\mathbf{x}} \frac{1}{M} \sum_{i=1}^{M} \left\| \hat{\mathbf{x}}^{(i)}_{L+1:L+T} - \mathbf{x}^{(i)}_{L+1:L+T} \right\|^2_2
L=ExM1i=1∑M
x^L+1:L+T(i)−xL+1:L+T(i)
22
该公式表示我们选择使用均方误差(MSE)损失来衡量预测值与真实值之间的差异。每个频道中的损失汇总并在
M
M
M个时间序列上取平均值,以获得总体目标损失。
结论
论文通过创新性的PatchTST模型,利用补丁分割和自监督学习显著提高了时间序列预测的性能。通过减少计算复杂度和提高表示学习能力,PatchTST展示了其在处理长时间序列预测任务中的优势。