本發(fā)明涉及系統(tǒng)生物學(xué)研究技術(shù)領(lǐng)域,尤其涉及一種基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法。
背景技術(shù):
隨著生物芯片技術(shù)的產(chǎn)生和生物信息學(xué)的發(fā)展,通過基因組序列分析,大量未知功能的基因被識(shí)別出來。如何系統(tǒng)科學(xué)的“賦予”這些基因的功能是后基因組時(shí)代科學(xué)家們需解決的難題,然而大規(guī)模酵母菌基因表達(dá)數(shù)據(jù)的產(chǎn)生,為這一問題的解決帶來了新的突破口。
另外,在生物體中,基因往往是通過與其他基因一起共同參與完成一個(gè)功能。這些基因往往具有相似的表達(dá)譜,因此如何根據(jù)這些基因表達(dá)的譜數(shù)據(jù)從而挖掘出這些共表達(dá)的基因團(tuán),在生物學(xué)中有很重要的研究?jī)r(jià)值(比如可以預(yù)測(cè)一個(gè)基因的未知功能或者推斷一個(gè)未知基因的功能),但是由于高通量技術(shù)本身具有高噪聲的影響以及生物系統(tǒng)本身的復(fù)雜性,人們得到的基因芯片數(shù)據(jù)轉(zhuǎn)化的生物網(wǎng)絡(luò)中,含有大量無關(guān)的“噪聲”,正是因?yàn)檫@些“噪聲”的存在,才使得科學(xué)家們尋找共表達(dá)的基因團(tuán)變得很困難。如果能夠把這些大量無關(guān)的“噪聲”逐步的給剔除掉,那么尋找保守的共表達(dá)基因團(tuán)的問題也就變得簡(jiǎn)單起來。
在現(xiàn)有技術(shù)中,基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法有以下幾種:(1)基于廣度優(yōu)先算法:利用類Apriori性質(zhì)枚舉重復(fù)出現(xiàn)的子圖,主要代表有AGM和FSG。AGM在圖集中搜索所有“誘導(dǎo)”子圖。圖G的誘導(dǎo)子圖G′的節(jié)點(diǎn)為G′的邊為V(G′)中節(jié)點(diǎn)在圖G中的所有邊。FSG則利用邊增長(zhǎng)的方式查找所有圖集中的頻繁連通子圖;(2)基于深度優(yōu)先算法:主要代表有g(shù)Span,CloseSpan和FFSM等,其基本思想是通過逐步擴(kuò)展頻繁邊得到頻繁子圖,各種算法的主要區(qū)別在于圖的擴(kuò)展過程;(3)基于摘要圖的啟發(fā)式方法,主要代表有CODENSE,NeMo等,其主要思想是首先將綜合網(wǎng)絡(luò)集中每個(gè)網(wǎng)絡(luò)的信息,然后將其并轉(zhuǎn)化為單圖中的頻繁模式挖掘,最后在返回到原網(wǎng)絡(luò)集。
但是發(fā)明人發(fā)現(xiàn),上述幾種預(yù)測(cè)方法均存在不足之處,其不足之處在于:(1)在第一種預(yù)測(cè)方法中,計(jì)算復(fù)雜度很高;(2)在第二種預(yù)測(cè)方法中,計(jì)算復(fù)雜度很高;(3)在第三種方法中,摘要圖的質(zhì)量直接決定算法的復(fù)雜度,而且模式重疊現(xiàn)象進(jìn)一步增加了問題的復(fù)雜度;此外,為了避免譜分解方法的規(guī)模局限(約2000個(gè)節(jié)點(diǎn)),該方法只能對(duì)摘要圖進(jìn)行分塊處理,這就導(dǎo)致分塊的合理性問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例的目的在于提供一種基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法,能夠降低計(jì)算復(fù)雜度,提高頻繁模式挖掘的準(zhǔn)確性、效率以及解決模式重疊問題。
為了解決上述技術(shù)問題,本發(fā)明實(shí)施例提供了基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法,所述預(yù)測(cè)方法包括:
第一步、尋找頻繁稠密點(diǎn)集無貢獻(xiàn)的不相關(guān)的邊:
步驟S11、獲取多個(gè)酵母菌基因表達(dá)數(shù)據(jù)轉(zhuǎn)換成生物網(wǎng)絡(luò)后形成的初始圖集D={Gi=(V,Ei)}(1≤i≤m),并確定最小稠密度閾值δ、最小頻繁支持度閾值k和用戶自定義參數(shù)f,p,q分別對(duì)應(yīng)的數(shù)值;其中,所述初始圖集由多個(gè)均具有相同點(diǎn)集的子圖Gi形成,且不同子圖Gi之間至少存在一條相異的邊;
步驟S12:確定每一個(gè)子圖Gi的每條邊,在所述初始圖集中出現(xiàn)的次數(shù)均大于最小頻繁支持度閾值k和圖集大小m的乘積的最小正整數(shù)值;
步驟S13、刪除所述初始圖集中每一個(gè)子圖Gi中均滿足稠密度系數(shù)EDe<δ/f的邊;
步驟S14、構(gòu)建出與所述初始圖集中每一個(gè)子圖Gi具有相同點(diǎn)集的摘要圖,且所述初始圖集對(duì)應(yīng)的摘要圖中每條邊均需滿足稠密度系數(shù)
步驟S15、對(duì)所述初始圖集對(duì)應(yīng)的摘要圖中每條邊均做邊聚類系數(shù),刪除所述初始圖集對(duì)應(yīng)的摘要圖中邊聚類系數(shù)ECe<q的邊并更新;
步驟S16、將所述更新后的初始圖集對(duì)應(yīng)的摘要圖與所述每一個(gè)子圖Gi的邊進(jìn)行一一對(duì)比,刪除每一個(gè)子圖Gi中不存在于所述更新后的初始圖集對(duì)應(yīng)的摘要圖中的邊并更新;
步驟S17、重復(fù)步驟S13至步驟S16,直到所述更新后的初始圖集對(duì)應(yīng)的摘要圖中的邊不在發(fā)生變化為止;
第二步、確定候選網(wǎng)絡(luò)子集:
步驟S21、給所述邊不在發(fā)生變化的摘要圖中每條邊的邊向量均賦予一個(gè)權(quán)值,并確定所述賦值的每條邊對(duì)應(yīng)邊支持向量的漢明值,且進(jìn)一步將漢明值滿足篩選條件的邊向量并到集合A中,將漢明值不滿足篩選條件的邊向量并到集合B中;
步驟S22、分別對(duì)所述集合A和所述集合B中的邊向量進(jìn)行歸并,把重復(fù)的邊向量刪除,僅保留一個(gè)并更新邊向量對(duì)應(yīng)的權(quán)值;
步驟S23、設(shè)置種子向量,并根據(jù)所述設(shè)置的種子向量,調(diào)整集合A和集合B中的邊向量;其中,所述種子向量為權(quán)重最大的邊;
步驟S24、按照最大邊向量相似度的準(zhǔn)則,把所述調(diào)整后的集合B中的邊向量均映射到所述調(diào)整后的集合A中,并待映射結(jié)束后,將所述完成映射后的集合A中的邊向量進(jìn)行聚類運(yùn)算,形成聚類中心集合;
步驟S25:刪除聚類中心集合中,1的個(gè)數(shù)出現(xiàn)的頻率小于k與圖集大小乘積的下取整數(shù)的聚類中心;
第三步、獲取摘要圖集:
步驟S31、根據(jù)所述形成的聚類中心集合,在所述初始圖集D={Gi=(V,Ei)}(1≤i≤m)中,提取分別與所述聚類中心集合中每一向量相一致的子圖,形成多個(gè)新圖集;
步驟S32、根據(jù)所述確定的最小稠密度閾值δ、最小頻繁支持度閾值k和用戶自定義參數(shù)f,p,q分別對(duì)應(yīng)的數(shù)值,刪除所述每一新圖集中均滿足稠密度系數(shù)EDe<δ/f的邊;
步驟S33、分別構(gòu)建出與所述每一新圖集中具有相同點(diǎn)集的摘要圖,且所述每一新圖集的摘要圖中每條邊均需滿足稠密度系數(shù)
步驟S34、對(duì)所述每一新圖集的摘要圖中每條邊均做邊聚類系數(shù),刪除所述每一新圖集的摘要圖中邊聚類系數(shù)ECe<q的邊并更新;
步驟S35、將所述更新后的每一新圖集的摘要圖分別與對(duì)應(yīng)的新圖集的邊進(jìn)行一一對(duì)比,刪除每一新圖集中不存在于其相對(duì)應(yīng)的摘要圖中的邊并更新;
步驟S36、重復(fù)步驟S32至步驟S35,直到所述更新后的每一新圖集的摘要圖中的邊不在發(fā)生變化為止,得到摘要圖集;
第四步、查找稠密子圖,并確定頻繁稠密點(diǎn)集:
步驟S41、在所述得到的摘要圖集中,根據(jù)所述更新后的初始圖集對(duì)應(yīng)的摘要圖,查找與所述更新后的初始圖集對(duì)應(yīng)的摘要圖中邊集相一致的稠密子圖,并根據(jù)所述查找到的稠密子圖,確定頻繁稠密點(diǎn)集,且進(jìn)一步將所述確定的頻繁稠密點(diǎn)集進(jìn)行歸并后,作為酵母菌基因共表達(dá)的基因團(tuán)輸出。
其中,所述用戶自定義參數(shù)f取值范圍為[4,10];參數(shù)p取值范圍為[0.1,0.2];參數(shù)q取值為0.334。
實(shí)施本發(fā)明實(shí)施例,具有如下有益效果:
本發(fā)明實(shí)施例,首先對(duì)初始圖集做粗過濾,刪除對(duì)于尋找頻繁稠密點(diǎn)集無貢獻(xiàn)的不相關(guān)的邊得到摘要圖,接著在摘要圖的基礎(chǔ)上尋找可能的候選網(wǎng)絡(luò)子集,然后回到初始圖集中分別提取出候選網(wǎng)絡(luò)子集,并對(duì)提取的圖集再一次做粗過濾以便得到摘要圖集,最后分別對(duì)摘要圖進(jìn)行稠密子圖查找,得到頻繁稠密點(diǎn)集作為共表達(dá)的基因團(tuán),從而能夠降低計(jì)算復(fù)雜度,提高頻繁模式挖掘的準(zhǔn)確性、效率以及解決模式重疊問題。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,根據(jù)這些附圖獲得其他的附圖仍屬于本發(fā)明的范疇。
圖1為本發(fā)明實(shí)施例提供的基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法的工作原理框圖;
圖2為本發(fā)明實(shí)施例提供的基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法中第一步尋找頻繁稠密點(diǎn)集無貢獻(xiàn)的不相關(guān)的邊的應(yīng)用場(chǎng)景圖;
圖3為本發(fā)明實(shí)施例提供的基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法中第二步確定候選網(wǎng)絡(luò)子集的應(yīng)用場(chǎng)景圖;
圖4為本發(fā)明實(shí)施例提供的基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法中20張酵母菌共表達(dá)網(wǎng)絡(luò)運(yùn)行FILTER算法前后邊的分布應(yīng)用場(chǎng)景圖;
圖5為本發(fā)明實(shí)施例提供的基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法中稠密度取0.6得到頻繁稠密點(diǎn)集的應(yīng)用場(chǎng)景圖;
圖6為本發(fā)明實(shí)施例提供的基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法中稠密度取0.7得到頻繁稠密點(diǎn)集的應(yīng)用場(chǎng)景圖;
圖7為本發(fā)明實(shí)施例提供的基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法中稠密度取0.8得到頻繁稠密點(diǎn)集的應(yīng)用場(chǎng)景圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明是基于CODENSE、NeMo算法的基礎(chǔ)上,采用了摘要圖-候選網(wǎng)絡(luò)子集逐步迭代求精的策略來尋找多數(shù)據(jù)集中保守的共表達(dá)團(tuán)。因此為了便于描述,統(tǒng)一把尋找多數(shù)據(jù)集中保守共表達(dá)團(tuán)的問題轉(zhuǎn)化為圖論中的從多個(gè)圖集中尋找頻繁稠密點(diǎn)集的問題。采用這種方式后,噪聲邊是指這條邊所代表的兩個(gè)基因的之間的關(guān)系對(duì)于尋找共表達(dá)的基因團(tuán)有干擾的邊,噪聲邊當(dāng)然也包括那些由于實(shí)驗(yàn)數(shù)據(jù)本身產(chǎn)生的基因之間真陽性或假陽性的邊。
發(fā)明人發(fā)現(xiàn),問題解決的關(guān)鍵,是如何找出這些無關(guān)的噪聲邊并把它們給剔除。直觀上來說,對(duì)于噪聲邊,有以下幾點(diǎn)認(rèn)識(shí):
(1)、如果一條邊e很稀疏的與其相鄰的邊聯(lián)通,那么這條邊必然會(huì)因?yàn)閷?duì)尋找頻繁稠密點(diǎn)集無貢獻(xiàn)而為噪聲邊;
(2)、如果一條邊e只在幾個(gè)圖里表現(xiàn)出與其鄰居邊很強(qiáng)的連通性,那么這條邊必然會(huì)因?yàn)闊o法滿足頻繁性的要求,從而因?yàn)閷?duì)尋找頻繁稠密點(diǎn)集無貢獻(xiàn)而成為噪聲邊;
(3)、如果一條邊e在摘要圖中是兩個(gè)稠密子圖之間連通的“橋”,那么這條邊必然會(huì)對(duì)尋找頻繁稠密點(diǎn)集無貢獻(xiàn)而成為噪聲邊;
(4)、如果一條邊e不在摘要圖中出現(xiàn)而在原圖集的某幾個(gè)圖中出現(xiàn),那么這條邊也是對(duì)尋找頻繁稠密點(diǎn)集無貢獻(xiàn)的邊;
(5)、如果一個(gè)點(diǎn)集V'是在原圖集中的某幾個(gè)圖集出現(xiàn)的頻繁稠密點(diǎn)集,那么這個(gè)點(diǎn)集在原圖集中剩余其他的幾個(gè)圖中導(dǎo)出子圖是對(duì)于繼續(xù)尋找其他頻繁稠密點(diǎn)集是沒有貢獻(xiàn)的。
因此,為了刪除以上五種噪聲邊從而挖掘頻繁稠密點(diǎn)集,在本發(fā)明實(shí)施例中,發(fā)明人首先提出尋找頻繁稠密點(diǎn)集無貢獻(xiàn)的不相關(guān)的邊來刪除前面四類噪聲邊,其次邊向量聚類來刪除第五類噪聲邊形成候選網(wǎng)絡(luò)子集,然后回到初始圖集中分別提取出候選網(wǎng)絡(luò)子集,并對(duì)提取的圖集再一次做粗過濾以便得到摘要圖集,最后分別對(duì)摘要圖進(jìn)行稠密子圖查找,得到頻繁稠密點(diǎn)集作為共表達(dá)的基因團(tuán),具體工作原理如圖1所示。
綜上所述,發(fā)明人提出的一種基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法,具體包括:
第一步、尋找頻繁稠密點(diǎn)集無貢獻(xiàn)的不相關(guān)的邊,即FILTER算法:
步驟S11、獲取多個(gè)酵母菌基因表達(dá)數(shù)據(jù)轉(zhuǎn)換成生物網(wǎng)絡(luò)后形成的初始圖集D={Gi=(V,Ei)}(1≤i≤m),并確定最小稠密度閾值δ、最小頻繁支持度閾值k和用戶自定義參數(shù)f,p,q分別對(duì)應(yīng)的數(shù)值;其中,所述初始圖集由多個(gè)均具有相同點(diǎn)集的子圖Gi形成,且不同子圖Gi之間至少存在一條相異的邊;
步驟S12:確定每一個(gè)子圖Gi的每條邊,在所述初始圖集中出現(xiàn)的次數(shù)均大于最小頻繁支持度閾值k和圖集大小m的乘積的最小正整數(shù)值;
步驟S13、刪除所述初始圖集中每一個(gè)子圖Gi中均滿足稠密度系數(shù)EDe<δ/f的邊,該步驟主要是刪除初始圖集中每一個(gè)子圖Gi中與其周圍邊稀疏連通的邊,為了防止刪除相關(guān)的邊;
步驟S14、構(gòu)建出與所述初始圖集中每一個(gè)子圖Gi具有相同點(diǎn)集的摘要圖,且所述初始圖集對(duì)應(yīng)的摘要圖中每條邊均需滿足稠密度系數(shù)該步驟主要是構(gòu)建初始圖集對(duì)應(yīng)的摘要圖,把滿足頻繁性的邊給提取出來,放在該摘要圖中;其中,0<p<1,主要是防止刪除對(duì)于查找頻繁稠密點(diǎn)集有貢獻(xiàn)的相關(guān)邊;
步驟S15、對(duì)所述初始圖集對(duì)應(yīng)的摘要圖中每條邊均做邊聚類系數(shù),刪除所述初始圖集對(duì)應(yīng)的摘要圖中邊聚類系數(shù)ECe<q的邊并更新,該步驟主要是刪除那些在初始圖集對(duì)應(yīng)的摘要圖中稀疏的連接兩個(gè)稠密子圖的邊;
步驟S16、將所述更新后的初始圖集對(duì)應(yīng)的摘要圖與所述每一個(gè)子圖Gi的邊進(jìn)行一一對(duì)比,刪除每一個(gè)子圖Gi中不存在于所述更新后的初始圖集對(duì)應(yīng)的摘要圖中的邊并更新,該步驟主要是根據(jù)初始圖集對(duì)應(yīng)的摘要圖更新初始圖集,使得更新后的原圖集就過濾了一部分不相關(guān)的邊,從而更有助于發(fā)現(xiàn)頻繁稠密點(diǎn)集;
步驟S17、重復(fù)步驟S13至步驟S16,直到所述更新后的初始圖集對(duì)應(yīng)的摘要圖中的邊不在發(fā)生變化為止;
在一個(gè)實(shí)施例中,如圖2所示,具有相同點(diǎn)集的四張圖構(gòu)成的圖集一次運(yùn)行過程變化展示情況。這里,假定要尋找這個(gè)圖集中滿足頻繁支持度大于等于2、稠密度大于等于0.9的頻繁稠密點(diǎn)集。很明顯,點(diǎn)集{a,b,d},{b,c,d}和{e,f,g,h}是滿足要求的頻繁稠密點(diǎn)集。f取值為4,p取值0.8,在該圖里,每個(gè)圖中實(shí)線表示一條在該圖中真正存在的邊,而虛線表示上一步驟需要?jiǎng)h除的邊。
從圖2可以看出,更新后的每一個(gè)子圖與初始圖集相比含有更少的噪聲邊。然而,卻不能一次直接從摘要圖中提取出所有的頻繁稠密點(diǎn)集,例如摘要圖中的稠密子圖{a,b,c,d}實(shí)際上代表兩個(gè)點(diǎn)集{a,b,d}和{b,c,d}。因?yàn)橐粋€(gè)頻繁稠密點(diǎn)集往往出現(xiàn)在圖集中的某幾個(gè)圖里。所以,如果知道頻繁稠密點(diǎn)集在哪幾個(gè)圖里出現(xiàn),然后再對(duì)這幾個(gè)圖做摘要圖,那么頻繁稠密點(diǎn)集就很容易提取出來。理論上,一個(gè)圖集大小為m,頻繁稠密點(diǎn)集出現(xiàn)的支持度為k,則搜索空間就是對(duì)于一個(gè)圖集大小為20,要求頻繁支持度為6的稠密點(diǎn)集來說,則搜索空間就為個(gè)可能的候選網(wǎng)絡(luò)子集,這在實(shí)際中,顯然是不可行的。
因此需要確定可能的候選網(wǎng)絡(luò)子集,從而縮減了候選網(wǎng)絡(luò)子集的搜索空間,具體如下:
第二步、確定候選網(wǎng)絡(luò)子集,即GCLUSTER算法:
步驟S21、給所述邊不在發(fā)生變化的摘要圖中每條邊的邊向量均賦予一個(gè)權(quán)值,并確定所述賦值的每條邊對(duì)應(yīng)邊支持向量的漢明值,且進(jìn)一步將漢明值滿足篩選條件的邊向量并到集合A中,將漢明值不滿足篩選條件的邊向量并到集合B中;
步驟S22、分別對(duì)所述集合A和所述集合B中的邊向量進(jìn)行歸并,把重復(fù)的邊向量刪除,僅保留一個(gè)并更新邊向量對(duì)應(yīng)的權(quán)值;
步驟S23、設(shè)置種子向量,并根據(jù)所述設(shè)置的種子向量,調(diào)整集合A和集合B中的邊向量;其中,所述種子向量為權(quán)重最大的邊;
步驟S24、按照最大邊向量相似度的準(zhǔn)則,把所述調(diào)整后的集合B中的邊向量均映射到所述調(diào)整后的集合A中,并待映射結(jié)束后,將所述完成映射后的集合A中的邊向量進(jìn)行聚類運(yùn)算,形成聚類中心集合;
步驟S25:刪除聚類中心集合中,1的個(gè)數(shù)出現(xiàn)的頻率小于k與圖集大小乘積的下取整數(shù)的聚類中心;
在一個(gè)實(shí)施例中,輸入:摘要圖圖集大小m,最小頻繁支持度k,最小漢明距離閾值τ;
輸出:聚類中心C;
步驟1:對(duì)于摘要圖中的每條邊令該邊的邊向量ve的權(quán)值w(ve)=1,并且把摘要圖中的所有邊的邊支持向量的漢明值為k或者k+1的邊歸并到集合A中,其余的邊放在集合B中,并分別對(duì)集合A和集合B中的邊向量進(jìn)行歸并,把重復(fù)的邊向量刪除僅保留一個(gè)并更新邊向量對(duì)應(yīng)的權(quán)值;
步驟2:for each edge ve∈B do
把集合A中與ve有最大相似度S(ve,ve')的邊向量ve'放入集合SUB(A)中;
For each ve'∈SUB(A)do
w(ve')=w(ve')+w(ve)*w(ve')/Σw(ve');
End for
刪除B集合中的ve;
End for
把A集合中漢明值為k的邊向量移動(dòng)到集合B中;
for each edge ve∈B do
把集合A中與ve有相似度S(ve,ve')=1的邊向量ve'放入集合SUB(A)中;
For each ve'∈SUB(A)do
w(ve')=w(ve')+w(ve)*w(ve')/Σw(ve');
End for
刪除B集合中的ve;
End for
A=A∪B;
步驟3:把A中的邊向量,按照邊向量權(quán)值的大小進(jìn)行降序排序;
do{
T=NULL;
把A中第一個(gè)邊向量移動(dòng)到T中;
For each v∈A do
If,then把v從A集合移動(dòng)到T集合;
根據(jù)T集合的所有的邊向量創(chuàng)建一個(gè)聚類中心c并且
把c移動(dòng)到集合C中;
}while(A?。絅ULL);
上述算法對(duì)摘要圖的邊向量初始化一個(gè)權(quán)值,然后對(duì)邊向量進(jìn)行了簡(jiǎn)單的歸并,并更新了權(quán)值。經(jīng)過這一步處理,剩余的邊向量就互不重復(fù),各邊向量對(duì)應(yīng)的權(quán)值就表示了在摘要圖中有多少與該邊向量相同的邊向量的邊數(shù)。接下來的步驟,算法首先把漢明值等于用戶要求的頻繁支持度的邊向量作為種子放在一個(gè)集合A中,剩下的邊向量放到另一集合B中,然后按照最大邊向量相似度的準(zhǔn)則把B中的邊向量合理的映射到A中,最后把A中的邊向量進(jìn)行聚類,最后形成聚類中心集合,也就是候選網(wǎng)絡(luò)子集的集合。
這里需要說明的是,有了T集合后,聚類中心是如何形成的。聚類中心在第i個(gè)圖中的值是由T集合中所有邊向量和對(duì)其對(duì)應(yīng)權(quán)值在第i個(gè)圖中的0的權(quán)值和和1的權(quán)值和的大小確定的。例如,如果1的權(quán)值和大,那么聚類中心在第一個(gè)i個(gè)圖中的值為1;否則就為零,如圖3所示。
第三步、獲取摘要圖集:
步驟S31、根據(jù)所述形成的聚類中心集合,在所述初始圖集D={Gi=(V,Ei)}(1≤i≤m)中,提取分別與所述聚類中心集合中每一向量相一致的子圖,形成多個(gè)新圖集;
步驟S32、根據(jù)所述確定的最小稠密度閾值δ、最小頻繁支持度閾值k和用戶自定義參數(shù)f,p,q分別對(duì)應(yīng)的數(shù)值,刪除所述每一新圖集中均滿足稠密度系數(shù)EDe<δ/f的邊;
步驟S33、分別構(gòu)建出與所述每一新圖集中具有相同點(diǎn)集的摘要圖,且所述每一新圖集的摘要圖中每條邊均需滿足稠密度系數(shù)
步驟S34、對(duì)所述每一新圖集的摘要圖中每條邊均做邊聚類系數(shù),刪除所述每一新圖集的摘要圖中邊聚類系數(shù)ECe<q的邊并更新;
步驟S35、將所述更新后的每一新圖集的摘要圖分別與對(duì)應(yīng)的新圖集的邊進(jìn)行一一對(duì)比,刪除每一新圖集中不存在于其相對(duì)應(yīng)的摘要圖中的邊并更新;
步驟S36、重復(fù)步驟S32至步驟S35,直到所述更新后的每一新圖集的摘要圖中的邊不在發(fā)生變化為止,得到摘要圖集;
第四步、查找稠密子圖,并確定頻繁稠密點(diǎn)集:稠密子圖的查找方法為1:要求該子圖是一個(gè)聯(lián)通分支;2)該子圖的稠密度要求大于設(shè)定的稠密度,具體如下:
步驟S41、在所述得到的摘要圖集中,根據(jù)所述更新后的初始圖集對(duì)應(yīng)的摘要圖,查找與所述更新后的初始圖集對(duì)應(yīng)的摘要圖中邊集相一致的稠密子圖,并根據(jù)所述查找到的稠密子圖,確定頻繁稠密點(diǎn)集,且進(jìn)一步將所述確定的頻繁稠密點(diǎn)集進(jìn)行歸并后,作為酵母菌基因共表達(dá)的基因團(tuán)輸出。
應(yīng)當(dāng)說明的是,對(duì)頻繁稠密點(diǎn)集的歸并,采取如下方法。首先,對(duì)于頻繁稠密點(diǎn)集在原始圖集的各張圖對(duì)應(yīng)的導(dǎo)出子圖按照稠密度是否大于先前給定的閾值,建立頻繁稠密點(diǎn)集的向量。接下來按照下面三個(gè)原則進(jìn)行歸并:
(1)、完全一樣的頻繁稠密點(diǎn)集進(jìn)行歸并,只保留一個(gè);
(2)、如果兩個(gè)頻繁稠密點(diǎn)集中有大約85%以上的元素相同或者一個(gè)是另一個(gè)的子集且這兩個(gè)頻繁稠密點(diǎn)集的向量均相同,則這兩個(gè)頻繁稠密點(diǎn)集采取“并集”的方式進(jìn)行合并成一個(gè);
(3)、如果兩個(gè)頻繁稠密點(diǎn)集中有大約85%以上的元素相同或者一個(gè)是另一個(gè)子集,但是這兩個(gè)頻繁稠密點(diǎn)集的向量不同,那么這樣的頻繁稠密點(diǎn)集不合并,并且要把元素多的頻繁稠密點(diǎn)集進(jìn)行拆分
在本發(fā)明實(shí)施例中,用戶自定義參數(shù)f取值范圍為[4,10];參數(shù)p取值范圍為[0.1,0.2];參數(shù)q取值為0.334。
如圖4所示,對(duì)本發(fā)明實(shí)施例中的基于復(fù)雜生物網(wǎng)絡(luò)集的頻繁模式挖掘酵母菌共表達(dá)團(tuán)的預(yù)測(cè)方法的應(yīng)用場(chǎng)景做進(jìn)一步說明:
在構(gòu)建的20張酵母菌共表達(dá)網(wǎng)絡(luò)上,運(yùn)行FILTER算法(即第一步、尋找頻繁稠密點(diǎn)集無貢獻(xiàn)的不相關(guān)的邊),研究20張酵母菌數(shù)據(jù)網(wǎng)絡(luò)在運(yùn)行FILTER算法前后圖集中的邊的分布情況。運(yùn)行FILTER算法之前,本文先對(duì)20張共表達(dá)網(wǎng)絡(luò)進(jìn)行了預(yù)處理,保留了那些頻繁支持度不小于3的邊,并按序給出各邊的邊向量。經(jīng)過這一步處理后,總共有820967條邊留了下來。運(yùn)行FILTER算法后,圖集還剩348222條邊——初始圖集的邊數(shù)中有將近一半的邊給刪除了,而這些邊都是對(duì)尋找頻繁稠密點(diǎn)集無貢獻(xiàn)的邊。運(yùn)行FILTER算法前后圖集邊按照漢明權(quán)的分布情況,如圖4所示(FILTER算法各參數(shù)設(shè)置的情況為:k=6,δ=0.6)。
在FILTER算法運(yùn)行之前,原始圖集中的邊按照漢明權(quán)的分布呈現(xiàn)出指數(shù)分布,這意味著原始圖集中大部分邊的頻繁度都是相對(duì)很小的,大約有90%的邊的漢明權(quán)都小于8。經(jīng)過FILTER算法粗過濾之后,這種邊按漢明權(quán)的分布形狀比先前的分布的形狀小了很多??紤]到頻繁稠密點(diǎn)集的頻繁支持度都不小于6,本文通過GCLUSTER算法把其他的邊邊向量都投影到漢明權(quán)為6或7的邊向量中。從該圖也可以看出,漢明值為6和7的邊向量數(shù)目大約占總邊向量的22%,這也就從某種程度上說明了選擇漢明權(quán)為6或7的邊向量為種子向量的合理性。該圖還給出了從20個(gè)物體中取出k(0<k<20)的取法數(shù)目的分布情況。從漢明權(quán)為3,4,5的FILTER后邊的分布和20中取3、4、5的組合數(shù)分布中可以看出,漢明權(quán)為3,4,5的邊向量中還含有大量重復(fù)的邊向量。這表明有很多邊有共同的漢明權(quán),并且還可以看出,真正用GCLUSTER算法聚類的邊向量相對(duì)而言是較少的。
如圖5至圖7所示,把完整的頻繁稠密點(diǎn)集挖掘算法運(yùn)行在酵母菌數(shù)據(jù)構(gòu)建的20張共表達(dá)網(wǎng)絡(luò)上(這里稠密度分別取0.6,0.7,0.8,頻繁支持度閾值統(tǒng)一為6)得到了頻繁稠密點(diǎn)集,也就是算法得到的共表達(dá)的基因團(tuán)。為了驗(yàn)證該算法得到的共表達(dá)的基因團(tuán)是有生物意義的,本文把得到的共表達(dá)的基因團(tuán)在GOEAST(http://omicslab.genetics.ac.cn/GOEAST)上進(jìn)行了GO分析。對(duì)于每一個(gè)基因cluster,GOEAST工具給出了該基因cluster關(guān)于基因本體注釋的三種分類(分別是生物過程BP,分子功能MF,細(xì)胞組件CC)里共享GO條目的情況。在本文中,我們認(rèn)定一個(gè)基因cluster是顯著富集的如果這個(gè)基因cluster的GO結(jié)果中有不小于80%的基因在p-value值為千分之一的情況下共享一個(gè)或多個(gè)GO條目。從生物學(xué)意義上講,一個(gè)顯著富集的基因cluster傾向于被同一個(gè)轉(zhuǎn)錄因子所調(diào)控,并且該基因cluster可以構(gòu)成一個(gè)轉(zhuǎn)錄調(diào)控模塊。圖5至圖7給出了在不同稠密度(稠密度為0.6,0.7,0.8)情況下運(yùn)行該算法得到的基因cluster顯著共享的GO條目數(shù)目的分布情況。
在稠密度為0.6,0.7,0.8的情況下,算法得到的基因cluster數(shù)目分別為43,35,35。從圖5至圖7可以看出,在不同的稠密度情況下,分別只有3,1和3個(gè)基因cluster(很少量的)沒有顯著共享一個(gè)GO條目,其余的基因cluster都顯著共享了至少一個(gè)GO條目。在不同的稠密度情況下,平均每個(gè)基因cluster顯著共享的GO條目分別為25.14,30.77和30.83。這說明,增加稠密度的閾值,可以增強(qiáng)基因cluster富集的程度。
實(shí)施本發(fā)明實(shí)施例,具有如下有益效果:
本發(fā)明實(shí)施例,首先對(duì)初始圖集做粗過濾,刪除對(duì)于尋找頻繁稠密點(diǎn)集無貢獻(xiàn)的不相關(guān)的邊得到摘要圖,接著在摘要圖的基礎(chǔ)上尋找可能的候選網(wǎng)絡(luò)子集,然后回到初始圖集中分別提取出候選網(wǎng)絡(luò)子集,并對(duì)提取的圖集再一次做粗過濾以便得到摘要圖集,最后分別對(duì)摘要圖進(jìn)行稠密子圖查找,得到頻繁稠密點(diǎn)集作為共表達(dá)的基因團(tuán),從而能夠降低計(jì)算復(fù)雜度,提高頻繁模式挖掘的準(zhǔn)確性、效率以及解決模式重疊問題。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,所述的存儲(chǔ)介質(zhì),如ROM/RAM、磁盤、光盤等。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。