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
*torch_scatter==2.1.2+pt25cu124
*torch_sparse==0.6.18+pt25cu124
*torchaudio==2.5.1
*torchvision==0.20.1
*torchviz==0.0.2

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

(The webpage is still under development, but a temporary version is available.)

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.1.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.1-py3-none-any.whl (20.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: semanticst-1.1.1.tar.gz
  • Upload date:
  • Size: 18.6 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.1.tar.gz
Algorithm Hash digest
SHA256 8143531f53151eb5353d2e0feaa059df196f45c6e048d11f84720e277625d0a1
MD5 6f8f3d8cac1acdb4b50db84ace3cc3d4
BLAKE2b-256 74290a33dfdfdda9ea873b867feaebb0ed5a5370f5821036c428dd8f36acf820

See more details on using hashes here.

File details

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

File metadata

  • Download URL: semanticst-1.1.1-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.4

File hashes

Hashes for semanticst-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9e534ffe5f620699981cba92525f365ddd34cc27268f4bb157125432205e6282
MD5 1bcf54052acb610bc1907aa72fefe341
BLAKE2b-256 e1fa8a384977fce7b06bf98d6f905795514051b59340fee12344b813a6faeca2

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