Welcome to SMART’s documentation!
Spatial multi-omic aggregation using graph neural networks and metric learning
Overview
Spatial multi-omics enables the exploration of tissue microenvironments and heterogeneity from the perspective of different omics modalities across distinct spatial domains within tissues. To jointly analyze the spatial multi-omics data, computational methods are desired to integrate multiple omics with spatial information into a unified space. Here, we present SMART (Spatial Multi-omic Aggregation using gRaph neural networks and meTric learning), a computational framework for spatial multi-omic integration. SMART leverages a modality-independent modular and stacking framework with spatial coordinates and adjusts the aggregation using triplet relationships. SMART excels at accurately identifying spatial regions of anatomical structures, compatible with spatial datasets of any type and number of omics layers, while demonstrating exceptional computational efficiency and scalability on large datasets. Moreover, a variant of SMART, SMART-MS, expands its capabilities to integrate spatial multi-omics data across multiple tissue sections. In summary, SMART provides a versatile, efficient, and scalable solution for integrating spatial multi-omics data.
Getting started with SMART
To begin using SMART, please refer to the following sections of the documentation:
The Installation provides instructions for setting up SMART in your environment.
The Tutorials contains examples on how to use SMART for various integration and imputation tasks.
The SMART API Documentation provides details on available classes and functions.
Version notes
v0.1.2 (GitHub release 0.1.2, on PyPI as
bio-SMART==0.1.2): the version used to generate all five tutorials in this documentation. In this version,SMART.encodersandSMART.decodersare stored in plain Python lists, so their parameters are not registered with the optimizer: during training, only the fusion layer (fc) is updated, while the graph encoder/decoder weights keep their initial values. To exactly reproduce the recorded tutorial outputs, please use v0.1.2.v0.1.3 (GitHub release 0.1.3, current):
SMART.encodersandSMART.decodersare now wrapped intorch.nn.ModuleList, so all encoder/decoder parameters are registered and trained. Because the set of trainable parameters changed, training dynamics differ from v0.1.2: with identical hyperparameters and random seeds, v0.1.3 produces different results from the tutorials’ recorded outputs, and per-dataset learning-rate / early-stopping settings may benefit from recalibration.
Citation
Zhihua Du, Qiyi Chen, Weiliang Huang, Jinmiao Chen & Xubin Zheng. SMART: Spatial multi-omic aggregation using graph neural networks and metric learning. 2024.
Contents: