Tertiary Structure-based RNA Inverse Folding with Generative Diffusion Models
Please refer to requirements.txt
for the required packages.
Model checkpoint can be downloaded from here. Another checkpoint trained on the full dataset (with extra 0.1 Gaussian noise for coordinates) can be downloaded from here.
Download and put the checkpoint files in the ckpts
folder.
Inference demo notebook to get started: .
Run the following command to run the example for one sequence generation:
CUDA_VISIBLE_DEVICES=0 python main.py --PDB_file example/R1107.pdb
The generated sequence will be saved in exp_inf/fasta/R1107_0.fasta
.
Multiple sequence generation can be run by:
CUDA_VISIBLE_DEVICES=0 python main.py --PDB_file example/R1107.pdb --config.eval.n_samples 10
For more sequence diversity, you can use exp_inf_large.pth
or adjust the conditional scaling weight by --config.eval.cond_scale
.
An example for adjusting the conditional scaling weight is as follows:
CUDA_VISIBLE_DEVICES=0 python main.py --PDB_file example/R1107.pdb --config.eval.n_samples 10 --config.eval.dynamic_threshold --config.eval.cond_scale 0.4
If you find this work useful, please cite:
@article{10.1093/bioinformatics/btae259,
author = {Huang, Han and Lin, Ziqian and He, Dongchen and Hong, Liang and Li, Yu},
title = {RiboDiffusion: tertiary structure-based RNA inverse folding with generative diffusion models},
journal = {Bioinformatics},
volume = {40},
number = {Supplement_1},
pages = {i347-i356},
year = {2024},
month = {06},
issn = {1367-4811}
}
This project is licensed under the MIT License.