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.3.tar.gz (18.6 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.3-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for semanticst-1.1.3.tar.gz
Algorithm Hash digest
SHA256 b40cbf9b2b2c4a77d20a05bd963165d47fc58fd3113ca06d9c98b15e49c6033e
MD5 a16109c0abe7fab3e376210be7a7f2ca
BLAKE2b-256 2c0576ab1893a97af30f2ad3a299e056f04ccb1fba269cdefcbf719eac178c3d

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for semanticst-1.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 485e664f20ba7afe1be018dd1ab42e79278230940ac4a316531ec299a3c45644
MD5 c0b2178aaab1a84dee38acc1f6978e01
BLAKE2b-256 966ae09d615d1b9049862b93f794d5e643a26d272621b3c5067348cefca09da8

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