Efficient parameter estimation for RNA secondary structure prediction
Year: 2007
Authors: Mirela Andronescu, Anne Condon, Holger H. Hoos, David H. Mathews, and Kevin P. Murphy
Journal Name: Bioinformatics
Motivation
- 基于自由能的RNA二级序列预测模型Turner99,没有有效、快速的参数估计方法(使用大量结构数据和自由能数据训练)。
- 数据集中的最小自由能(MFE)也许有噪声。
Research Objective
提出一种能应用于大样本的自由能参数计算方法(CG方法),且对自由能噪声具有鲁棒性。
Dataset
(
x
,
y
x
)
∈
S
(x, y_x) ∈ \mathcal{S}
(x,yx)∈S ,其中
y
x
y_x
yx 为序列
x
x
x 的真实MFE结构。
(
x
,
y
x
,
e
x
)
∈
T
(x, y_x, e_x) ∈ \mathcal{T}
(x,yx,ex)∈T ,其中
e
x
e_x
ex 为结构
y
x
y_x
yx 的自由能。
Background
已知序列
x
x
x ,目标为预测具有最小自由能的结构
y
y
y 。序列
x
x
x 和结构
y
y
y 的自由能计算公式为
Δ
G
(
x
,
y
,
θ
)
=
c
(
x
,
y
)
T
θ
=
∑
k
=
1
K
c
k
(
x
,
y
)
θ
k
ΔG(x, y, \bm{θ}) = c(x, y)^T\bm{θ} = \sum_{k=1}^K c_k(x, y)θ_k
ΔG(x,y,θ)=c(x,y)Tθ=k=1∑Kck(x,y)θk
其中
K
K
K 是特征的个数,
c
k
(
x
,
y
)
c_k(x, y)
ck(x,y) 为特征
k
k
k 在出现在结构
y
y
y 中的次数,
θ
k
θ_k
θk 是特征
k
k
k 的能量参数。
CONTRAfold模型使用最大可能性(ML)方法来估计参数。定义在序列
x
x
x 和自由能参数
θ
\bm{θ}
θ 确定的条件下,结构为
y
y
y 的概率为
p
(
y
∣
x
,
θ
)
=
1
Z
(
x
,
θ
)
e
x
p
(
−
1
R
T
Δ
G
(
x
,
y
,
θ
)
)
p(y|x, \bm{θ}) = \frac{1}{Z(x, \bm{θ})}exp(-\frac{1}{RT}ΔG(x, y, \bm{θ}))
p(y∣x,θ)=Z(x,θ)1exp(−RT1ΔG(x,y,θ))
其中,
R
R
R 是气体常数,
T
T
T 是绝对温度,
Z
(
x
,
θ
)
Z(x, \bm{θ})
Z(x,θ) 为分段函数。
p
(
y
∣
x
,
θ
)
p(y|x, \bm{θ})
p(y∣x,θ) 为凸函数,可以基于梯度优化概率对数
L
S
(
θ
)
=
∑
(
x
,
y
x
)
∈
S
l
o
g
p
(
y
x
∣
x
,
θ
)
L_{\mathcal{S}}(\bm{θ})=\sum_{(x, y_x) ∈ \mathcal{S}}logp(y_x|x, \bm{θ})
LS(θ)=∑(x,yx)∈Slogp(yx∣x,θ) ,来估计参数
θ
\bm{θ}
θ 。
因为数据集中的
e
x
e_x
ex 可能存在噪声,作者在概率中加入了精度为
τ
τ
τ 的高斯分布,即
p
(
y
∣
x
,
θ
)
∝
L
S
(
θ
)
−
τ
∑
(
x
,
y
x
,
e
x
)
∈
T
(
e
x
−
c
(
x
,
y
x
)
T
θ
)
2
p(y|x, \bm{θ}) \propto L_{\mathcal{S}}(\bm{θ}) - τ\sum_{(x, y_x, e_x) ∈ \mathcal{T}}(e_x - c(x, y_x)^T\bm{θ})^2
p(y∣x,θ)∝LS(θ)−τ(x,yx,ex)∈T∑(ex−c(x,yx)Tθ)2
论文中原式为
L
S
(
θ
)
+
τ
∑
(
x
,
y
x
,
e
x
)
∈
T
(
e
x
−
c
(
x
,
y
x
)
T
θ
)
2
L_{\mathcal{S}}(\bm{θ}) + τ\sum_{(x, y_x, e_x) ∈ \mathcal{T}}(e_x - c(x, y_x)^T\bm{θ})^2
LS(θ)+τ∑(x,yx,ex)∈T(ex−c(x,yx)Tθ)2 ,但高斯分布的指数项有
−
1
2
-\frac{1}{2}
−21 ,所以我认为应把
+
+
+ 变为
−
-
− 。直观上来看,当误差越小时概率越大。如理解有误请大佬指正。
这种方法存在两个问题
- 算力要求过高
- 该模型不能处理缺失(特征不完全)的数据集。
Method
非最优的结构
y
y
y 的自由能大于MFE结构
y
x
y_x
yx 的自由能,约束表示为
Δ
G
(
x
,
y
x
,
θ
)
<
Δ
G
(
x
,
y
,
θ
)
ΔG(x, y_x, \bm{θ}) < ΔG(x, y, \bm{θ})
ΔG(x,yx,θ)<ΔG(x,y,θ)
其中,
(
x
,
y
x
)
∈
S
(x, y_x) ∈ \mathcal{S}
(x,yx)∈S ,
y
∈
Y
x
∖
{
y
x
}
y ∈ Y_x \setminus \{y_x\}
y∈Yx∖{yx} ,
Y
x
Y_x
Yx 是序列
x
x
x 的所有可能的二级结构集合。
因为数据集中的
e
x
e_x
ex 可能存在噪声,作者引入了松弛变量
δ
x
,
y
≥
0
δ_{x, y} ≥ 0
δx,y≥0 。放松后的约束表示为
Δ
G
(
x
,
y
x
,
θ
)
<
Δ
G
(
x
,
y
,
θ
)
+
δ
x
,
y
(
c
(
x
,
y
x
)
−
c
(
x
,
y
)
)
T
θ
−
δ
x
,
y
<
0
M
S
θ
−
δ
<
0
ΔG(x, y_x, \bm{θ}) < ΔG(x, y, \bm{θ}) + δ_{x, y} \\ (c(x, y_x) - c(x, y))^T\bm{θ} - δ_{x, y} < 0 \\ M_{\mathcal{S}}\bm{θ} - \bm{δ} < 0
ΔG(x,yx,θ)<ΔG(x,y,θ)+δx,y(c(x,yx)−c(x,y))Tθ−δx,y<0MSθ−δ<0
其中,
M
S
M_{\mathcal{S}}
MS 为
(
c
(
x
,
y
x
)
−
c
(
x
,
y
)
)
T
(c(x, y_x) - c(x, y))^T
(c(x,yx)−c(x,y))T ,
δ
\bm{δ}
δ 为
δ
x
,
y
δ_{x, y}
δx,y 向量。
优化问题表示为
m
i
n
∥
δ
∥
2
2
s
.
t
.
M
S
θ
−
δ
<
0
δ
≥
0
\begin{aligned} &min \quad \|\bm{δ}\|_2^2 \\ & s.t. \quad \begin{array} {l}{M_{\mathcal{S}}\bm{θ} - \bm{δ} < 0} \\ {\bm{δ} ≥ 0} \end{array} \end{aligned}
min∥δ∥22s.t.MSθ−δ<0δ≥0
作者又加入了数据集
T
\mathcal{T}
T ,约束表示变为
Δ
G
(
x
,
y
x
,
θ
)
−
ξ
x
=
c
(
x
,
y
x
)
T
θ
−
ξ
x
=
e
x
M
T
θ
−
ξ
=
e
ΔG(x, y_x, \bm{θ}) - \xi_x = c(x, y_x)^T\bm{θ} - \xi_x = e_x \\ M_{\mathcal{T}}\bm{θ} - \bm{\xi} = \bm{e}
ΔG(x,yx,θ)−ξx=c(x,yx)Tθ−ξx=exMTθ−ξ=e
其中,
ξ
x
\xi_x
ξx 为预测
e
x
e_x
ex 的误差,
M
T
M_{\mathcal{T}}
MT 为
c
(
x
,
y
x
)
T
c(x, y_x)^T
c(x,yx)T ,
ξ
\bm{\xi}
ξ 为
ξ
x
\xi_x
ξx 向量,
e
e
e 为
e
x
e_x
ex 向量。
优化问题改变为
m
i
n
(
1
−
λ
)
1
∣
S
∣
∥
m
T
δ
∥
2
2
+
λ
1
∣
T
∣
∥
ξ
∥
2
2
s
.
t
.
M
S
θ
−
δ
<
0
M
T
θ
−
ξ
=
e
δ
≥
0
\begin{aligned} &min \quad (1-λ)\frac{1}{|\mathcal{S}|}\| \bm{m}^T\bm{δ} \|_2^2 + λ\frac{1}{|\mathcal{T}|}\| \bm{\xi} \|_2^2 \\ & s.t. \quad \begin{array} {l}{M_{\mathcal{S}}\bm{θ} - \bm{δ} < 0} \\ {M_{\mathcal{T}}\bm{θ} - \bm{\xi} = \bm{e}} \\ {\bm{δ} ≥ 0} \end{array} \end{aligned}
min(1−λ)∣S∣1∥mTδ∥22+λ∣T∣1∥ξ∥22s.t.MSθ−δ<0MTθ−ξ=eδ≥0
其中,
∣
S
∣
|\mathcal{S}|
∣S∣ 代表集合
S
\mathcal{S}
S 的样本数,
m
x
m_x
mx 为用于计算序列
x
x
x 的
M
S
M_{\mathcal{S}}
MS 的约束个数的倒数。本人理解的约束个数为特征数量,即将
δ
\bm{δ}
δ 进行标准化,防止因特征数过多导致的
δ
\bm{δ}
δ 过大。
m
\bm{m}
m 为
m
x
m_x
mx 的向量,超参数
0
≤
λ
≤
1
0≤λ≤1
0≤λ≤1 控制
S
\mathcal{S}
S 和
T
\mathcal{T}
T 的相对重要性。
如果某个特征很少甚至没有出现在数据集中,那么该特征所对应的能量参数
θ
θ
θ 就会失去限制。所以作者加入限制,即预测出的能量参数
θ
θ
θ 不能超出Turner99能量参数
θ
0
θ_0
θ0 的一定范围,表示为
θ
0
−
B
≤
θ
≤
θ
0
+
B
θ_0 - B ≤ θ ≤ θ_0 + B
θ0−B≤θ≤θ0+B
其中,
B
B
B 为超参数。
上述优化问题的限制数量会随着输入尺寸指数性增加,因为集合
Y
x
Y_x
Yx 的尺寸随着数据集
S
\mathcal{S}
S 的尺寸指数性增加。所以,作者采取迭代的方法,将
M
S
θ
−
δ
<
0
M_{\mathcal{S}}\bm{θ} - \bm{δ} < 0
MSθ−δ<0 改为
(
c
(
x
,
y
x
)
−
c
(
x
,
y
′
)
)
T
θ
(
i
)
−
δ
x
,
y
′
(
i
)
<
0
(c(x, y_x) - c(x, y'))^Tθ^{(i)} - δ_{x, y'}^{(i)} < 0
(c(x,yx)−c(x,y′))Tθ(i)−δx,y′(i)<0
其中,
y
′
y'
y′ 为使用上一轮迭代参数
θ
(
i
−
1
)
θ^{(i-1)}
θ(i−1) 预测的结构。预测方法用的是SimFold和Mfold。
Future Work
当特征覆盖率较小时,ML模型更加稳健。所以作者计划将CG模型和ML模型相结合,用ML估计少量不可靠参数,用CG估计剩余参数。作者还将探讨如何引入替代特征,例如同轴碱基对堆叠和多环未配对片段中的不对称性,来改进 RNA 二级结构预测。