ReDeeM is a Rust crate designed for implementing deep learning models specifically tailored for mass spectrometry data. The primary goal of this project is to facilitate the prediction of peptide properties and to develop classifier scoring models (TDA).
The ReDeeM crates are designed to be used as a library in other projects, i.e. in Sage. To use the ReDeeM crates, add the following to your Cargo.toml file:
[dependencies]
redeem-properties = { git = "https://github.com/singjc/redeem.git", branch = "master" }
redeem-classifiers = { git = "https://github.com/singjc/redeem.git", branch = "master" }Note: The ReDeeM crates are still under development and are not yet available on crates.io.
The ReDeeM project consists of two primary crates:
-
redeem-properties:
-
This crate focuses on deep learning models for peptide property prediction. It implements models for predicting retention time (RT), ion mobility (IM), and MS2 fragment intensities using the Candle library.
-
The models can be trained, fine-tuned on new data and can be saved in the safetensor format for later use.
-
Current Models
Model Name Architecture Implemented AlphaPept RT Model rt_cnn_lstmCNN-LSTM ✔️ AlphaPept MS2 Model ms2_bertBert ✔️ AlphaPept CCS Model ccs_cnn_lstmCNN-LSTM ✔️ RT Model rt_tf_lstmCNN-Transformer ✔️ CCS Model ccs_tf_lstmCNN-Transformer ✔️ -
-
redeem-classifiers:
-
This crate is aimed at developing semi-supervised scoring classifier models. The goal is to create models for separating target peptides from decoys.
-
Current Models
Model Name Architecture Implemented XGBoost Classifier redeem_classifiers::XGBoostClassifierXGBoost ✔️ GBDT Classifier redeem_classifiers::GBDTClassifierGBDT ✔️ SVM Classifier redeem_classifiers::SVMClassifierSVM ✔️ -
Note
To use the XGBoost classifier, or the SVM classifier, you need to compile with the --features xgboost or --features linfa flag respectively.
Important
The XGBoost crate is a wrapper around the original XGBoost library, which requires clang/c++ to be installed on the system. On Ubuntu, you can do the following:
```bash
sudo apt update
sudo apt install build-essential
sudo apt install clang
sudo apt install libstdc++-12-dev
```