Skip to content

Add shoko: fast deterministic GRN inference method - #135

Open
keitarokawada wants to merge 1 commit into
openproblems-bio:mainfrom
keitarokawada:add-shoko-method
Open

keitarokawada wants to merge 1 commit into
openproblems-bio:mainfrom
keitarokawada:add-shoko-method

Conversation

@keitarokawada

Copy link
Copy Markdown

Dear Maintainers and the OpenProblems Team,

We would like to submit a new GRN inference method, Shoko, for evaluation and inclusion in the task_grn_inference benchmark.

Shoko infers TF–gene regulatory networks from pseudobulked expression profiles by evaluating correlations between transcription factors and candidate target genes across biological strata (donor × condition where donor metadata is available; condition otherwise). It then applies a small set of deterministic filters to retain the top 50,000 regulatory edges. Because the pipeline involves no stochastic steps, identical input consistently yields the exact same network. Runtime is on the order of seconds to roughly a minute per dataset, and we hope it might serve as an efficient, deterministic baseline for the benchmark.

This pull request adds the Viash component under src/methods/shoko/ and registers it in run_grn_inference. Two implementation details should be noted for the review:

  • The supporting Python modules reside under resources/, which is matched by the repository's .gitignore rule. For now, we staged them using git add -f, but please let us know if you would prefer updating .gitignore or placing auxiliary modules in a different location.
  • We also removed dictys from the workflow methods list, as its component appears to be absent from the repository and currently causes build failures. If you would prefer to keep workflow fixes separate from method additions, we would be very happy to submit this as an independent pull request.

We verified the integration locally with run_grn_inference and run_grn_evaluation (Viash 0.9.4, Nextflow 24.10.4, native engine), successfully reproducing our reference networks and evaluation metrics across 12 datasets. Because our local development environment lacks a Docker daemon, our testing was limited to the native engine. The dependencies are standard scientific Python libraries (anndata, numpy, pandas, scipy, h5py), but should any issues arise during container builds or CI execution, please let us know and we will address them promptly.

Thank you very much for your time, consideration, and for maintaining this benchmarking resource. We welcome any feedback or requested changes.

Sincerely,
Keitaro Kawada

Adds the shoko viash component (src/methods/shoko/, namespace
grn_methods) and registers it in the run_grn_inference workflow.

Also removes dictys from the workflow methods list: the dictys component
is not present in the repository, so the workflow fails at build time
with it included.
@janursa

janursa commented Sep 20, 2026

Copy link
Copy Markdown
Contributor

@keitarokawada thank you very much for the contribution. Your work sounds interesting. let me go through it in a bit more detail in the next week or two and write back.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants