分析测试百科网

搜索

分析测试百科网 > 行业资讯 > 微信文章

还在纠结没有互作网络?FAVA帮你预测高质量基因互作关联

创新多组学技术服务
2023.7.13
5bed4bb4f01cde79605c8bd13c5655fb.gif


38507ac414c79a1017e5f7528590a350.png


db51885c1b0583a4393b3cc123b6ec91.png


基因/蛋白质之间的物理互作和功能互作网络,已经广泛用在细胞功能研究和可视化分析,比如PPI互作、转录因子预测等。然而,当下生物学研究大多是基于已知的少量基因和蛋白功能关联,无论是通过手动注释还是数据挖掘的互作网络都会因为数据而产生严重偏向性;对于大量未充分研究的基因互作和功能关联,我们只能鉴别出很少的互作关系。


为了更准确高效地预测功能基因之间的关联,MK等基于无偏差网络推理方法开发出FAVApy[1],该软件可以通过变分自动编码器从scRNA-seq 和蛋白质组学数据中推断功能的关联。


813f7a56a77ebeea0aaea935326a65e3.png


分析时软件的输入文件可以是来自任何组学数据集的计数或丰度值的矩阵,这里统一为scRNA的data表达矩阵。相关的参数如batch_size,hd,ld,epochs等均可以设置为默认参数,pcc_cut 是对数据结果可信度筛选的阈值,可自行设定在0~1之间。最后根据预测的互作网FAVA_network数据进行绘图。


1

FAVA预测基因互作

首先,软件会调用fava.cook函数进行互作网络预测,对结果去重并筛选绘图,也可以将结果导出为表格进行其他个性化分析。data_type为input表达矩阵的后缀,建议为tsv 或csv, epochs 为最大训练次数,PCC_cutoff为Pearson相关性筛选阈值。hidden_layer和latent_dim分别为神经网络的潜在变量和隐空间。


#基因互作网络预测FAVA_network = fava.cook(input,data_type=data_type,                       hidden_layer=hidd_dim, latent_dim=late_dim,                        epochs = epochs, PCC_cutoff = PCC_cut)FAVA_network_single = FAVA_network.iloc[::2, :]           #uniqueFAVA_network_single = pd.DataFrame(FAVA_network_single)score_cut = np.percentile(FAVA_network_single[''Score''],(75))        #top 75% data = FAVA_network_single.loc[FAVA_network_single[''Score''] > score_cut]


预测结果和Stringdb的PPI互作信息相似,包含Protein_1 ,Protein_2,Score三列信息,Score即为模型计算Pearson相关性。


bc9e58a67efa8a3ffeb0a753ad3c3677.png

图1 预测互作网络结果


2

基因互作可视化

得到互作网络总表后,我们对top100的互作关系进行可视化,出具NetworkX网络图和互作动态网页。NetworkX提供以下几种绘图布局,可以根据需要调整,默认则出具circular 和spring 两种布局。


e9978974824df90cb8027a59b636af3f.png

图2 NetworkX 几种网络布局


NetworkX绘图中,node点越大其互作关系对越多,连线的颜色由深蓝到亮黄表示互作分值高低,cmap可以指定不同的python色板,pos可以设置不同的布局(nx.circular_layout(G)和nx.spring_layout(G))。


#NetworkX绘图G = nx.from_pandas_edgelist(data.head(100),source = ''Protein_1'',                     target = ''Protein_2'', edge_attr = ''Score'',                     create_using=nx.DiGraph())node_sizes = [(d + 2.5)*60 for _, d in G.degree()]nx.draw(G, node_size = node_sizes,arrows=True,with_labels=True,     linewidths=FAVA_network_filter[''Score''],              edge_color=np.array(FAVA_network_filter[''Score''].values,    dtype=''float32''),node_color = "STEELBLUE",     pos=nx.circular_layout(G),cmap=plt.cm.plasma)


b8e151bbfaac0a5cd9d369aa19590545.png

图3 circular和spring网络互作图


同时,我们也提供一份可自定义的动态交互网页,方便调整不同关注基因的布局。


#动态htmlfrom pyvis.network import Networknet = Network(height=''800px'', width=''85%'', bgcolor=''#ffffff'',                 font_color=''black'',notebook = False, directed=True)for e in list(G.edges()):    src = e[0]    dst = e[1]    net.add_node(src, color ="STEELBLUE", size = G.degree(src))    net.add_node(dst, color ="STEELBLUE", size = G.degree(src))    net.add_edge(src, dst, color ="grey")net.toggle_physics(False)net.show_buttons(filter_=''physics'')net.show("FAVA_network.html" )


5a170bd325533d048fc006d30257961a.png

