A tool to generate coembeddings from IF image embeddings and PPI network embeddings
Project description
Cell Maps CoEmbedder
The Cell Maps CoEmbedding is part of the Cell Mapping Toolkit
Creates Coembedding from Cell Maps ImmunoFluorscent Image Embedder and Cell Maps PPI Embedder using an implementation of MUSE
Free software: MIT license
Documentation: https://cellmaps-coembedding.readthedocs.io.
Dependencies
Compatibility
Python 3.8 - 3.11
Installation
git clone https://github.com/idekerlab/cellmaps_coembedding
cd cellmaps_coembedding
pip install -r requirements_dev.txt
make dist
pip install dist/cellmaps_coembedding*whl
Run make command with no arguments to see other build/deploy options including creation of Docker image
make
Output:
clean remove all build, test, coverage and Python artifacts
clean-build remove build artifacts
clean-pyc remove Python file artifacts
clean-test remove test and coverage artifacts
lint check style with flake8
test run tests quickly with the default Python
test-all run tests on every Python version with tox
coverage check code coverage quickly with the default Python
docs generate Sphinx HTML documentation, including API docs
servedocs compile the docs watching for changes
testrelease package and upload a TEST release
release package and upload a release
dist builds source and wheel package
install install the package to the active Python's site-packages
dockerbuild build docker image and store in local repository
dockerpush push image to dockerhub
Before running tests, please install pip install -r requirements_dev.txt.
For developers
To deploy development versions of this package
Below are steps to make changes to this code base, deploy, and then run against those changes.
Make changes
Modify code in this repo as desired
Build and deploy
# From base directory of this repo cellmaps_coembedding
pip uninstall cellmaps_coembedding -y ; make clean dist; pip install dist/cellmaps_coembedding*whl
Needed files
The output directories for the image embeddings (see Cell Maps Image Embedding) and protein-protein interaction network embeddings (see Cell Maps PPI Embedding) are required.
Usage
For information invoke cellmaps_coembeddingcmd.py -h
Example usage
cellmaps_coembeddingcmd.py ./cellmaps_coembedding_outdir --embeddings ./cellmaps_image_embedding_outdir ./cellmaps_ppi_embedding_outdir
Via Docker
Example usage
Coming soon...
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
History
1.2.2 (2025-05-15)
Updated to PEP 517 compliant build system
Bug fixes: update constants, add back L2 normalization and fix separator issue for proteinGPS
1.2.1 (2025-04-14)
Fix scipy package version
1.2.0 (2025-03-19)
Added functionality to generate umap of embeddings (in cellmaps_coembedding.utils)
1.1.0 (2025-03-05)
Added functionality to evaluate embeddings using statistical analysis and visualization (functions get_embedding_eval_data and generate_embedding_evaluation_figures in cellmaps_coembedding.utils).
Update defauls (EPOCHS and DROPOUT)
1.0.0 (2025-01-28)
Rename auto coembedding name and proteinGPS. –algorithm auto option is depreacted and –algorithm proteingps should be used. The coembedding implementation was moved to ProteinGPSCoEmbeddingGenerator class and AutoCoEmbeddingGenerator is deprecated and calls proteingps. The package name was renamed from autoembed_sc to proteingps.
Added mean_losses mean loses flag and argument in ProteinGPSCoEmbeddingGenerator. If set, uses mean of losses otherwise sum of losses.
Constants updated in ProteinGPSCoEmbeddingGenerator (triplet_margin=0.2) and in proteingps’s fit_predict (triplet_margin=0.2, lambda_reconstruction=5.0, lambda_triplet=5.0)
Bug fix: add missing a .to(device) call to ensure tensors are correctly moved to the appropriate device.
Update version bounds of required packages
0.4.0 (2024-12-02)
Added README generation.
Refactor code.
0.3.1 (2024-09-13)
Bug fix: raise more informative error when no embeddings overlap.
0.3.0 (2024-09-06)
Added --provenance flag to pass a path to json file with provenance information. This removes the necessity of input directory to be an RO-Crate.
0.2.0 (2024-07-17)
Added a new coembedding algorithm accessible via flag --algorithm auto. This algorithm utilizes neural networks to generate latent embeddings, optimizing both reconstruction and triplet losses to improve embedding accuracy by learning intra- and inter-modality relationships.
0.1.0 (2024-02-12)
First release on PyPI.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file cellmaps_coembedding-1.2.2.tar.gz
.
File metadata
- Download URL: cellmaps_coembedding-1.2.2.tar.gz
- Upload date:
- Size: 227.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c383f0fee7e4be4522fee9a2c6f9d6683f1870abc1de712f06dba85b3eea27af |
|
MD5 | f4b4b71ea83b2585ac1520e90f7542b6 |
|
BLAKE2b-256 | 4cee2ac12d7f47c597a12cbbd53720191824322985b4765a1fe30d77c131b0b5 |
File details
Details for the file cellmaps_coembedding-1.2.2-py2.py3-none-any.whl
.
File metadata
- Download URL: cellmaps_coembedding-1.2.2-py2.py3-none-any.whl
- Upload date:
- Size: 244.5 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.8.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62a580445e1bdac42df6b7afb260e47ed72b9a76acf4835e38ed8679a607e295 |
|
MD5 | 343e99e0fe24ea7420e29a8f13417106 |
|
BLAKE2b-256 | 6be5f4884a8522f4b1c9ec965cd56f55335f247713b8105a2576bf06555c91e5 |