DeepTrader
1 解决了什么问题?
目前现有的DRL方法所存在以下缺陷:
- 没有考虑 股票之间的内在联系和相互作用。比如一个股票的浮动可能对其一系列相关股票的增长趋势有较强的关联。
- DRL方法经常 忽视了市场条件(比如股票指数和股票涨跌的数量),而只是将输入的金融信号独立于市场的其他部分进行处理,导致在风险-收益的平衡上处理有限。
虽然2019年的 AlphaStock 引入了 cross-asset-attention-network 来计算股票之间的相似性,但其使用的计算方法是 基于局部区域的输入序列 上的,因此可能会忽视股票之间长时间跨度内的相互关系。
本文作者为解决以上缺陷入手,提出 DeepTrader。
2 DeepTrader模型框架
如下图所示,DeepTrader主要由三个部分组成:
- Asset scoring unit。输入为股票指数 X t a X^{a}_{t} Xta 和构建的图结构 A A A,输出为赢家得分 v t v_{t} vt。
- Market scoring unit。输入为市场标准 X t m X^{m}_{t} Xtm,输出一个高斯分布 ρ ~ \tilde{\rho} ρ~ 的参数(均值和方差)。
- Portfolio generator。输入为赢家得分 v t v_{t} vt 和高斯分布 ρ ~ \tilde{\rho} ρ~,输出为做空总资产比例 ρ t \rho_{t} ρt 和投资组合 ω t + \omega_{t}^{+} ωt+ 和 ω t − \omega_{t}^{-} ωt−。
2.1 Asset Scoring Unit
该单元由 L L L 个带有残差连接的 Spatial-TCN 块堆叠而成。Spatial-TCN 块主要由三部分组成:时间卷积层(Temporal convolution layer)、空间注意力机制(Spatial attention mechanism)和 图卷积层(Graph convolution layer)。
2.1.1 时间卷积层
该层使用 TCN 来完成 股票时间特征的提取(在AlphaStock中是使用LSTM-HA完成的功能,这里进一步优化了)。相比于 RNN/LSTM 类的方法,使用 TCN 的优势在于 能够简化并行计算,减轻梯度爆炸和梯度消失的问题。
RNN 在内部设计上存在一个严重的问题:由于网络一次只能处理一个时间步长,后一步必须等前一步处理完才能进行运算。这意味着 RNN 不能像 CNN 那样进行大规模并行处理,特别是在 RNN/LSTM 对文本进行双向处理时。这也意味着 RNN 极度地计算密集,因为在整个任务运行完成之前,必须保存所有的中间结果。
CNN 在处理图像时,将图像看作一个二维的“块”( m ∗ n m*n m∗n 的矩阵)。迁移到时间序列上,就可以将序列看作一个一维对象( 1 ∗ n 1*n 1∗n 的向量)。通过多层网络结构,可以获得足够大的感受野。这种做法会让 CNN 非常深,但是得益于大规模并行处理的优势,无论网络多深,都可以进行并行处理,节省大量时间。这就是 TCN 的基本思想。
TCN 是对 CNN 的改进:
- 适用序列模型:因果卷积(Causal Convolution)
- 记忆历史:空洞卷积/膨胀卷积(Dilated Convolution),残差模块(Residual block)
TCN 相关内容参考:https://zhuanlan.zhihu.com/p/69919158
输入内容:第 l l l 个块的输入,本文记为 H l − 1 H^{l-1} Hl−1,它的维度为 R C × N × K l − 1 R^{C×N×K_{l-1}} RC×N×Kl−1。其中 C C C 为隐藏层特征的维数, N N N 是股票的数量, K l − 1 K_{l-1} Kl−1 是第 l − 1 l-1 l−1 个块的时间长度。
输出内容: H ^ l ∈ R C × N × K l \hat{H}^{l}∈R^{C×N×K_{l}} H^l∈RC×N×Kl,该结果为提取出的股票时间特征。
2.1.2 空间注意力机制
为了对股票的 短期空间属性 的建模 ,本文使用注意力机制来适应性地搜索股票之间的相关性。
输入内容: H ^ l ∈ R C × N × K l \hat{H}^{l}∈R^{C×N×K_{l}} H^l∈RC×N×Kl,即 TCN 的输出。
输出内容: S l ∈ R N × N S^{l}∈R^{N×N} Sl∈RN×N,即股票之间短期的相关性。
计算公式:
S
^
l
=
V
s
⋅
s
i
g
m
o
d
(
(
H
l
^
W
1
)
W
2
(
W
3
H
l
^
T
(
1
,
2
)
)
T
+
b
s
)
\hat{S}^{l} = V_{s}\cdot sigmod((\hat{H^l}W_{1})W_{2}(W_{3}\hat{H^l}^{T(1,2)})^{T}+b_{s})
S^l=Vs⋅sigmod((Hl^W1)W2(W3Hl^T(1,2))T+bs)
其中,
W
1
∈
R
K
l
,
W
2
∈
R
C
×
K
l
,
W
3
∈
R
C
,
V
s
∈
R
N
×
N
W_{1}∈R^{K_{l}} ,W_{2}∈R^{C×K_{l}}, W{3}∈R^{C}, V_{s}∈R^{N×N}
W1∈RKl,W2∈RC×Kl,W3∈RC,Vs∈RN×N 都是参数,
b
s
∈
R
N
×
N
b_{s}∈R^{N×N}
bs∈RN×N 为bias,
T
(
1
,
2
)
T(1,2)
T(1,2) 为前两个维度的转置。
然后,再把
S
l
S^{l}
Sl 中的每个元素都归一化,得到股票之间的相关性系数:
S
i
j
l
=
e
x
p
(
S
^
i
j
l
)
∑
v
=
1
N
e
x
p
(
S
^
i
v
l
)
S_{ij}^{l} = \frac{exp(\hat{S}_{ij}^{l})}{\sum_{v=1}^{N}exp(\hat{S}_{iv}^{l})}
Sijl=∑v=1Nexp(S^ivl)exp(S^ijl)
2.1.3 图卷积层
虽然个股的表现具有不断变化的波动性,但行业的整体表现往往能更好地反映未来经济趋势和社会热点趋势。这块算是本文的创新点之一。本文使用图卷积层来对 股票间的长期空间关系,以更好地指导决策,GCNs 通过 消息传递 来获得图中 节点的依赖关系,从而将边缘和邻域信息集成到图的状态表示中。
本文作者考虑了以下四种方式去表征股票之间的相互关系:
- 股票行业类别
- 股票的收益相关性
- 股票的收益偏相关性
- 因果关系(使用 PC 算法确定股票之间的因果结构)
输入内容: H ^ l ∈ R C × N × K l \hat{H}^{l}∈R^{C×N×K_{l}} H^l∈RC×N×Kl,即 TCN 的输出;矩阵 A。
输出内容: Z l ∈ R N × N Z^{l}∈R^{N×N} Zl∈RN×N,即股票之间的长期相关系。
由于使用 股票行业分类 构建图结构可能会忽视许多依赖关系。因此,本文使用计算公式如下:
Z
l
=
∑
q
=
0
Q
A
~
q
H
^
l
Θ
1
,
q
+
A
c
~
H
l
^
Θ
2
Z^{l} = \sum_{q=0}^{Q}\tilde{A}^{q}\hat{H}^{l}\Theta_{1,q}+\tilde{A_{c}}\hat{H^{l}}\Theta_{2}
Zl=q=0∑QA~qH^lΘ1,q+Ac~Hl^Θ2
其中,
H
l
^
\hat{H^{l}}
Hl^ 为 TCN 的输出;
A
~
=
A
/
r
o
w
s
u
m
(
A
)
\tilde{A}=A/rowsum(A)
A~=A/rowsum(A),
Θ
1
,
Θ
2
∈
R
K
l
×
K
l
\Theta_1,\Theta_2∈R^{K_l×K_l}
Θ1,Θ2∈RKl×Kl 为 GCN 中可学习的参数;
A
c
~
\tilde{A_c}
Ac~ 用与捕捉它们之间的依赖关系:
A
c
~
:
=
S
o
f
t
M
a
x
(
R
e
L
U
(
E
E
T
)
)
\tilde{A_c}:=SoftMax(ReLU(EE^{T}))
Ac~:=SoftMax(ReLU(EET)),
E
∈
R
N
E∈R^{N}
E∈RN 是可学习的参数,它被随机初始化,同时使用梯度下降迭代更新。
对于使用 收益相关性、收益偏相关性 和 因果关系 的方式构建图结构,则直接使用下式即可(因为它们之间的依赖关系已经在数据中体现了):
Z
l
=
∑
q
=
0
Q
A
~
q
H
^
l
Θ
1
Z^{l} = \sum_{q=0}^{Q}\tilde{A}^{q}\hat{H}^{l}\Theta_{1}
Zl=q=0∑QA~qH^lΘ1
2.1.4 残差连接计算股票赢家得分
输入内容: Z l ∈ R N × N Z^{l}∈R^{N×N} Zl∈RN×N,即股票之间的长期相关系、 S l ∈ R N × N S^{l}∈R^{N×N} Sl∈RN×N,即股票之间短期的相关性 和 H l − 1 H^{l-1} Hl−1,即上一个块的输出。
输出内容: H L H^{L} HL,第 L 个块的输出,作为股票最终的时空特征。
计算公式:
H
l
=
S
l
×
Z
l
⊕
H
l
−
1
H^{l}=S^{l}×Z^{l}⊕H^{l-1}
Hl=Sl×Zl⊕Hl−1
最后,输入
H
L
H^{L}
HL 到一个全连接层,得到每个股票的赢家得分。
v
=
s
i
g
m
o
i
d
(
W
l
H
L
+
b
L
)
v = sigmoid(W_{l}H^{L}+b_L)
v=sigmoid(WlHL+bL)
2.2 Market scoring unit
由于随机赌博和突发事件,金融数据包含大量不可预测的不确定性。根据历史观察来准确判断股票的涨跌是不可行的。在以往基于 RL 的投资模型中,投资策略仅仅是基于对每只股票的分析,而 忽略了市场的变化。而顺应市场是一个更好的投资策略。当股市下跌时,有经验的投资者倾向于在卖空上花更多的钱。为了平衡收益和风险,本文提出了市场评分单元。以 市场情绪指数 为输入,动态调整做空资金的占比。
本文使用 LSTM + attention 来提取输入数据的序列化表示。计算过程如下:
h
k
=
L
S
T
M
(
h
k
−
1
,
x
k
m
)
h_k=LSTM(h_{k-1},x^{m}_{k})
hk=LSTM(hk−1,xkm)
其中,
h
k
h_k
hk 为第 k 步的状态编码。把 LSTM 的最终输出
h
K
h_K
hK 作为全局表示。然后,使用 attention 加权来捕获早期的信息关系。
e
k
=
V
e
T
t
a
n
h
(
U
1
[
h
k
;
h
K
]
+
U
2
x
k
m
)
e_k=V_e^{T}tanh(U_1[h_k;h_K]+U_2x_k^{m})
ek=VeTtanh(U1[hk;hK]+U2xkm)
α k = e x p ( e k ) ∑ i = 1 K e x p ( e i ) \alpha_{k}=\frac{exp(e_k)}{\sum_{i=1}^{K}exp(e_i)} αk=∑i=1Kexp(ei)exp(ek)
其中,
V
e
∈
R
C
V_e∈R^C
Ve∈RC,
U
1
∈
R
C
×
2
C
U_1∈R^{C×2C}
U1∈RC×2C,
U
2
∈
R
C
×
C
U_2∈R^{C×C}
U2∈RC×C 均为模型可学习的参数。最后重新计算
h
K
h_K
hK 记为
h
K
^
\hat{h_K}
hK^。
h
K
^
=
∑
k
=
1
K
α
k
⋅
h
k
\hat{h_K}=\sum^{K}_{k=1}\alpha_k\cdot h_k
hK^=k=1∑Kαk⋅hk
进一步计算出正态分布的均值和方差。
μ
,
σ
=
U
m
⋅
h
K
^
+
b
m
\mu,\sigma = U_m\cdot\hat{h_K}+b_m
μ,σ=Um⋅hK^+bm
输入内容:
X
m
X^{m}
Xm
输出内容: μ , σ \mu,\sigma μ,σ
2.3 Portfolio generator
本文的前半部分跟 AlphaStock 一样,选取前 G 只股票做多,后 G 只股票做空,分配股票占比计算如下:
ω
i
+
=
{
exp
(
v
i
)
∑
j
∈
V
+
exp
(
v
j
)
i
∈
V
+
0
i
∉
V
−
ω
i
−
=
{
exp
(
1
−
v
i
)
∑
j
∈
V
−
exp
(
1
−
v
j
)
i
∈
V
−
0
i
∉
V
−
\omega_{i}^{+}=\left\{\begin{array}{l} \frac{\exp \left(\boldsymbol{v}_{i}\right)}{\sum_{j \in \mathcal{V}^{+}} \exp \left(\boldsymbol{v}_{j}\right)} &i \in \mathcal{V}^{+} \\ 0 & i \notin \mathcal{V}^{-} \end{array} \quad \omega_{i}^{-}=\left\{\begin{array}{ll} \frac{\exp \left(1-\boldsymbol{v}_{i}\right)}{\sum_{j \in \mathcal{V}^{-}} \exp \left(1-\boldsymbol{v}_{j}\right)} & i \in \mathcal{V}^{-} \\ 0 & i \notin \mathcal{V}^{-} \end{array}\right.\right.
ωi+={∑j∈V+exp(vj)exp(vi)0i∈V+i∈/V−ωi−={∑j∈V−exp(1−vj)exp(1−vi)0i∈V−i∈/V−
后半部分则是结合了市场情况,通过正态分布动态地调整做空资产的占比
ρ
\rho
ρ,是本文的创新点之一。这个过程可以视为在连续状态空间
A
m
∈
[
0
,
1
]
A^m∈[0,1]
Am∈[0,1] 中选择一个值。在训练过程中,该值
ρ
\rho
ρ 根据正态分布
N
(
μ
,
σ
2
)
N(\mu,\sigma^2)
N(μ,σ2) 进行采样得来;在测试过程中,使用均值
μ
\mu
μ 作为
ρ
\rho
ρ 的取值。
以上流程完成后,按照交易流程中规定的流程完成交易周期。
2.4 Optimization via Reinforcement Learning
本文使用 policy gradient 来优化策略,策略 π ( a ∣ X a , X m ; θ ) \pi(a|X^a,X^m;\theta) π(a∣Xa,Xm;θ) 由两部分组成:
- 在 asset scoring un it 中的 决定股票组合占比的策略 π a ( i ∣ X a ; θ a ) \pi^{a}(i|X^a;\theta^a) πa(i∣Xa;θa)
- 在 market scoring unit 中的 做空股票的占比选择 π m ( ρ ~ ∣ x m ; θ m ) \pi^m(\tilde{\rho}|x^m;\theta^m) πm(ρ~∣xm;θm)
(1)首先是 股票组合占比的策略:
π
a
(
i
∣
X
a
,
θ
a
)
:
=
e
x
p
(
v
i
(
θ
a
)
)
∑
n
=
1
N
e
x
p
(
v
n
(
θ
a
)
)
\pi^a(i|X^a,\theta^a):=\frac{exp(v_i(\theta^a))}{\sum_{n=1}^{N}exp(v_n(\theta^a))}
πa(i∣Xa,θa):=∑n=1Nexp(vn(θa))exp(vi(θa))
其中,
v
i
(
θ
a
)
v_i(\theta^a)
vi(θa) 是第 i 个 资产得分(asset scoring unit 的输出)。
在第 t 个持有期内的 收益率 为:
r
t
=
y
t
⋅
π
θ
a
a
−
1
r_t = y_t\cdot\pi^a_{\theta^a}-1
rt=yt⋅πθaa−1
其中,
y
t
=
P
t
+
1
(
c
)
/
P
t
(
c
)
y_t = P^{(c)}_{t+1}/P^{(c)}_{t}
yt=Pt+1(c)/Pt(c) 为 价格增长率。
假设初始资金为
C
0
C_0
C0,则在一个 trajectory
τ
\tau
τ 下的**累计资产(+1是本金)**为:
C
∣
τ
∣
=
C
0
∏
t
=
0
∣
τ
∣
(
r
t
+
1
)
=
C
0
∏
t
=
0
∣
τ
∣
y
t
π
θ
a
C_{|\tau|}=C_0\prod_{t=0}^{|\tau|}(r_t+1) =C_0\prod_{t=0}^{|\tau|}y_t\pi_\theta^a
C∣τ∣=C0t=0∏∣τ∣(rt+1)=C0t=0∏∣τ∣ytπθa
因此,asset scoring unit 的优化目标为所有的 trajectories 的 对数累计资产最大化:
∇
J
a
(
θ
)
=
∑
τ
∼
π
0
∑
t
=
0
∣
τ
∣
log
(
y
t
∇
π
θ
a
)
\nabla J^{a}(\theta) = \sum_{\tau\sim\pi_0}\sum^{|\tau|}_{t=0}\log(y_t \nabla\pi_\theta^a)
∇Ja(θ)=τ∼π0∑t=0∑∣τ∣log(yt∇πθa)
(2)然后是 做空股票的占比选择,本文使用的是高斯策略:
π
m
(
ρ
~
∣
X
m
;
θ
m
)
=
1
2
π
σ
(
θ
m
)
e
x
p
(
−
(
ρ
~
−
μ
(
θ
m
)
)
2
2
σ
2
(
θ
m
)
)
\pi^m(\tilde{\rho}|X^m;\theta^m) = \frac{1}{\sqrt{2\pi}\sigma(\theta^m)}exp(-\frac{(\tilde{\rho}-\mu(\theta^m))^2}{2\sigma^2(\theta^m)})
πm(ρ~∣Xm;θm)=2πσ(θm)1exp(−2σ2(θm)(ρ~−μ(θm))2)
其中,
μ
(
θ
m
)
\mu(\theta^m)
μ(θm) 和
σ
(
θ
m
)
\sigma(\theta^m)
σ(θm) 均为 market scoring unit 的输出。
给定 reward
R
t
R_t
Rt,优化目标为:
∇
J
m
(
θ
m
)
=
∑
τ
∼
π
θ
∑
t
=
0
∣
τ
∣
R
t
∇
log
(
π
θ
m
)
\nabla J^{m}\left(\theta_{m}\right)=\sum_{\tau \sim \pi_{\theta}} \sum_{t=0}^{|\tau|} R_{t} \nabla \log \left(\pi_{\theta}^{m}\right)
∇Jm(θm)=τ∼πθ∑t=0∑∣τ∣Rt∇log(πθm)
把二者 加权求和 就是最终的优化目标:
∇
J
(
θ
)
=
∇
J
a
(
θ
a
)
+
ι
∇
J
m
(
θ
m
)
=
∑
τ
∼
π
θ
[
∑
t
=
0
∣
τ
∣
log
(
y
t
∇
π
θ
a
)
+
ι
∑
t
=
0
∣
τ
∣
R
t
∇
log
(
π
θ
m
)
]
\begin{array}{c} \nabla J(\boldsymbol{\theta})=\nabla J^{a}\left(\theta_{a}\right)+\iota \nabla J^{m}\left(\theta_{m}\right) \\ =\sum_{\tau \sim \pi_{\theta}}\left[\sum_{t=0}^{|\tau|} \log \left(\boldsymbol{y}_{t} \nabla \boldsymbol{\pi}_{\theta}^{a}\right)+\iota \sum_{t=0}^{|\tau|} R_{t} \nabla \log \left(\pi_{\theta}^{m}\right)\right] \end{array}
∇J(θ)=∇Ja(θa)+ι∇Jm(θm)=∑τ∼πθ[∑t=0∣τ∣log(yt∇πθa)+ι∑t=0∣τ∣Rt∇log(πθm)]
其中,
ι
\iota
ι 用来控制这两个部分的不同学习速率,这两个部分同时通过梯度上升来进行优化。
3 实验及关键结果
作者进行实验分析,旨在回答以下四个问题:
- DeepTrader 的性能表现怎么样?尤其是遇上一些金融事件,如次贷危机等。
- DeepTrader 中的几个关键组件是否有存在必要性(是否有效提升性能)?
- Market scoring unit 中的奖励函数的设定如何影响投资效果?
- GCN 中的图结构是否影响投资效果?
美国次贷危机(subprime crisis)也称次级房贷危机,也译为次债危机。它是指一场发生在美国,因次级抵押贷款机构破产、投资基金被迫关闭、股市剧烈震荡引起的金融风暴。
在2006年之前的5年里,由于美国住房市场持续繁荣,加上前几年美国利率水平较低,美国的次级抵押贷款市场迅速发展。
随着美国住房市场的降温尤其是短期利率的提高,次贷还款利率也大幅上升,购房者的还贷负担大为加重。同时,住房市场的持续降温也使购房者出售住房或者通过抵押住房再融资变得困难。这种局面直接导致 大批次贷的借款人不能按期偿还贷款,银行收回房屋,却卖不到高价,大面积亏损,引发了次贷危机。
3.1 Datasets
数据分别为 美国的 Dow Jones Industrial Average(DJIA),中国香港的 Hang Seng Index(HSI) 和 中国A股市场的 CSI 100 Index。
3.2 Comparative Methods
本文使用了五个对比方法:
- Market,简单的购买并持有策略。
- BLSW,基于均值回归的策略。
- CSM,经典的动量策略。
- EIIIE,基于RL的策略。
- AlphaStock,基于RL的策略。
同时为了研究 DeepTrader 的关键组件,作者也使用了:
- DT,完整的 DeepTrader 模型
- DT-NS,在 DeepTrader 中移除了空间注意力机制和图卷积层
- DT-NM,在 DeepTrader 中移除了 Market scoring unit
默认情况下使用 MDD(最大回撤)作为 Market scoring unit 的奖励函数;使用 股票的行业类别做为图结构的组织。
3.3 Evaluation Measures
本文使用了6中不同的评价指标,主要分为以下三类:
- 利润标准。包括 年化收益率(annual Rate of Return, ARR)
- 风险标准。包括 年化波动率(annual Volatility, AVol) 和 最大回撤(Maximum DrawDown, MDD)(这两者越低越好)
- 风险-利润标准。包括 年化夏普比率(ASR)、卡尔玛比率(CR)、Sortino比率(SoR)。
3.4 实验结果
- 所有基于RL的方法均优于传统方法。
- DJIA 的回测数据包含了几次著名的金融事件。在回测过程中,DT 的累计财富最大,表现最优。
- 图2中的DT-NS和DT-NM曲线说明了资产评分单元和市场评分单元在DeepTrader中的作用。资产评分单元使DT-NM在经济复苏过程中比DT-ns和AlphaStock更快地积累财富。DT-nm,去掉了市场评分单元,在遭遇2008年危机时,其跌幅超过DT。通过图3中的ρ值可以进一步证明,市场得分单位动态增加短期资金的比例(多在ρ > 0.5)以应对市场萧条,然后在市场繁荣时降低比例(多在ρ < 0.5)。这说明我们的模型能够很好地平衡风险和收益,并以平稳的方式将财富积累到一个较高的水平。
- 在不同的奖励函数的选择上,实验结果如下:
Models ARR(%) AVol ASR SoR MDD ( % ) CR DT-RoR 15.60 0.204 0.766 2.788 45.52 0.343 DT-SR 14.36 0.205 0.700 2.498 46.06 0.312 DT-MDD 12.35 0.172 0.718 2.782 22.61 0.546 DT-CR 12.02 0.185 0.648 2.598 31.10 0.387 \begin{array}{lcccccc} \hline \text { Models } & \text { ARR(\%) } & \text { AVol } & \text { ASR } & \text { SoR } & \text { MDD }(\%) & \text { CR } \\ \hline \text { DT-RoR } & \mathbf{1 5 . 6 0} & 0.204 & \mathbf{0 . 7 6 6} & \mathbf{2 . 7 8 8} & 45.52 & 0.343 \\ \text { DT-SR } & 14.36 & 0.205 & 0.700 & 2.498 & 46.06 & 0.312 \\ \text { DT-MDD } & 12.35 & \mathbf{0 . 1 7 2} & 0.718 & 2.782 & \mathbf{2 2 . 6 1} & \mathbf{0 . 5 4 6} \\ \text { DT-CR } & 12.02 & 0.185 & 0.648 & 2.598 & 31.10 & 0.387 \\ \hline \end{array} Models DT-RoR DT-SR DT-MDD DT-CR ARR(%) 15.6014.3612.3512.02 AVol 0.2040.2050.1720.185 ASR 0.7660.7000.7180.648 SoR 2.7882.4982.7822.598 MDD (%)45.5246.0622.6131.10 CR 0.3430.3120.5460.387
其中,RoR 和 SR 都有很高的收益率 ARR,但与之伴随的是投资者一般都无法承担的风险(MDD均大于45%)。综合来看,选择 MDD 作为奖励函数是最合适的(兼顾风险和利润)。
- 针对图结构的选择上,实验结果如下:
可以看出,因果结构在 GCN 中具有较强的优越性。