Skip to main content

SemanticST: Spatially informed semantic graph learning for effective clustering and integration of spatial transcriptomics

Project description

SemanticST

SemanticST Pipeline


🔷 SemanticST Overview

SemanticST is a graph neural network-based unsupervised deep learning approach for spatial transcriptomics data analysis. SemanticST employs a sophisticated learning strategy to integrate gene expression and spatial information, enabling the model to learn a latent representation of spatial transcriptomics (ST) data. SemanticST uses a learnable weighted graph representation, termed Semantic Graphs, to better capture the complexity and diversity of biological processes. For each semantic graph, a unique embedding is learned using an autoencoder with Graph Convolutional Network (GCN) layers, representing distinct semantic features in latent space. To combine these representations, SemanticST introduces a learnable weight, referred to as the semantic score, for each semantic graph. The final graph representation is then dynamically fused by weighting and combining the individual embeddings based on their semantic scores, resulting in a more accurate and adaptive graph representation. SemanticST incorporates the MinCut loss function together with the Deep MinCut (DMC) learning algorithm. This approach not only captures the global structure of the graph but also reduces redundant training time. More importantly, it ensures that the learned embeddings are both meaningful and interpretable, providing a more robust and insightful representation of the graph. Notably, we incorporated a mini-batch training option in SemanticST by training the model on spatial graphs in smaller batches. This feature allows the learned semantic graph to maintain both local and global perspectives across batches, making SemanticST memory-efficient and scalable, enabling its application to any spatial transcriptomics dataset, regardless of the number of samples.

🔷 Requirements

To run SemanticST, install the following dependencies:

*python==3.9.20
*numpy==1.23.4
*anndata==0.10.9
*h5py==3.12.1
*leidenalg==0.10.2
*louvain==0.8.2
*matplotlib==3.9.2
*numba==0.60.0
*scanpy==1.10.3
*scikit-image==0.24.0
*scikit-learn==1.5.2
*scikit-misc==0.3.1
*torch==2.5.1
*torch-geometric==2.6.1
*rpy2==3.5.11
*POT==0.9.5
*torchviz==0.0.2

🔷 R Dependency

SemanticST requires R (≥4.1.2) for rpy2.

Installation

You can install SemanticST via PyPI:

pip install semanticst

Or install from GitHub:

pip install git+https://github.com/roxana9/SemanticST.git

To install all dependencies, run:

pip install -r requirements.txt

🔷 Step-by-Step Tutorial

For a full tutorial on how to use SemanticST, visit our documentation:

🔗 [SemanticST Tutorial Webpage]https://semanticst-tutorial.readthedocs.io/en/latest/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

semanticst-1.1.2.tar.gz (18.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

semanticst-1.1.2-py3-none-any.whl (20.5 kB view details)

Uploaded Python 3

File details

Details for the file semanticst-1.1.2.tar.gz.

File metadata

  • Download URL: semanticst-1.1.2.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.4

File hashes

Hashes for semanticst-1.1.2.tar.gz
Algorithm Hash digest
SHA256 01286e78b17180f5e6ec3b5088cfbd268d16ea678206a943043b36a344a8fc50
MD5 1c9dbc9eb400b4809dd0c6b7fcc0813b
BLAKE2b-256 73441bad31532c6698e61c3d31e602103303d1279e8ad72dc058ba5b34e79b9f

See more details on using hashes here.

File details

Details for the file semanticst-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: semanticst-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 20.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.4

File hashes

Hashes for semanticst-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4edfe87534c0f0e725857f65cd7930ad629d8d7f82cabccd6aae33b2592ce1ba
MD5 7c2ffcfb9cfee1de91dd6ed219ad74bf
BLAKE2b-256 c21b66b43082a3658471290cca774b31b6d15257cd9078aba6e95375eae86a13

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page