Collisional cross-section prediction for (modified) peptides.
IM2Deep is a deep learning-based CCS predictor for (modified) peptides. It accurately predicts collisional cross-section (CCS) values for modified peptides, even if the modification wasn't observed during training. The tool supports both single-conformer and multi-conformer predictions for peptide ions.
With Python 3.11 or higher, install with pip:
pip install im2deepWe recommend using a venv or conda virtual environment.
Clone this repository and use uv to install:
git clone https://github.com/CompOmics/IM2Deep.git
cd IM2Deep
uv sync --group dev --group docsBasic prediction:
im2deep <path/to/peptide_file.csv>With calibration (HIGHLY recommended):
im2deep <path/to/peptide_file.csv> --calibration-precursors <path/to/calibration_file.csv>Calibration options:
--calibrate-per-charge: Calculate separate calibration shift factors per charge state (recommended, default true)--use-charge-state: Charge state for global calibration when --calibrate-per-charge is disabled
Multi-conformer prediction: To use the multi-output prediction model (requires optional dependencies):
im2deep <path/to/peptide_file.csv> --calibration-precursors <path/to/calibration_file.csv> --multiOutput options:
im2deep <path/to/peptide_file.csv> --output-file predictions.csvFor a complete overview of all CLI arguments, run:
im2deep --helpIM2Deep can also be used programmatically:
from im2deep import predict, predict_and_calibrate
from psm_utils import PSMList
# Load your peptides as PSMList
psm_list = PSMList(psm_list=[...]) # or use psm_utils.io.read_file()
# Simple prediction
predictions = predict(psm_list)
# Prediction with calibration
psm_list_calibration = PSMList(psm_list=[...]) # Must contain CCS values
calibrated_predictions = predict_and_calibrate(
psm_list=psm_list,
psm_list_cal=psm_list_calibration
)IM2Deep accepts any format supported by psm_utils, including:
- Peptide Record (.peprec)
- MaxQuant msms.txt
- MSFragger PSM files
- And more...
Alternatively, use comma-separated values (CSV) with the following columns:
seq: Unmodified peptide sequencemodifications: Modifications listed aslocation|name, separated by pipe (|) characterslocation: Integer starting at 1 for the first amino acid0= N-terminal modification-1= C-terminal modification
name: Must correspond to a Unimod (PSI-MS) name
charge: Peptide precursor charge stateCCS: Collisional cross-section (only required for calibration files)
Example:
seq,modifications,charge,CCS
VVDDFADITTPLK,,2,422.9984309464991
GVEVLSLTPSFMDIPEK,12|Oxidation,2,464.6568644356109
SYSGREFDDLSPTEQK,,2,468.9863221739147
SYSQSILLDLTDNR,,2,460.9340710819608
DEELIHLDGK,,2,383.8693416055445
IPQEKCILQTDVK,5|Butyryl|6|Carbamidomethyl,3,516.2079366048176- Calibration: Highly recommended for accurate predictions. Calibration corrects for systematic differences between predicted and observed CCS values.
- Charge states: IM2Deep predictions are reliable for charge states up to z=6. PSMs with higher charge states are automatically filtered out during validation.
If you use IM2Deep within the context of (TI)MS²Rescore, please cite the following:
TIMS²Rescore: A DDA-PASEF optimized data-driven rescoring pipeline based on MS²Rescore. Arthur Declercq*, Robbe Devreese*, Jonas Scheid, Caroline Jachmann, Tim Van Den Bossche, Annica Preikschat, David Gomez-Zepeda, Jeewan Babu Rijal, Aurélie Hirschler, Jonathan R Krieger, Tharan Srikumar, George Rosenberger, Dennis Trede, Christine Carapito, Stefan Tenzer, Juliane S Walz, Sven Degroeve, Robbin Bouwmeester, Lennart Martens, and Ralf Gabriels. Journal of Proteome Research (2025) doi:10.1021/acs.jproteome.4c00609
In other cases, please cite the following:
Collisional cross-section prediction for multiconformational peptide ions with IM2Deep. Robbe Devreese, Alireza Nameni, Arthur Declercq, Emmy Terryn, Ralf Gabriels, Francis Impens, Kris Gevaert, Lennart Martens, Robbin Bouwmeester. Anal. Chem. (2025) doi:10.1021/acs.analchem.5c01142