10 releases
Uses old Rust 2015
0.1.9 | Feb 24, 2023 |
---|---|
0.1.7 | Jan 24, 2023 |
0.1.6 | Dec 27, 2022 |
0.1.5 | Nov 24, 2022 |
0.1.2 | Jul 26, 2022 |
#165 in Biology
63KB
1.5K
SLoC
RNA Structural Aligner Based on Transfer-learning and Thermodynamic Ensemble Model
Installation
This project is written mainly in Rust, a systems programming language. You need to install Rust components, i.e., rustc (the Rust compiler), cargo (the Rust package manager), and the Rust standard library. Visit the Rust website to see more about Rust. You can install Rust components with the following one line:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
The above installation is done by Rustup, and Rustup enables to easily switch a compiler in use. You can install ConsAlign as follows:
# AVX, SSE, and MMX enabled for rustc
# Another example: RUSTFLAGS='--emit asm -C target-feature=+avx2 -C target-feature=+ssse3 -C target-feature=+mmx -C target-feature=+fma'
RUSTFLAGS='--emit asm -C target-feature=+avx -C target-feature=+ssse3 -C target-feature=+mmx' \
cargo install consalign
Check if you have installed ConsAlign properly as follows:
# Its available command options will be displayed.
consalign
Train ConsAlign Using Your Training Data
To train ConsAlign, you first need to install ConsTrain, a training tool for ConsProb (ConsAlign's back engine). Then, you pass ConsTrain your training data and install ConsAlign with your trained parameters. You can do the above training recipe as follows:
git clone https://github.com/heartsh/consalign \
--recurse-submodule=consprob-trained
cd consalign/consprob-trained/scripts
./constrain_using_your_data.sh \
train_data_dir_path train_log_file_path
Docker Playground
I offer my Docker-based playground for RNA software and its instruction to replay my computational experiments easily.
Method Digest
ConsProb-Turner and ConsProb-trained infer sparse posterior matching/base-pairing probabilities on RNA pairwise structural alignment using Turner's model and the CONTRAfold models, respectively. This repository offers ConsAlign, a transfer-learned RNA structural aligner combining ConsProb-Turner and ConsProb-trained. When you run ConsAlign, it automatically determines its alignment prediction hyper-parameters by maximizing expected sum-of-pairs scores.
Author
License
Copyright (c) 2018 Heartsh
Licensed under the MIT license.
Dependencies
~81MB
~1.5M SLoC