歡迎關(guān)注我的CSDN:https://spike.blog.csdn.net/
本文地址:https://spike.blog.csdn.net/article/details/134208615
Paper: Accurate prediction of nucleic acid and protein-nucleic acid complexes using RoseTTAFoldNA
- GitHub: RoseTTAFold2NA
蛋白質(zhì)-核酸復(fù)合物 (Protein - Nucleic Acid Complexes),在生物學(xué)中發(fā)揮著關(guān)鍵作用。 盡管蛋白質(zhì)結(jié)構(gòu)預(yù)測方面,最近取得了相當大的進展,但是,與已知復(fù)合物沒有同源性的蛋白質(zhì)-核酸復(fù)合物的結(jié)構(gòu)預(yù)測,在很大程度上是一個尚未解決的問題。RoseTTAFold2NA 將 RoseTTAFold 端到端深度學(xué)習(xí)方法,擴展到核酸和蛋白質(zhì)-核酸復(fù)合物的建模。 已訓(xùn)練的網(wǎng)絡(luò) RoseTTAFoldNA,可以快速生成 3D 結(jié)構(gòu)模型,并且對 蛋白質(zhì)-DNA 和 蛋白質(zhì)-RNA 復(fù)合物以及 RNA 三級結(jié)構(gòu)進行置信估計。 在這三種情況下,置信預(yù)測的準確性,都比當前最先進的方法高得多。 RoseTTAFoldNA 應(yīng)廣泛用于模擬天然存在的 蛋白質(zhì)-核酸 復(fù)合物的結(jié)構(gòu),以及設(shè)計序列特異性 RNA 和 DNA 結(jié)合蛋白。
David Baker 組的工作,作者 Minkyung Baek
1. Docker 配置
Docker 環(huán)境:
# 下載 glm-nvidia-pytorch-1.11.0-cu116-py3.tar
docker image load -i glm-nvidia-pytorch-1.11.0-cu116-py3.tar
nvidia-docker run -it --name rfna-v1 --shm-size 72G -v [nfs]/[nfs] glm:nvidia-pytorch-1.11.0-cu116-py3
glm:nvidia-pytorch-1.11.0-cu116-py3,比較穩(wěn)定的 docker image ,建議作為 base image。
準備 GitHub 工程:
git clone https://github.com/uw-ipd/RoseTTAFold2NA.git
cd RoseTTAFold2NA
cd /nfs_beijing_ai/chenlong/workspace/rosettafold2na-by-chenlong
GitHub 加速代理:
https://gitclone.com/
https://ghproxy.com/
https://toolwa.com/github/
配置 Docker 環(huán)境中的 conda 源,即:
vim ~/.condarc
conda 清華源,添加:
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
- https://mirrors.sustech.edu.cn/anaconda/pkgs/free
- https://mirrors.sustech.edu.cn/anaconda/pkgs/pro
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
nvidia: https://mirrors.sustech.edu.cn/anaconda-extra/cloud
channel_priority: disabled
allow_conda_downgrades: true
conda 南方科技源 (速度很慢,建議與清華源合并使用),添加:
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.sustech.edu.cn/anaconda/pkgs/main
- https://mirrors.sustech.edu.cn/anaconda/pkgs/free
- https://mirrors.sustech.edu.cn/anaconda/pkgs/r
- https://mirrors.sustech.edu.cn/anaconda/pkgs/pro
- https://mirrors.sustech.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.sustech.edu.cn/anaconda/cloud
msys2: https://mirrors.sustech.edu.cn/anaconda/cloud
bioconda: https://mirrors.sustech.edu.cn/anaconda/cloud
menpo: https://mirrors.sustech.edu.cn/anaconda/cloud
pytorch: https://mirrors.sustech.edu.cn/anaconda/cloud
simpleitk: https://mirrors.sustech.edu.cn/anaconda/cloud
nvidia: https://mirrors.sustech.edu.cn/anaconda-extra/cloud
channel_priority: disabled
allow_conda_downgrades: true
顯示全部 channels:
conda config --show
配置 pip 源:
rm /opt/conda/pip.conf
rm /root/.config/pip/pip.conf
vim ~/.pip/pip.conf
[global]
no-cache-dir = true
index-url = http://mirrors.aliyun.com/pypi/simple/
extra-index-url = https://pypi.ngc.nvidia.com
trusted-host = mirrors.aliyun.com pypi.ngc.nvidia.com
2. 安裝 Python 庫
使用 yaml 安裝,適合網(wǎng)絡(luò)較好?;蛑鸩桨惭b python 庫,解決問題。
2.1 yaml 安裝
安裝 conda 環(huán)境,需要耐心等待:
conda env create -f RF2na-linux.yml
其中 RF2na-linux.yml
,如下:
name: RF2NA
channels:
- pytorch
- nvidia
- defaults
- conda-forge
dependencies:
- python=3.10
- pip
- pytorch
- requests
- pytorch-cuda=11.7
- dglteam/label/cu117::dgl
- pyg::pyg
- bioconda::mafft
- bioconda::hhsuite
- bioconda::blast
- bioconda::hmmer>=3.3
- bioconda::infernal
- bioconda::cd-hit
- bioconda::csblast
- pip:
- psutil
- tqdm
2.2 逐步安裝 (速度較快)
單步創(chuàng)建環(huán)境,注意安裝順序:
source ~/.bashrc
conda env list
conda create -y -n RF2NA python=3.10
conda activate RF2NA
conda install pip requests scipy
pip install psutil tqdm
# 優(yōu)先安裝 conda 的 python 庫
conda install -y hmmer hhsuite==3.3.0 -c bioconda
conda install -y mafft blast infernal cd-hit csblast -c bioconda
# conda install dgl-cuda11.7 -c dglteam # 可選
# pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2
# nvidia 下載較慢,建議使用 pip 安裝 pytorch
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia --show-channel-urls
conda install pyg -c pyg
2.2.1 hhsuite 與 環(huán)境沖突
遇到?jīng)_突錯誤,即遇到 hhsuite==3.3.0
與環(huán)境沖突,無法安裝,解決方法是使用不同的 docker image 即可,如下:
UnsatisfiableError: The following specifications were found to be incompatible with each other
建議使用 glm:nvidia-pytorch-1.11.0-cu116-py3
作為 docker 的 Base Image。
2.2.2 安裝 dglteam (可選)
(可選) 安裝 dgl 較慢,建議下載,再配置安裝 dglteam,如下:
# dgl-cuda11.7 dglteam/linux-64::dgl-cuda11.7-0.9.1post1-py310_0
# dgl-cuda11.7-0.9.1post1-py310_0.tar.bz2, 約 220 M
# 下載鏈接:https://conda.anaconda.org/dglteam/linux-64
conda install ./dgl-cuda11.7-0.9.1post1-py310_0.tar.bz2
2.2.3 安裝 PyTorch
使用 conda 安裝 pytorch 較慢時,建議使用 pip 進行安裝,速度較快。測試 PyTorch 是否可用:
conda install scipy
pip install psutil==5.8.0 tqdm
pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2
即:
python
import torch
print(torch.__version__) # 2.0.1+cu117
print(torch.cuda.is_available()) # True
2.2.4 安裝 PyG
安裝 pyg 包,也可以使用 pip 進行安裝,參考 pytorch-geometric - Installation,即
pip install torch_geometric
# Optional dependencies:
pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-2.0.0+cu117.html
3. 測試
數(shù)據(jù)位置:[your folder]/RoseTTAFold2NA/RNA/
建立蛋白質(zhì)序列庫的軟鏈接,建議使用之前的下載:
ln -s [your folder]/uniref30 uniref30
ln -s [your folder]/bfd bfd
ln -s [your folder]/pdb100_2021Mar03 pdb100_2021Mar03
RNA 庫安裝:
mkdir RNA
cd RNA
# Rfam
cp [your folder]/RoseTTAFold2NA/RNA/Rfam/Rfam.cm.gz .
cp [your folder]/RoseTTAFold2NA/RNA/Rfam/Rfam.full_region.gz .
gunzip Rfam.cm.gz
gunzip Rfam.full_region.gz
cmpress Rfam.cm
# RNAcentral
cp [your folder]/RoseTTAFold2NA/RNA/RNAcentral/rfam_annotations.tsv.gz .
cp [your folder]/RoseTTAFold2NA/RNA/RNAcentral/id_mapping.tsv.gz .
cp [your folder]/RoseTTAFold2NA/RNA/RNAcentral/rnacentral_species_specific_ids.fasta.gz .
../input_prep/reprocess_rnac.pl id_mapping.tsv.gz rfam_annotations.tsv.gz
gunzip -c rnacentral_species_specific_ids.fasta.gz | makeblastdb -in - -dbtype nucl -parse_seqids -out rnacentral.fasta -title "RNACentral"
# nt
ln [your folder]/RoseTTAFold2NA/RNA/nt nt
模型權(quán)重:
cp [your folder]/RoseTTAFold2NA/RNA/network/RF2NA_apr23.tgz .
tar xvfz RF2NA_apr23.tgz
ll -h weights/
測試命令:
bash ../run_RF2NA.sh rna_pred rna_binding_protein.fa R:RNA.fa
# bash run_RF2NA.sh example/rna_pred example/rna_binding_protein.fa R:example/RNA.fa
執(zhí)行步驟如下:
- 第1步執(zhí)行:Running HHblits
- 第2步執(zhí)行:Running hhsearch
- 第3步執(zhí)行:Creating joint Protein/RNA MSA
- 第4步執(zhí)行:Running RoseTTAFold2NA to predict structures
預(yù)測日志如下:
Running on GPU
plddt best
RECYCLE 0 0.799 -1.000
RECYCLE 1 0.858 0.799
RECYCLE 2 0.870 0.858
RECYCLE 3 0.875 0.870
RECYCLE 4 0.877 0.875
RECYCLE 5 0.879 0.877
RECYCLE 6 0.877 0.879
RECYCLE 7 0.880 0.879
RECYCLE 8 0.879 0.880
RECYCLE 9 0.881 0.880
Done
輸出效果,包括 蛋白質(zhì)部分與 RNA 部分,如下:文章來源:http://www.zghlxwxcb.cn/news/detail-834537.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-834537.html
到了這里,關(guān)于PSP - 蛋白質(zhì)與核酸(RNA\DNA)復(fù)合物結(jié)構(gòu)預(yù)測 RoseTTAFoldNA 算法框架的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!