【转录调控网络】典型的基因转录调控网络推导方法——奇异值分解

【转录调控网络】典型的基因转录调控网络推导方法——奇异值分解基因转录调控网络推导方法 奇异值分解奇异值分解是线性代数中的一种矩阵分解方法 在信号处理和统计学等领域应用广泛 目前 奇异值分解已被广泛应用在大规模基因表达数据分析 例如 Yeung 等利用奇异值分解法在稀疏条件下重建了基因调控网络 实验证明该方法具有较高的准确性 而且具有较低的计算复杂度 为了减少复杂度 这种方法只考虑了稳态情况下的调控关系 并用一个线性微分方程组 方程 1 来表示 dxi t dt ixi t j 1nWijxi t b t i t i 1 2 n frac m

基因转录调控网络推导方法——奇异值分解

奇异值分解是线性代数中的一种矩阵分解方法,在信号处理和统计学等领域应用广泛。目前,奇异值分解已被广泛应用在大规模基因表达数据分析。例如Yeung等利用奇异值分解法在稀疏条件下重建了基因调控网络,实验证明该方法具有较高的准确性,而且具有较低的计算复杂度。

为了减少复杂度,这种方法只考虑了稳态情况下的调控关系,并用一个线性微分方程组(方程1)来表示:
d x i ( t ) d t = − λ i x i ( t ) + ∑ j = 1 n W i j x i ( t ) + b ( t ) + ξ i ( t ) , i = 1 , 2 , . . . n \frac{\mathrm{d} x_i(t)}{\mathrm{d} t} = -\lambda_i x_i(t)+\sum\nolimits_{j=1}^{n}{W_{ij} x_i(t)}+b(t)+\xi _i(t), i=1,2,…n dtdxi(t)=λixi(t)+j=1nWijxi(t)+b(t)+ξi(t),i=1,2,...n
上式中, x i ( t ) ( i = 1 , 2 , . . . , n ) x_i(t)(i=1,2,…,n) xi(t)(i=1,2,...,n)反应了基因 i i i的表达水平; λ i \lambda_i λi是基因 i i i的自我降解率; b ( t ) b(t) b(t)是外部因素; ξ i ( t ) \xi_i(t) ξi(t)是噪声; W i j W_{ij} Wij是调控矩阵元素,表示基因 j j j对基因 i i i的调控类型和调控强度,正数表示激活,负数表示降解,零表示没有调控关系。

在外部刺激条件 ( b 1 , b 2 , . . . , b n ) T (b_1,b_2,…,b_n)^T (b1,b2,...,bn)T干扰下,n个不同基因的表达量分别记为 ( x 1 , x 2 , . . . , x n ) T (x_1,x_2,…,x_n)^T (x1,x2,...,xn)T
X = ( x 1 ( 1 ) x 1 ( 2 ) . . . x 1 ( m ) x 2 ( 1 ) x 2 ( 2 ) . . . x 2 ( m ) . . . . . . . . . . . . x n ( 1 ) x n ( 2 ) . . . x n ( m ) ) X = \begin{pmatrix} x_1(1) &x_1(2) &… &x_1(m) \\ x_2(1) &x_2(2) &… &x_2(m) \\ … &… &… &… \\ x_n(1) &x_n(2) &… &x_n(m) \end{pmatrix} X=x1(1)x2(1)...xn(1)x1(2)x2(2)...xn(2)............x1(m)x2(m)...xn(m)
上式中, x i ( j ) x_i(j) xi(j)表示在第 j j j个样本(干扰)中第 i i i个基因的表达。

通过奇异值分解,我们可以把 X T X^T XT分解为 X T = U E V T X^T=UEV^T XT=UEVT,其中 U U U是一个左特征向量的 m × n m\times n m×n阶酉矩阵, E = d i a g ( e 1 , e 2 , . . . , e n ) E=diag(e_1,e_2,…,e_n) E=diag(e1,e2,...,en)是包含n个特征值的n×n阶主对角线矩阵, V T V^T VT是右特征向量的n×n阶酉矩阵,我们可以得到方程的解(方程4):
J ^ = ( X ˇ − B ) U E − 1 V T \hat{J} = (\check{X}-B ) UE^{-1}V^T J^=(XˇB)UE1VT
式中, E − 1 = d i a g ( 1 / e i ) E^{-1}=diag(1/e_i) E1=diag(1/ei),如果 e i = 0 e_i=0 ei=0,则令 1 / e i = 0 1/e_i=0 1/ei=0。所以可以得到方程的一般相互关系矩阵解 J = [ J i j ] n × n J=[J_{ij}]_{n\times n} J=[Jij]n×n,即(方程5):
J = ( X ˇ − B ) U E − 1 V T + Y V T = J ^ + Y V T J=(\check{X}-B)UE^{-1}V^T+YV^T=\hat{J}+YV^T J=(XˇB)UE1VT+YVT=J^+YVT
式中, Y = [ y i j ] n × n Y=[y_{ij}]_{n\times n} Y=[yij]n×n是一个n×n阶矩阵,若 e i ≠ 0 e_i \ne 0 ei=0,则 y i j = 0 y_{ij}=0 yij=0;若 e i = 0 e_i = 0 ei=0,则 y i j y_{ij} yij为任意常数。每个J代表一个依赖于Y与芯片数据的网络。



