tissue is a model repository in a single python package for the manuscript Fischer, D. S., Ali, M., Richter, S., Etrürk, A. and Theis, F. "Graph neural networks learn emergent tissue properties from spatial molecular profiles."
You can install Tissue via :
$ git clone tissue
$ cd tissue
$ pip install -e .
You can install the requirements via:
$ pip install -r requirements.txt
We have provided an analysis tutorial notebook for one of the dataset used in the study.
The repository consists of different components
I. Data loading: datasets can be defined under data/datasets.py
and pytorch geometric dataloaders are adjusted accordingly in data/loading.py
II. Models: graph neural networks and baseline models as described in the paper, the following models can be found under modules/
:
- Graph convolutional network (GCN)
- Graph isomorphism network (GIN)
- GCN with self-supervision (GCN-SS)
- Graph attention network (GAT)
Scenario 1: Mean node features models
- Multi-Layer Preceptron (MLP)
- Random Forest
- Logistic regression
Scenario 2: Single cell/cell type models
- Multi-instance (MI) on single cell level
- Aggregation multi-instance (AGG) on cell type level
Scenario 3: Spatial models
- Graph neural network without node features
- Node degree models (random forest and/or logistic regression)
- Dispersion model
The models can be trained using the training scripts provided under train/
.
III. Summary and evaluation of models: model evaluation and plotting functions are defined in train/summaries.py
IV. Model interpretation: interpretation methods on graph and node embedding levels are implemented under interpretation/
Contributions are very welcome. To learn more, see the Contributor Guide.
Distributed under the terms of the MIT license, Tissue is free and open source software.
If you encounter any problems, please file an issue along with a detailed description.
This project was generated from @cjolowicz's Hypermodern Python Cookiecutter template.