代謝網路重構中的iMAT方法

2021-09-21 07:19:35 字數 1163 閱讀 9900

imat方法是生物資訊學中用於重構生物代謝網路比較經典的方法之一,其餘還有init,tinit,fastcore等方法,有機會將會一一介紹。 首先附上imat方法兩篇文獻,無論怎麼說還是直接看**更加清晰。

[1]  hadas zur, eytan ruppin, tomer shlomi, imat: an integrative metabolic analysis tool, bioinformatics, volume 26, issue 24, 15 december 2010, pages 3140–3142, 

[2] network-based prediction of human tissue-specific metabolism

imat演算法可以根據蛋白質或基因表達資料,計算判斷網路中的反應的真實狀態(指高低表達)。它的根本思想是首先根據基因表達的強度,計算出每個基因的表達狀態(這裡可以有很多方法,閾值也是可以自己確定),包括1,0,-1,即高表達,正常表達和低表達,利用gpr(基因-蛋白質-反應關係圖),先大致求出乙個理想反應狀態。之後基於人類代謝網路,利用milp(混合整數線性規劃)來求解符合要求的最優反應狀態(和理想狀態差距最小),具體原理如下:

其中目標函式代表使理想狀態下高表達的反應,盡量在實際狀態下高表達,低表達反應同理。(1)代表著流量反應平衡,這是非常常見的約束條件;(2)控制反應的上下限。對於每個反應,都有兩個0-1變數y^+^以及y^-^代表反應是否啟用(活躍),對於r~h~中的反應,當反應流量明顯大於閾值ε或者明顯小於-ε時,我們認為它是啟用的(3)(4)。對於r~l~中的反應y代表其是否是不活躍的(5)。

最終通過求解我們可以知道特異性網路中哪些反應是高表達的,哪些是低表達的。

求解方法也比較巧妙,因為當我們直接對這個milp求解的話,可能會存在乙個解空間,在這個解空間中任意乙個解都可能符合要求,這也導致了不確定性。所以演算法通過兩次milp求解,即對每乙個反應(強制活躍,強制不活躍)求解一次,看網路與理想資料的符合反應的數量x和y,通過比較x和y的大小來決定最終反應的狀態。

在我自己的研究專案中,可以將高表達的反應利用fastcore重構網路,進行進一步的代謝分析(可以理解為簡化網路,即刪除一部分低表達的反應,且保證網路的一致性)。

重構時機和重構方法之間的對應關係

id 需要重構的訊號 對應的重構方法 1出現了重複 提取或者重組類 提取或者重組函式 方法 用多型處理子類重複 2兩個類耦合太多,太親密 提取或者重組類,提取或者重組函式方法 3出現了 行尺寸極其龐大的類 提取或者重組類 4沒有實際作用的懶惰類 提取或者重組類 5體積龐大的方法函式 提取或者重組函式...

Lua 實現元方法的重構

最近剛剛入門lua,在學習table的時候有一些感覺很有用的思考,特此記錄分享首先看幾個概念 表可以說是lua的核心,其他語言的一些高階資料結構可以用table來實現 最基本的陣列就是用table的方式實現的 同樣,矩陣 鍊錶 集合 佇列 包,以及物件導向程式設計等都可以使用table 方法的方式實...

實踐中的重構01 05

目錄 實踐中的重構01 小方法的細調 實踐中的重構02 的視覺效果 實踐中的重構03 批處理方法預設約定 實踐中的重構04 了解每一行 裝箱的布林值 實踐中的重構05 簡潔的 b 實踐中的重構01 小方法的細調 b 重構的概念已經為廣大的程式設計師所熟悉。但是還是有很多細節可以注意。public s...