基因调控网络
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
23
Additive Tree Models
₪ 关于最近的工作,主要集中在换一种新的树型结 构的模型来优化微分方程的结构。 ₪ additive tree model是陈老师在2005年提出的 一种树结构编码的模型结构。使用这种模型表示 微分方程如下图所示:
24
₪ 生成这种模型需要两个操作集和:
5
研究过程
₪ 基于多表达式程序设计(MEP)的一些优点,如线 性的染色体结构、实现简单、一个染色体包含多 个基因等,我们采用MEP优化微分方程的结构, 粒子群优化算法(PSO)优化方程中的系数和常数。 ₪ 例如,我们选取F = {+, -, *},T = {X1,...,Xn ,1}(1 表示常数)。对于含三个未知数的微分方程组
₪ 统计每个方程对应系数的个数和其对应的位置, 把方程组的系数组合成一个粒子,通过粒子群优 化算法(PSO),得到好的系数。
1: x1 2: x3 3: + 1,1 4: * 1,3 5: 1 6: - 2,5 P1 P3 P2
7
P4
P5
流程图
初始化种群 评价个体适应值 否
代数是否达到要求
是否达到要求 保留好的个体 交叉,变异
29
₪
结束
30
3
研究现状
₪ 当前对于基因调控网络研究的方法一般包括以下两个步 骤: 1. 模型选择 线性模型、布尔模型、贝叶斯网络模型、微分方程模 型、随机方程模型等 2. 模型构建或优化的算法 梯度下降法、支持向量机、贪心算法、遗传算法、遗 传编程等 近年来,微分方程模型逐渐成为系统生物学领域中的热 点。微分方程模型是以其它基因表达水平和外部环境的 因素组成的函数来描述基因表达的变化,可以充分模拟 基因调控网络的动态行为。相比较其他模型,微分方程 模型非常强大灵活,利于研究基因网络中的复杂关系。
₪ 其中:Xi为状态变量,数gij和 hij通常称为动力学 序数,表示基因i对基因j的影响作用。参数αi和βi 分别被称速率常数。
18
₪ (1) 小规模基因调控网络
₪ 上图为一基因调控网络的例子。这个网络可以通 过S-system系统模拟,通过实验得到的时间序 列求解基因调控网络,已广泛应用于生物信息学 在领域中。
基因调控网络
杨斌
2007 济南
1
背景
₪ 基因表达(gene expression)是指细胞在生命过程中, 把储存在DNA顺序中遗传信息经过转录和翻译,转 变成具有生物活性的蛋白质分子。生物体内的各种 功能蛋白质和酶都是同相应的结构基因编码的。 ₪ 一个基因的表达受其他基因的影响,而这个基因又 影响其他基因的表达,这种相互影响相互制约的关 系构成了复杂的基因表达调控网络。更一般些,几 乎所有的细胞活动都被基因网络所控制。对系统科 学的研究促使生物学家以系统的观点认识高度复杂 的生命现象。生命是存储并加工信息的复杂系统, 从而,孤立地研究单个基因及其表达往往不能确切 地反映生命现象本身的内在规律。因此,科学家们 开始从复杂系统的角度研究基因网络。
9
解微分方程
₪ 一般采用四阶定步长Runge-Kutta算法计算解常 微分方程。该算法结构简单。求解方法如下: ₪ 首先定义四个附加变量: k1 = f(x(t),t) k2 = f(x(t)+hk1/2,t+h/2) k3 = f(x(t)+hk2/2,t+h/2) k4 = f(x(t)+hk3,t+h/2) 其中:h为计算步长,在实际应用中该步长是一 个常数,这样由四阶Runge-Kutta算法可以由当 前状态变量x(t)的值求解出下个状态变量x(t +1) 的值 x(t +1) = x(t) + h(k1 /6 + k2 /3 + k3 /3 + k4 /6)
14
₪ (2) an oscillator model
X1'(t) = k1*X2(t) X2'(t) = -k2*X1(t) + k3*X2(t) – k4*X2(t)*X3(t) X3'(t) = k5*X1(t)2 - k6*X3(t) The following parameter values are used: k=[0.9, 0.9, 1.0, 0.6, 0.6, 0.8].
28
₪ 2,系数的优化问题。 ₪ 在微分方程的演化过程中,对于那种系数差别比 较大的形式,效果不是很好。比如: ₪ X' = 20X1X2+0.5X1X3+X2X3 ₪ 可能由于0.5的缘故,有可能X1X3这项就会丢失。 ₪ 可以考虑采用非进化计算的方法求解放程中的系 数。 ₪ 3,不同的初始条件,对于结果有一定的影响。
6
₪ 可表示一组染色体形式(E1,E6,E6):
dx1/dt 1: x1 2: x2 3: + 1,1 4: * 1,3 5: +1,2 6: - 2,5 dx2/dt 1: x1 2: x2 3: + 1,2 4: - 1,3 5: x3 6: + 3,5 dx3/dt 1: x1 2: x2 3: + 1,2 4: - 1,2 5: x3 6: + 3,5
21
₪ (2) 中规模基因调控网络
₪ 所需的参数如下:
22
₪ 我们选取函数集和终点集为: ₪ F = {+, ×,ax} ₪ T = { X1 , X2 , X3 ,X4 , X5 , X6 , X7 , X8 , X9 , X10 , X11 , X12 , X13 ,X14 , X15 } 得到的结果,除第11个基因外,都和原模型一样。 我们得到的第11方程为 X11'(t) = X7-0.199999X110.018851-X11 由于原方程为X11'(t) = X7-0.2X40.4-X11 所以,X4 X11没检测出来。
26
₪ 对于这种有点复杂的方程,MEP表现的不是很 好,总是少几项。
27
出现的问题
₪ 1,由于采用分裂思想,近似的解微分方程,会导致一定 的误差,有可能遇到一些数据,使得这种误差被放大, 导致得到不正确的结果。 ₪ 225 231 482 631 662 89 179 471 646 ₪ 300 173 304 188 325 65 200 255 421 ₪ 421 92 85 224 202 75 269 491 548 ₪ 418 109 101 457 315 98 211 619 797 ₪ 357 117 116 417 374 110 237 636 887 ₪ 424 91 100 406 420 111 197 655 713 ₪ 上述数据是酵母蛋白质合成对应的基因表达数据,取了 其中的9个基因,6个数据采样点。 ₪ 采用线性插值的方法效果并不好,采用何种插值,并且 这是原始数据,对这种数据进行何种预处理,是个问题。
2
₪ 基因调控网络本质上是一个连续而复杂的动态系 统,即复杂的动力系统网络。建模时为了简化求 解的需要,往往对其进行简化。基因调控网络有 许多特性,如复杂性(即基因网络包含着不同层 次的错综复杂的物质、关系和功能结构,基因的 复杂性还体现在基因的组合性质方面)、稳定性 (基因网络系统能够通过自动调节达到稳定)、可 进化性和有限连通性等。
16
₪ 优化结果:
17
基因调控网络模拟实例
₪ 基因调控网络是一个非常复杂的非线性系统,因 此,对数学模型的选择也提出了较高的要求。目 前研究比较广泛的一种动态连续建模方法是S系 统。S系统以一组特殊的幂律常微分方程作为建 模模型形式。这种结构在捕捉系统许多相关动态 性能方面具有丰富的表达描述力,特别是分子生 物机制中的各个组件间的非线性作用。 ₪ S-system系统的具体形式如下
4
₪ 例如, dt f ( x , x ,..., x )(i 1, 2,..., n) ,其中xi表示第i个基因的表达水 平,n表示基因调控网络中的基因数。所以主要的工作就 是对于右端任意的微分方程系统的演化。
i 1 2 n
dxi (t )
₪ 关于这方面的研究主要集中在两个方面: (1). 微分方程结构的优化; (2). 微分方程系数和常数的优化。 研究表明:微分方程演化的越准确,得到的生物网络模 型越精确,越接近目标网络模型 。
15
₪ 结果
X1'(t) = 0.900001X2(t) X2'(t) = -0.8999X1(t) + 0.9992X2(t) – 0.5998X2(t)X3(t)
X3'(t) = 0.6000X1(t)2 – 0.799943X3(t)
₪ (3). Bimolecular Reaction
对应于S=X1, E=X2 , C=X3 , P=X4,四类对应的微分方 程如下(k1 = 2,k2 = 1.2):
10
₪ 对于包含n个方程的方程组, k1 k2 k3 k4 x(t) 为n 维向量,函数组f = {f1, f2, …, fn}。 ₪ 由于采用分裂思想,每个方程单独优化。假设优 化第一个微分方程(下图为优化方程的训练数 据),
11
₪ 生成的种群只代表第一个微分方程,即函数组中只有f1 已知,只能计算出k1 k2 k3 k4 中的第一个元素的值,其他 元素的值未知。利用训练数据,在根据当前状态变量x(t) 的值求解出下个状态变量x(t +1)的值时, k1 k4 中的其他 元素可以分别取x(t), x(t +1)相应的值,但k2 k3的确定出 现了问题。 ₪ 对于这种情况,我们采用一种近似的处理方法。即在根 据当前状态变量x(t)的值求解出下个状态变量x(t +1)的值 时, k2 k3 向量中的其他元素一律采用xi = [x(t +1)+ x(t)]/2。由于采用这中近似四阶定步长Runge-Kutta算法, 不可避免有些误差,通过实验,用这种方法,在大幅度 提高减少搜索空间的同时,又对效果影响不大。 ₪ 但在研究过程中,发现如果采用线性插值的方法确定 k2 k3 向量中的其他元素,误差会小一些。即在确定k2中的
₪ 参数的优化,仍然采用PSO,参数的个数很容易 得到,即n个(如果选择+n)。
25
₪ 对于这种模型,使用前面的例子做了测试,相比 MEP,可以较快的得到好的结果,并且所需要 的种群数量也很少。 ₪ 下面的例子是相比较MEP效果很差的,但这种 模型表现的较好的。 ₪ Three-species Lotka-Volterra model
13
模拟实例
₪ 我们使用以下实例来测试程序的有效性。这些实 例使用的都是模拟数据,即从已知的方程模型中 采集数据,然后利用这些数据来优化出方程模型, 和已知的模型比较,来判断方法的有效性。 ₪ (1) Lotka_Volterra model
X 1 3 X 1 2 X 1 X 2 X 12 X 2 2 X 2 X 1X 2 X 22
19
₪ 基因网络所需的参数在下列表中
₪ 我们调整函数集和终点集如下: ₪ F = {+, ×} ₪ T = {X1, X1-1, X2, X2-1, X3, X3-1, X4, X4-1, X5, X5-1} ₪ 初始条件为
20
₪ 试验所得到的方程如下
₪ 从结果可以看出,无论是结构还是参数,都和期 望模型都近乎一样。
12
₪ 元素时使用xi = x(t)+ [x(t +1)- x(t)]/3;确定k3中 的元素时使用xi = x(t)+ 2*[x(t +1)- x(t)]/3。 ₪ 使用这种分裂思想,每个方程的优化过程是平行 进行的,所以采用并行计算的方式,n个方程的 进化时间可以缩小为一个方程的优化时间,方程 越大,效果越明显,特别对于大规模基因调控网 络的识别。
是
是
否
选择一定数量的 个体参数优化
结束
8
分裂
₪ 采用分裂思想,可以大量的减少方程组得搜索空 间。假设一个微分方程组的方程最大表达式长度 为c,则假如有一个变量,则搜索空间为1c,若 有两个变量,则搜索空间为2c× 2c=22c。对于n个 变量的微分方程组,则搜索空间为nnc。若采用 分裂法,即每个微分方程分别优化,则搜索空间 变为nc+源自文库,明显变小。 ₪ 单独优化每一个微分方程,在结构和系数编码、 优化上都与前面一样。只是在求每个染色体适应 值时,解微分方程需要做一下改动。
Additive Tree Models
₪ 关于最近的工作,主要集中在换一种新的树型结 构的模型来优化微分方程的结构。 ₪ additive tree model是陈老师在2005年提出的 一种树结构编码的模型结构。使用这种模型表示 微分方程如下图所示:
24
₪ 生成这种模型需要两个操作集和:
5
研究过程
₪ 基于多表达式程序设计(MEP)的一些优点,如线 性的染色体结构、实现简单、一个染色体包含多 个基因等,我们采用MEP优化微分方程的结构, 粒子群优化算法(PSO)优化方程中的系数和常数。 ₪ 例如,我们选取F = {+, -, *},T = {X1,...,Xn ,1}(1 表示常数)。对于含三个未知数的微分方程组
₪ 统计每个方程对应系数的个数和其对应的位置, 把方程组的系数组合成一个粒子,通过粒子群优 化算法(PSO),得到好的系数。
1: x1 2: x3 3: + 1,1 4: * 1,3 5: 1 6: - 2,5 P1 P3 P2
7
P4
P5
流程图
初始化种群 评价个体适应值 否
代数是否达到要求
是否达到要求 保留好的个体 交叉,变异
29
₪
结束
30
3
研究现状
₪ 当前对于基因调控网络研究的方法一般包括以下两个步 骤: 1. 模型选择 线性模型、布尔模型、贝叶斯网络模型、微分方程模 型、随机方程模型等 2. 模型构建或优化的算法 梯度下降法、支持向量机、贪心算法、遗传算法、遗 传编程等 近年来,微分方程模型逐渐成为系统生物学领域中的热 点。微分方程模型是以其它基因表达水平和外部环境的 因素组成的函数来描述基因表达的变化,可以充分模拟 基因调控网络的动态行为。相比较其他模型,微分方程 模型非常强大灵活,利于研究基因网络中的复杂关系。
₪ 其中:Xi为状态变量,数gij和 hij通常称为动力学 序数,表示基因i对基因j的影响作用。参数αi和βi 分别被称速率常数。
18
₪ (1) 小规模基因调控网络
₪ 上图为一基因调控网络的例子。这个网络可以通 过S-system系统模拟,通过实验得到的时间序 列求解基因调控网络,已广泛应用于生物信息学 在领域中。
基因调控网络
杨斌
2007 济南
1
背景
₪ 基因表达(gene expression)是指细胞在生命过程中, 把储存在DNA顺序中遗传信息经过转录和翻译,转 变成具有生物活性的蛋白质分子。生物体内的各种 功能蛋白质和酶都是同相应的结构基因编码的。 ₪ 一个基因的表达受其他基因的影响,而这个基因又 影响其他基因的表达,这种相互影响相互制约的关 系构成了复杂的基因表达调控网络。更一般些,几 乎所有的细胞活动都被基因网络所控制。对系统科 学的研究促使生物学家以系统的观点认识高度复杂 的生命现象。生命是存储并加工信息的复杂系统, 从而,孤立地研究单个基因及其表达往往不能确切 地反映生命现象本身的内在规律。因此,科学家们 开始从复杂系统的角度研究基因网络。
9
解微分方程
₪ 一般采用四阶定步长Runge-Kutta算法计算解常 微分方程。该算法结构简单。求解方法如下: ₪ 首先定义四个附加变量: k1 = f(x(t),t) k2 = f(x(t)+hk1/2,t+h/2) k3 = f(x(t)+hk2/2,t+h/2) k4 = f(x(t)+hk3,t+h/2) 其中:h为计算步长,在实际应用中该步长是一 个常数,这样由四阶Runge-Kutta算法可以由当 前状态变量x(t)的值求解出下个状态变量x(t +1) 的值 x(t +1) = x(t) + h(k1 /6 + k2 /3 + k3 /3 + k4 /6)
14
₪ (2) an oscillator model
X1'(t) = k1*X2(t) X2'(t) = -k2*X1(t) + k3*X2(t) – k4*X2(t)*X3(t) X3'(t) = k5*X1(t)2 - k6*X3(t) The following parameter values are used: k=[0.9, 0.9, 1.0, 0.6, 0.6, 0.8].
28
₪ 2,系数的优化问题。 ₪ 在微分方程的演化过程中,对于那种系数差别比 较大的形式,效果不是很好。比如: ₪ X' = 20X1X2+0.5X1X3+X2X3 ₪ 可能由于0.5的缘故,有可能X1X3这项就会丢失。 ₪ 可以考虑采用非进化计算的方法求解放程中的系 数。 ₪ 3,不同的初始条件,对于结果有一定的影响。
6
₪ 可表示一组染色体形式(E1,E6,E6):
dx1/dt 1: x1 2: x2 3: + 1,1 4: * 1,3 5: +1,2 6: - 2,5 dx2/dt 1: x1 2: x2 3: + 1,2 4: - 1,3 5: x3 6: + 3,5 dx3/dt 1: x1 2: x2 3: + 1,2 4: - 1,2 5: x3 6: + 3,5
21
₪ (2) 中规模基因调控网络
₪ 所需的参数如下:
22
₪ 我们选取函数集和终点集为: ₪ F = {+, ×,ax} ₪ T = { X1 , X2 , X3 ,X4 , X5 , X6 , X7 , X8 , X9 , X10 , X11 , X12 , X13 ,X14 , X15 } 得到的结果,除第11个基因外,都和原模型一样。 我们得到的第11方程为 X11'(t) = X7-0.199999X110.018851-X11 由于原方程为X11'(t) = X7-0.2X40.4-X11 所以,X4 X11没检测出来。
26
₪ 对于这种有点复杂的方程,MEP表现的不是很 好,总是少几项。
27
出现的问题
₪ 1,由于采用分裂思想,近似的解微分方程,会导致一定 的误差,有可能遇到一些数据,使得这种误差被放大, 导致得到不正确的结果。 ₪ 225 231 482 631 662 89 179 471 646 ₪ 300 173 304 188 325 65 200 255 421 ₪ 421 92 85 224 202 75 269 491 548 ₪ 418 109 101 457 315 98 211 619 797 ₪ 357 117 116 417 374 110 237 636 887 ₪ 424 91 100 406 420 111 197 655 713 ₪ 上述数据是酵母蛋白质合成对应的基因表达数据,取了 其中的9个基因,6个数据采样点。 ₪ 采用线性插值的方法效果并不好,采用何种插值,并且 这是原始数据,对这种数据进行何种预处理,是个问题。
2
₪ 基因调控网络本质上是一个连续而复杂的动态系 统,即复杂的动力系统网络。建模时为了简化求 解的需要,往往对其进行简化。基因调控网络有 许多特性,如复杂性(即基因网络包含着不同层 次的错综复杂的物质、关系和功能结构,基因的 复杂性还体现在基因的组合性质方面)、稳定性 (基因网络系统能够通过自动调节达到稳定)、可 进化性和有限连通性等。
16
₪ 优化结果:
17
基因调控网络模拟实例
₪ 基因调控网络是一个非常复杂的非线性系统,因 此,对数学模型的选择也提出了较高的要求。目 前研究比较广泛的一种动态连续建模方法是S系 统。S系统以一组特殊的幂律常微分方程作为建 模模型形式。这种结构在捕捉系统许多相关动态 性能方面具有丰富的表达描述力,特别是分子生 物机制中的各个组件间的非线性作用。 ₪ S-system系统的具体形式如下
4
₪ 例如, dt f ( x , x ,..., x )(i 1, 2,..., n) ,其中xi表示第i个基因的表达水 平,n表示基因调控网络中的基因数。所以主要的工作就 是对于右端任意的微分方程系统的演化。
i 1 2 n
dxi (t )
₪ 关于这方面的研究主要集中在两个方面: (1). 微分方程结构的优化; (2). 微分方程系数和常数的优化。 研究表明:微分方程演化的越准确,得到的生物网络模 型越精确,越接近目标网络模型 。
15
₪ 结果
X1'(t) = 0.900001X2(t) X2'(t) = -0.8999X1(t) + 0.9992X2(t) – 0.5998X2(t)X3(t)
X3'(t) = 0.6000X1(t)2 – 0.799943X3(t)
₪ (3). Bimolecular Reaction
对应于S=X1, E=X2 , C=X3 , P=X4,四类对应的微分方 程如下(k1 = 2,k2 = 1.2):
10
₪ 对于包含n个方程的方程组, k1 k2 k3 k4 x(t) 为n 维向量,函数组f = {f1, f2, …, fn}。 ₪ 由于采用分裂思想,每个方程单独优化。假设优 化第一个微分方程(下图为优化方程的训练数 据),
11
₪ 生成的种群只代表第一个微分方程,即函数组中只有f1 已知,只能计算出k1 k2 k3 k4 中的第一个元素的值,其他 元素的值未知。利用训练数据,在根据当前状态变量x(t) 的值求解出下个状态变量x(t +1)的值时, k1 k4 中的其他 元素可以分别取x(t), x(t +1)相应的值,但k2 k3的确定出 现了问题。 ₪ 对于这种情况,我们采用一种近似的处理方法。即在根 据当前状态变量x(t)的值求解出下个状态变量x(t +1)的值 时, k2 k3 向量中的其他元素一律采用xi = [x(t +1)+ x(t)]/2。由于采用这中近似四阶定步长Runge-Kutta算法, 不可避免有些误差,通过实验,用这种方法,在大幅度 提高减少搜索空间的同时,又对效果影响不大。 ₪ 但在研究过程中,发现如果采用线性插值的方法确定 k2 k3 向量中的其他元素,误差会小一些。即在确定k2中的
₪ 参数的优化,仍然采用PSO,参数的个数很容易 得到,即n个(如果选择+n)。
25
₪ 对于这种模型,使用前面的例子做了测试,相比 MEP,可以较快的得到好的结果,并且所需要 的种群数量也很少。 ₪ 下面的例子是相比较MEP效果很差的,但这种 模型表现的较好的。 ₪ Three-species Lotka-Volterra model
13
模拟实例
₪ 我们使用以下实例来测试程序的有效性。这些实 例使用的都是模拟数据,即从已知的方程模型中 采集数据,然后利用这些数据来优化出方程模型, 和已知的模型比较,来判断方法的有效性。 ₪ (1) Lotka_Volterra model
X 1 3 X 1 2 X 1 X 2 X 12 X 2 2 X 2 X 1X 2 X 22
19
₪ 基因网络所需的参数在下列表中
₪ 我们调整函数集和终点集如下: ₪ F = {+, ×} ₪ T = {X1, X1-1, X2, X2-1, X3, X3-1, X4, X4-1, X5, X5-1} ₪ 初始条件为
20
₪ 试验所得到的方程如下
₪ 从结果可以看出,无论是结构还是参数,都和期 望模型都近乎一样。
12
₪ 元素时使用xi = x(t)+ [x(t +1)- x(t)]/3;确定k3中 的元素时使用xi = x(t)+ 2*[x(t +1)- x(t)]/3。 ₪ 使用这种分裂思想,每个方程的优化过程是平行 进行的,所以采用并行计算的方式,n个方程的 进化时间可以缩小为一个方程的优化时间,方程 越大,效果越明显,特别对于大规模基因调控网 络的识别。
是
是
否
选择一定数量的 个体参数优化
结束
8
分裂
₪ 采用分裂思想,可以大量的减少方程组得搜索空 间。假设一个微分方程组的方程最大表达式长度 为c,则假如有一个变量,则搜索空间为1c,若 有两个变量,则搜索空间为2c× 2c=22c。对于n个 变量的微分方程组,则搜索空间为nnc。若采用 分裂法,即每个微分方程分别优化,则搜索空间 变为nc+源自文库,明显变小。 ₪ 单独优化每一个微分方程,在结构和系数编码、 优化上都与前面一样。只是在求每个染色体适应 值时,解微分方程需要做一下改动。