RNA secondary structure prediction using deep learning with thermodynamic integration
Year: 2021
Authors: Kengo Sato, Manato Akiyama & Yasubumi Sakakibara
Journal Name: Nature Communications
Motivation
在多参数模型种经常会出现过拟合现象
Research Objective
实现一种更具鲁棒性的结构预测模型
Dataset
D = { ( x ( k ) , y ( k ) ) } k = 1 K \mathcal{D} = \{ (x^{(k)}, y^{(k)}) \}_{k=1}^K D={(x(k),y(k))}k=1K ,其中, x ( k ) x^{(k)} x(k) 表示第 k k k 个 RNA 序列, y ( k ) y^{(k)} y(k) 表示 x ( k ) x^{(k)} x(k) 所对应的二级结构。
Background
MXfold模型计算了每对碱基对的四种 (helix stacking, helix opening, helix closing, unpaired region) 折叠分数,具体结构如下图所示。输入的RNA序列长度为
L
L
L ,每个碱基被编码为
d
d
d 维嵌入,输入尺寸变为
L
×
d
L×d
L×d 。 Block1 中的卷积层使用了 layer normalization 和 CELU 激活函数, dropout的比例为 50% 用于防止过拟合。 Block2 中的隐藏单元数设置为
d
2
\frac{d}{2}
2d , BiLSTM的每一层也使用了 layer normalization 和 CELU 激活函数, dropout的比例也为 50% 。现在,正向和反向分别输出了
L
×
d
2
L×\frac{d}{2}
L×2d 大小的矩阵,一个输出在行方向上扩展,一个输出在列方向上扩展,分别扩展为
L
×
L
×
d
2
L×L×\frac{d}{2}
L×L×2d 大小的矩阵,进而拼接成
L
×
L
×
d
L×L×d
L×L×d 大小的矩阵,如图中 Concat 2D 所示。 Block3 中的标准化、激活函数、 dropout 方法与 Block1 和 Block2 相同。最后,将
L
×
L
×
d
L×L×d
L×L×d 大小的矩阵通过三层
h
h
h 个隐藏单元的 MLP中,输出
L
×
L
×
4
L×L×4
L×L×4 大小的矩阵即为第
i
i
i 个核苷酸和第
j
j
j 个核苷酸的 4 种折叠分数。其中,
d
=
64
d = 64
d=64 ,
N
1
=
4
N_1 = 4
N1=4 ,
N
2
=
2
N_2 = 2
N2=2 ,
N
3
=
4
N_3 = 4
N3=4 ,
h
=
32
h = 32
h=32 。
Method
作者将MXfold模型计算出的分数和实验测得的能量参数相结合,计算序列
x
x
x 结构
y
y
y 的自由能
f
(
x
,
y
)
f(x, y)
f(x,y)
f
(
x
,
y
)
=
f
T
(
x
,
y
)
+
f
W
(
x
,
y
)
f(x, y) = f_T(x, y) + f_W(x, y)
f(x,y)=fT(x,y)+fW(x,y)
其中,
f
T
(
x
,
y
)
f_T(x, y)
fT(x,y) 为实验参数的贡献,
f
W
(
x
,
y
)
f_W(x, y)
fW(x,y) 为MXfold的贡献。
作者的目的是找出使目标函数
L
\mathcal{L}
L 最小的神经网络参数
λ
λ
λ
L
(
λ
)
=
∑
(
x
,
y
)
∈
D
{
(
max
y
^
∈
S
(
x
)
[
f
(
x
,
y
^
)
+
Δ
(
y
,
y
^
)
]
−
f
(
x
,
y
)
)
+
C
1
[
f
(
x
,
y
)
−
f
T
(
x
,
y
)
]
2
+
C
2
∥
λ
∥
2
}
Δ
(
y
,
y
^
)
=
δ
F
N
×
(
#
o
f
f
a
l
s
e
−
n
e
g
a
t
i
v
e
b
a
s
e
p
a
i
r
s
)
+
δ
F
P
×
(
#
o
f
f
a
l
s
e
−
p
o
s
i
t
i
v
e
t
i
v
e
b
a
s
e
p
a
i
r
s
)
\mathcal{L}(λ) = \sum_{(x, y) ∈ \mathcal{D}}\{ (\max_{\hat{y} ∈ \mathcal{S}(x)}[f(x, \hat{y}) + Δ(y, \hat{y})] - f(x, y)) + C_1[f(x, y) - f_T(x, y)]^2 + C_2\| λ \|_2 \} \\ Δ(y, \hat{y}) = δ^{FN}×(\#of \ false-negative \ base \ pairs) + δ^{FP}×(\#of \ false-positivetive \ base \ pairs)
L(λ)=(x,y)∈D∑{(y^∈S(x)max[f(x,y^)+Δ(y,y^)]−f(x,y))+C1[f(x,y)−fT(x,y)]2+C2∥λ∥2}Δ(y,y^)=δFN×(#of false−negative base pairs)+δFP×(#of false−positivetive base pairs)
其中,第一项为 hinge 损失,
S
(
x
)
\mathcal{S}(x)
S(x) 为序列
x
x
x 除
y
y
y 之外的所有可能二级结构,使用 DP算法 来预测
y
^
\hat{y}
y^ ,
Δ
(
y
,
y
^
)
Δ(y, \hat{y})
Δ(y,y^) 为间隔项,
δ
F
N
δ^{FN}
δFN 和
δ
F
P
δ^{FP}
δFP 均为超参数来控制敏感度和精确性,本文设置
δ
F
N
=
0.5
δ^{FN}=0.5
δFN=0.5 ,
δ
F
P
=
0.005
δ^{FP}=0.005
δFP=0.005 。第二项为了防止MXfold的输出与实验所得差距过大,第三项为 L2 正则化。作者规定
C
1
=
0.125
C_1 = 0.125
C1=0.125 ,
C
2
=
0.01
C_2 = 0.01
C2=0.01 ,采用 Adam 优化器优化。