Constraint generation(CG) approach

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

  1. 基于自由能的RNA二级序列预测模型Turner99,没有有效、快速的参数估计方法(使用大量结构数据和自由能数据训练)。
  2. 数据集中的最小自由能(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=1Kck(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(yx,θ)=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(yx,θ) 为凸函数,可以基于梯度优化概率对数 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(yxx,θ) ,来估计参数 θ \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(yx,θ)LS(θ)τ(x,yx,ex)T(exc(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(exc(x,yx)Tθ)2 ,但高斯分布的指数项有 − 1 2 -\frac{1}{2} 21 ,所以我认为应把 + + + 变为 − - 。直观上来看,当误差越小时概率越大。如理解有误请大佬指正。
这种方法存在两个问题

  1. 算力要求过高
  2. 该模型不能处理缺失(特征不完全)的数据集。

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\} yYx{yx} Y x Y_x Yx 是序列 x x x 的所有可能的二级结构集合。
因为数据集中的 e x e_x ex 可能存在噪声,作者引入了松弛变量 δ x , y ≥ 0 δ_{x, y} ≥ 0 δx,y0 。放松后的约束表示为
Δ 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,y0MSθδ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λ)S1mTδ22+λT1ξ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 θ0Bθθ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)} θ(i1) 预测的结构。预测方法用的是SimFold和Mfold。

Future Work

当特征覆盖率较小时,ML模型更加稳健。所以作者计划将CG模型和ML模型相结合,用ML估计少量不可靠参数,用CG估计剩余参数。作者还将探讨如何引入替代特征,例如同轴碱基对堆叠和多环未配对片段中的不对称性,来改进 RNA 二级结构预测。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CONSTRAINT是数据库中用于定义数据完整性规则的一种机制。它可以用来限制表中某个列的取值范围或者定义表之间的关系。常见的约束类型包括主键约束、外键约束、唯一约束和检查约束。 1. 主键约束(PRIMARY KEY):用于唯一标识表中的每一行数据。主键列的值必须唯一且不能为空。在创建表时,可以通过在列定义后面添加PRIMARY KEY关键字来定义主键约束。 2. 外键约束(FOREIGN KEY):用于定义表之间的关系。外键列的值必须在关联表的主键列中存在,或者为空(如果允许)。在创建表时,可以通过在列定义后面添加FOREIGN KEY关键字来定义外键约束。 3. 唯一约束(UNIQUE):用于确保列中的值是唯一的。唯一约束可以应用于一个或多个列。在创建表时,可以通过在列定义后面添加UNIQUE关键字来定义唯一约束。 4. 检查约束(CHECK):用于限制列中的值必须满足指定的条件。检查约束可以应用于一个或多个列。在创建表时,可以通过在列定义后面添加CHECK关键字来定义检查约束。 下面是一个示例,演示了如何在创建表时定义约束: ```sql CREATE TABLE students ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, age INT CHECK (age >= 18), department_id INT, FOREIGN KEY (department_id) REFERENCES departments(id), UNIQUE (name) ); ``` 以上示例中,students表定义了主键约束(id列)、检查约束(age列必须大于等于18)、外键约束(department_id列参考departments表的id列)和唯一约束(name列的值必须唯一)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值