Add full RC-KT reproducibility workflow - #591
Open
skim0119 wants to merge 8 commits into
Open
Conversation
skim0119
force-pushed
the
feat/rc-kt-example
branch
from
August 26, 2026 16:30
5eda05f to
f935b3b
Compare
skim0119
force-pushed
the
feat/rc-kt-example
branch
from
August 27, 2026 01:43
f935b3b to
b3da2e9
Compare
skim0119
force-pushed
the
feat/rc-kt-example
branch
from
August 27, 2026 01:49
b3da2e9 to
ee35160
Compare
Collaborator
Author
|
Block merge. Release state space embedding modules |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## pub/RC-KT #591 +/- ##
==========================================
Coverage 86.25% 86.25%
==========================================
Files 28 28
Lines 1157 1157
Branches 115 115
==========================================
Hits 998 998
Misses 134 134
Partials 25 25
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Ephys/StimulusMiV HDF5 groups without downsamplingKnowledge-transfer workflow
KT.pytreats the expert and student recordings as paired responses to the same experimental input. Their independently imported, filtered, detected, decoded, and trialized streams feed oneKnowledgeTransferInputBuilder, followed by explicit GPFA, projection, readout, and transplant nodes:The GPFA fits, latent projections, expert readout, and transplant each retain independent caches and callbacks. The exposed
expert_gpfa >> student_gpfaedge is intentional and limited to passing frozen expert kernel parameters into the student observation fit. The terminal result contains the paired latent features, expert readout, block-diagonal transform, and transplanted/refined weights.The script then evaluates immediate transplant, a student scratch baseline, and prior-centered refinement over increasing student-training fractions. It records whether the expert kernel parameters were frozen for the student fit.
Parsl and Slurm topology
normal, 48 hours, one task and four cores per node.run_tasks()wraps each independent scientific unit in a Parslpython_app.AdHocProviderattaches workers to the existing allocation through local/SSH channels and never invokessbatch.AdHocProviderconfiguration.Outputs
summary.jsonwith configuration, versions, seed, included recordings, runtimes, failures, and headline metrics.Dependencies
Built on operator PR #590 and dependency PR #588. The branch intentionally contains their commits until those PRs are integrated into
pub/RC-KT.Protocol conventions for review
The manifest, rather than filenames, is authoritative for inclusion and expert/student pairing. The code records the inferred GPFA timescale bounds and exposes implementation conventions not stated explicitly in the SI.
Validation
Focused lint, compilation, manifest, HDF5 conversion, grouped-import, Slurm, import-smoke, operator, callback, and paired-input KT checks pass locally (17 tests). Real data and cluster execution are intentionally not acceptance requirements.