由于奇异值分解会导致非唯一解,这就需要一定的约束从所有解之中分离出真正的解。由于真正的基因调控网络通常是稀疏的,就是说每个基因一般只与所有基因中的一小部分基因相互作用,因此稀疏性是合理的约束条件。Yeung等基于此点利用优化方法使J的 L 1 L_1 L1值最小,即(方程6):
min ⁡ Y ∣ J ^ + Y V T ∣ \min_{Y}|\hat{J}+YV^T| YminJ^+YVT

Yeung等在文献中通过多个实验证明,奇异值分解方法推出的基因调控网络具有较高的准确性,但是需要注意的是,这种方法只适合基因调控网络的线性模型。

import numpy as np from sklearn.datasets import load_breast_cancer cancer = load_breast_cancer() data, label = cancer.data, cancer.target U, Sigma, V = np.linalg.svd(data) 

矩阵近似值
奇异值分解在统计中的主要应用为主成分分析(PCA),它是一种数据分析方法,用来找出大量数据中所隐含的“模式”,它可以用在模式识别,数据压缩等方面。PCA算法的作用是把数据集映射到低维空间中去。
数据集的特征值(在SVD中用奇异值表征)按照重要性排列,降维的过程就是舍弃不重要的特征向量的过程,而剩下的特征向量张成空间为降维后的空间

正交矩阵
正交矩阵是实数特殊化的酉矩阵,因此总是正规矩阵。尽管我们在这里只考虑实数矩阵,
这个定义可用于其元素来自任何域的矩阵。正交矩阵毕竟是从内积自然引出的,对于复
数的矩阵这导致了归一要求。注意正交矩阵的定义:n阶‘实矩阵’ A称为正交矩阵,如果:A×A′=E(E为单位矩阵,
A’表示“矩阵A的转置矩阵”。) 若A为正交阵,则下列诸条件是等价的:



  1. A 是正交矩阵
  2. A×A′=E(E为单位矩阵)
  3. A′是正交矩阵
  4. A的各行是单位向量且两两正交
  5. A的各列是单位向量且两两正交
  6. (Ax,Ay)=(x,y) x,y∈R
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233367.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Ubuntu 18 安装rabbitVCS

    Ubuntu 18 安装rabbitVCSsudoadd-apt-repositoryppa:ondrej/phpsudoapt-getinstallphp5.6-opcachesudoapt-getinstallphp5.6-jsonsudoapt-getinstallphp5.6-commonsudoapt-getinstallphp5.6-devsudoapt-getinstallpk…

    2022年7月18日
    15
  • java outputstream用法_Java OutputStream 类

    java outputstream用法_Java OutputStream 类JavaOutputSt 类在本教程中 我们将通过一个示例学习 JavaOutputSt 及其方法 java io 包的 OutputStream 类是一个抽象超类 它表示字节的输出流 因为 OutputStream 是一个抽象类 所以它本身并不有用 但是 它的子类可以用来写数据 OutputStream 的子类为了使用 OutputStream 的功能 我们可以使用其子类 他们之中有一些是 在下

    2025年7月2日
    6
  • php小程序接口开发_php的api调用方法

    php小程序接口开发_php的api调用方法微信小程序调用PHP后台接口,解析纯html文本,效果图片预览1、微信js动态传参:wx.request({url:’https://m.****.com/index.php/Home/Xiaoxxf/activity_detail?a_id=’+options.id,//含富文本htmldata:{is_detail:1},method:’GET’,//OPTIONS,GET,HE…

    2025年12月2日
    5
  • 明德云课堂计算机应用基础,旻德云课堂官网版app「建议收藏」

    明德云课堂计算机应用基础,旻德云课堂官网版app「建议收藏」旻德云课堂app在线快速提供各种云课堂教学软件。该软件使用户可以更好地教云教室。它还提供了各种不同的云端课程,使每个人都可以更好地享受在线云课堂教学,也是最近非常热门的线上云课堂app!软件介绍旻德云课堂app课堂教学的便利性还使老师和同学之间可以更好地进行在线互动,使两方之间的交流变得更加无忧,同时,还可以提高课堂效率,使两方之间的交流更加畅通。简单快捷。旻德云课堂app怎么样?不同的课程都有详…

    2022年6月12日
    86
  • webpack(5)webpack处理css文件[通俗易懂]

    webpack(5)webpack处理css文件[通俗易懂]css文件处理-准备工作(以下项目配置都是基于上一篇webpack(4)的基础上)在项目开发中,我们必然需要添加很多的样式,而样式我们往往写到一个单独的文件中。这里我们就在src目录中创建一个n

    2022年7月29日
    6
  • FPGA与CPLD的概念及其区别[通俗易懂]

    FPGA与CPLD的概念及其区别[通俗易懂]一、FPGA与CPLD的基本概念1.CPLDCPLD主要是由可编程逻辑宏单元(LMC,LogicMacroCell)围绕中心的可编程互连矩阵单元组成,其中LMC逻辑结构较复杂,并具有复杂的I/O单元互连结构,可由用户根据需要生成特定的电路结构,完成一定的功能。由于CPLD内部采用固定长度的金属线进行各逻辑块的互连,所以设计的逻辑电路具有时间可预测性,避免了分段式互连结构时序不完全预测的缺点。到90年代,CPLD发展更为迅速,不仅具有电擦除特性,而且出现了边缘扫描及在线可编程等高级特性…

    2022年6月4日
    68

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号