consalign

Crates.ioconsalign
lib.rsconsalign
version0.1.9
sourcesrc
created_at2022-04-26 18:19:08.553438
updated_at2023-02-24 19:36:27.108617
descriptionRNA Structural Aligner Based on Transfer-learning and Thermodynamic Ensemble Model
homepage
repositoryhttps://github.com/heartsh/consalign
max_upload_size
id575626
size113,289
Heartsh (heartsh)

documentation

README

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

Heartsh

License

Copyright (c) 2018 Heartsh
Licensed under the MIT license.

Commit count: 63

cargo fmt