SATURN:利用蛋白质大模型嵌入进行跨物种整合

伴随着众多大模型新方法的涌现,跨物种整合领域出现了许多利用蛋白质序列信息进行嵌入的整合方法,有一些具备相当的准确性。

这里记录一下用 Rosen, Y., Brbić, M., Roohani, Y. et al. Toward universal cell embeddings: integrating single-cell RNA-seq datasets across species with SATURN. Nat Methods (2024). https://doi.org/10.1038/s41592-024-02191-z 方法文章中数据进行测试的全流程。

原始代码和数据链接见https://github.com/snap-stanford/SATURN

1.环境准备

https://github.com/snap-stanford/SATURN/blob/main/requirements.txt

建议在配置GPU的环境下训练模型,否则会相当耗时

2.数据准备

物种单细胞数据

SATURN/Vignettes/frog_zebrafish_embryogenesis/dataloader.ipynb at main · snap-stanford/SATURN · GitHub

这里准备的是物种带注释的计数矩阵,并且都需要转成h5ad的格式

物种蛋白质嵌入文件

还需要准备每个物种的蛋白质序列,可以从NCBI-DATASET中下载

提取之前可以进行一定的预处理和数据清洗,见clean_fasta.py(SATURN/protein_embeddings at main · snap-stanford/SATURN · GitHub)

现有的蛋白质大模型很多,这里选择ESM2,提取蛋白质嵌入信息的torch文件详见extract.py

(esm/scripts/extract.py at main · facebookresearch/esm · GitHub)

具体的一些参数解释如下

#Extraction of the final-layer embedding for a FASTA file from the ESM-2 model
python scripts/extract.py esm2_t33_650M_UR50D \
       examples/data/some_proteins.fasta \
       examples/data/some_proteins_emb_esm2 \
       --repr_layers 0 32 33 \   #(default: final only) selects which layers to include embeddings from
       --include mean per_tok
#per_tok includes the full sequence, with an embedding per amino 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值