图4 动态网络互作html


3

VAE 预测基因空间结构

为了评估模型的可靠性,软件还可以根据表达矩阵,通过fava.VAE函数预测基因/细胞的隐空间,查看模型中基因和细胞的分布情况。data_df为输入的表达矩阵,batch_size等参数同上文,最终得到latent_space即为隐空间数据的3D分布情况,默认会分别对基因和细胞进行分析。


#VAE分析data_array = np.log(np.asarray(data_df, dtype=np.float32)) / np.max(np.log(np.asarray(data_df)), axis=1, keepdims=True)data_array[np.isneginf(data_array)] = 0data_array = np.nan_to_num(data_array)
VAEopt = tf.keras.optimizers.Adam(learning_rate=0.001, clipnorm=0.001)vae = fava.VAE(VAEopt, data_array, data_array, batch_size,                data_array.shape[1], hidden_layer,                late_dim, epochs)latent_space = np.array(vae.encoder.predict(data_array, batch_size=batch_size))latent_space = pd.DataFrame(latent_space[:,:,0].T)latent_space.index = data_df.indexlatent_space.columns = [''DC1'',''DC2'',''DC3'']latent_dim = latent_space.sort_values(by =       [''DC1'',''DC2'',''DC3''],ascending =[True,True,True])filter_late_dim = latent_dim.dropna(how=''all'')


#隐空间分布fig = plt.figure(figsize=(10, 10))ax = fig.gca(projection=''3d'')ax.plot(latent_dim[''DC1''], latent_dim[''DC2''], latent_dim[''DC3''], ''.'',   alpha=0.5)plt.title("latent_Dim")plt.savefig("latent_3D.pdf",dpi = 400)plt.savefig("latent_3D.png",dpi = 400)#html fig = px.scatter_3d(latent_dim, x = ''DC1'',  y = ''DC2'', z = ''DC3'')plotly.offline.plot(fig, filename="latent_3D.html")


9cd068a45f97030f05a2721075c001c2.png

图5 隐空间的基因和细胞分布


经过MK等对多个数据集的评估测试,FAVA预测结果明显优于传统共表达分析和互作预测方法(在模拟数据中,真阳性/假阳性比率高于传统方法约1.6 倍,真实数据中约 3.9 倍)。基于预测结果得到的互作网络也可以覆盖到更多未充分研究的蛋白。虽然软件目前还在预印本,但是已经有多次引用(14+),并得到StringDB官方文章挂名。


34d4c7accc748f4269b80180b803f92b.png


参考文献:

[1] Koutrouli M., Líndez P.P., Bouwmeester R., Martens L., Jensen L.J. FAVA:  high-quality functional association networks inferred from scRNA-seq  and proteomics data. 2022; bioRxiv doi:07 July 2022, preprint: not  peer reviewed https://doi.org/10.1101/2022.07.06.499022.


e477f4d3e5080ab1052ae7b842b8c362.png

上海欧易生物医学科技有限公司(简称:“欧易生物”),成立于2009年,经过十多年稳健发展,已经成长为拥有“晶准生物”“鹿明生物”“青岛欧易”三家全资子公司,近600名员工的生物科技领域集团型企业。


欧易生物始终秉持着“硬数据 · 好服务”的理念服务于大众。为大生命科学、大健康相关研究领域,以及医药、食品及日化企业的客户,提供从基础研究到药物靶点发现、药理药效及安全性评价、疾病分子标志物筛选、致病菌及耐药菌溯源等相关技术服务,全力加速客户研究与开发进程,提升客户研究与开发价值。

7782816c4c2c171edd0287a252f3c02d.png


欧易生物携手旗下子公司,实现了中心法则上、中、下游多层组学的串联,从基因组、转录组、表观组、微生物组,到蛋白组、代谢组及近年热门的单细胞&空间多组学技术服务,为科研用户提供全面的创新多组学技术服务。


35c9d3e25b73e400127cea6abaea60b4.png


欧易生物已先后获得上海市科技小巨人企业、闵行区研发机构、闵行区企业技术中心、产权管理体系认证企业等资质。拥有授权发明专利30+项,在受理发明专利50+项,软件著作权150+项。

40ca94be808ba9b35af76b42f2748ed1.png
d164f68cec02d5e70f96e468e8e60c5f.png

END

排版人:七七


原创声明:本文由欧易生物(OEBIOTECH)学术团队报道,本文著作权归文章作者所有。欢迎个人转发及分享,未经作者的允许禁止转载。

2c9188d461c1d49444de9dcad69a00bf.gif
15db34478e5fc3a9379e51690c2295a9.gif

发布需求
作者
头像
仪器推荐
文章推荐