-
Notifications
You must be signed in to change notification settings - Fork 8
faster modisco for decima #23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR significantly improves the performance of ModISCo (motif discovery) functions in Decima by upgrading to a faster ModISCo implementation and adding new functionality. The primary changes include updating to a faster ModISCo library version, parallelizing attribution loading, and adding seqlet bed file generation.
Key changes:
- Performance optimization through faster ModISCo library and parallel processing
- New motif utility functions for information content, trimming, and motif positioning
- Addition of seqlet bed file generation functionality
Reviewed Changes
Copilot reviewed 11 out of 12 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| setup.cfg | Updates to faster ModISCo library dependency |
| src/decima/utils/motifs.py | New utility functions for motif analysis and trimming |
| src/decima/interpret/modisco.py | Major refactoring with parallelization and new seqlet bed functionality |
| src/decima/core/attribution.py | Parallel processing support for attribution loading |
| src/decima/utils/io.py | BigWig writing improvements and gradient correction options |
| src/decima/hub/init.py | Better error handling for missing model/metadata files |
| src/decima/cli/* | CLI updates to expose new parameters and functionality |
| tests/* | New test coverage for motif utilities and updated existing tests |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Speed up for the decima modisco-pattern function:
Old modisco with #22
New modisco jmschrei/tfmodisco-lite#71
Speed up for the decima modisco-reports function:
Old modisco
New modisco
Runtime of attribution prediction shared and takes on L40 for each replicate:
Code to call attributions:
The step to run modisco:
and step to generate motifs: