嗨,又跟大家见面了,今天给大家安利一个代谢建模的工具!代谢建模已被应用于了解与代谢相关的疾病机制,预测潜在的新药靶点和抗代谢物,识别复杂疾病的生物标志物。尽管知名的建模工具箱COBRA功能强大,但它需要大量的计算时间来进行通量平衡分析,敲除分析和马尔科夫链蒙特卡罗(MCMC)采样,这对于大规模全基因组分析来说是一种局限性。在这里,研究者开发了一个高效且用户友好的工具箱——FastMM,用于大规模的基于约束的个性化代谢建模,它可以作为对COBRA 3.0中现有功能的补充和改进。 FastMM可从GitHub网站获得:https://github.com/GonghuaLi/FastMM。
FastMM:个性化代谢建模的高效工具箱
FastMM的功能构架
(1)高效的通量可变性分析和敲除分析。FastMM的通量可变性分析和敲除分析的基础代码是用C/C++编写的,包括FBA、FVA等6个核心模块,分别代表通量平衡分析、通量可变性分析(FVA)、全基因组单/双基因敲除分析和全基因组单/双代谢物敲除分析,这6个核心程序都调用GLPK或Gurobi求解器;
(2)高效的MCMC采样。MCMC采样的基础代码也是用C/C++编写的,由于采样过程需要大量的线性代数计算,因此研究者使用了最新的基本线性代数子程序(BLAS)库;
(3)Matlab/octave接口和多线程。开发Matlab接口是为了确保FastMM与COBRA 3.0完全兼容,FastMM中的FVA和敲除分析的多线程是使用Matlab并行计算工具箱开发的,用户可以在每个FastMM Matlab接口中定义CPU的数量;(4)“one-command”协议的开发。为了确保那些对代谢建模了解比较少的用户可以便捷地使用FastMM,研究者开发了一个“one-command”协议,该协议首先利用基因(或蛋白)表达信息,通过Fastcore方法或mCADRE重建组织特异性代谢模型。然后,利用预编译的FastMM核心模块进行FVA和敲除分析。唯一的输入是基因表达矩阵,所有结果都存储在中./out子目录。
FastMM的特点
FastMM支持3个LP求解器(GLPK,Gurobi和Cplex),并且包含核心模块层和Matlab接口层。FastMM的核心模块层是用C/C++编写的,几乎可以在所有平台(Windows、Mac OS和Linux)上编译和运行。FastMM使用很小的内存,可以在不同类型的计算机上运行(如PC、服务器和超级计算机)。Matlab接口层的函数是对输入数据集进行标准化,调用核心模块层的可执行文件,执行多线程并生成输出。总的来说,所有的耗时程序都是用C/C++编写的,这使得FastMM变得高效。相反,其他程序,包括多线程、模型重建、数据集标准化和输入/输出生成,都是用Matlab/Octave封装和编写的,使的FastMM与COBRA 3.0兼容,对用户十分友好。
FastMM的高效性
为了验证FastMM的高效性,研究者应用FastMM和COBRA 3.0来分析一致的通用人类代谢模型Recon 2.03,结果表明,FastMM比COBRA 3.0快2~400倍(见表)。研究者对还将FastMM与FVA和敲除分析的最新应用程序进行了比较,包括Cobrapy,fastFVA,SL-finder和Fast-SL。对于通量可变性分析,FastMM略快于Cobrapy和FastFVA。对于敲除分析,FastMM比包括Cobrapy和Fast-SL要快得多。对于MCMC采样,FastMM比COBRA 3.0快8倍。
基于代谢产物类似物来设计新药是药物设计的热点,代谢产物类似物能竞争性结合酶活性位点,从而抑制相应的反应。FastMM提供了一种有效的方案来寻找候选代谢产物类似物,而其他工具箱则不能。对于FastMM的灵活性,用户不仅可以定义一个或多个目标函数,还可以定义其他约束,例如,用户可以使用singleGeneKO来找出哪个基因敲除会改变分泌代谢物的状态。
FastMM的便捷使用
FastMM可以通过“one-command”模式实现,运行FastMM的唯一要求是参数文件,此文件定义以下信息:①基因表达矩阵文件的路径,②目标函数文件的路径,③基因表达的阈值,④用于执行代谢建模的CPU数量。定义完这些参数后,用户只需在Matlab/Octave中键入一条命令即可:>>FastMM,然后将执行所有代谢建模,包括FVA、基因敲除分析和MCMC模拟,结果将存储在“./out”子目录中。
FastMM的示例和高级用法
由于FastMM非常高效且用户友好,现在可以在大规模疾病研究中进行个性化的全基因组代谢建模。作为例子,将其应用于TCGA中的528例肺癌样本(正常58例,肺癌470例),以分析个体癌症代谢谱。简单来说,这些可以通过以下五个步骤来执行(见图):
(1)模型重建。许多方法可以用来重建组织特异性代谢模型(如MBA和FastCore)。在此使用FastCore,因为它在计算耗时和准确性之间取得了平衡,并使用了FastMM matlab函数“ reconstruction_by_fastcore.m”,获得了528个单独的TCGA肺癌模型。从结果来看,RESM>75的基因数量与Ramskold的结果是一致的,其实现模型重建的命令是:>>rxnsmatrix= reconstruction_by_fastcore(consmodel,expr,75)。其中,Matlab的输入是一致cobra模型(-consistent recon 2)、基因表达矩阵和基因表达阈值,输出的是用二进制格式m × n矩阵构建的模型,m是一致输入cobra模型中的反应数,n是样本数(本例中n= 528)。
(2)全基因组单、双基因敲除分析,以确定单个致死基因和协同致死基因。由于程序“doubleGeneKO”既包含单基因敲除结果,也包含双基因敲除结果,因此可以使用8线程通过以下Matlab接口函数来实现单、双基因敲除分析:>> GeneKOout = FastMM_doubleGeneKO_multi(consmodel, rxnsmatrix, 8)。结果表明,在528例TCGA样本中,GUK1缺失在93%的正常人中是致命的,而在71%的肺癌中不是致命的(注:GUK1是许多癌症化疗药物的靶点)。
(3)大规模FVA以推断癌症特异性分泌代谢物,这有助于理解肿瘤环境、机制和基于环境的药物设计。在FastMM中,可以通过以下命令执行多线程通量可变性分析:
>>[fluxmin,fluxmax] = FastMM_FVA_multi(consmodel,rxnsmatrix,8)。结果表明,肺癌肿瘤中特异性分泌了16种代谢物。
(4)全基因组基因敲除分析,以确定影响癌细胞分泌的基因。在确定了癌症特异性分泌代谢物后,我们需要知道哪些基因会影响这些代谢物的分泌,这个过程可以通过敲除分析来执行,该分析的目标函数由用户自定义。以下是Matlab接口函数:>>Out = FastMM_singleGeneKO_multi(consmodel,
rxnsmatrix,8,-f ‘secret_rxns.txt’),其中“secret_rxns.txt”是用户定义的目标函数文件。结果表明,97个基因只在肿瘤样本中对代谢产物的分泌起重要作用,敲除这些基因,如SLC35D1和UGCG,不会直接影响癌细胞的生长,但会改变癌细胞的微环境。
(5)全基因组单、双代谢物敲除分析,预测致死和协同致死代谢物。确定哪种代谢物对肿瘤生长是必要的且不影响正常细胞,可以提供新的抗癌代谢物靶点。该过程可以通过代谢敲除分析来执行。使用FastMM,只需在Matlab中键入一个命令:>>metout = FastMM_doubleMetKO_multi(model,rxnsmatrix,
8)。结果表明,在93%的对照中,AMP和5-PRPP对具有协同致死作用,而这种作用在肿瘤中只占29%,表明大多数肿瘤样本(71%)中都激活了其他代谢途径。
综上所述,有分析意向(http://gaptechsxr.mikecrm.com/1vdMmqy)生信人WX公众号 FastMM可作为大规模疾病研究中代谢建模的有效工具箱,通过对疾病研究中成百上千的样本进行个性化的代谢建模,能够将基因和代谢物的个性化靶点识别为生物标志物的新候选对象。
文献:FastMM: an efficient toolbox for personalized constraint-based metabolic modeling
网友评论