Skip to content

Introduction to Signal Journey

Signal Journey is a specification for creating machine-readable descriptions of biosignal processing pipelines. Its primary goal is to enhance the reproducibility, transparency, and interoperability of complex data analysis workflows commonly found in fields like neuroscience, electrophysiology, and biomedical engineering.

The Problem

Modern biosignal analysis involves numerous steps, diverse software tools (MATLAB, Python, EEGLAB, MNE-Python, etc.), and complex parameter settings. Documenting these pipelines accurately is often challenging, relying on:

  • Handwritten notes in lab notebooks.
  • Comments within analysis scripts.
  • Separate manuscript methods sections.

These methods are prone to errors, omissions, and inconsistencies, making it difficult for researchers to:

  • Understand precisely how data was processed.
  • Reproduce the results reliably.
  • Compare results across different studies or labs.
  • Re-apply or adapt pipelines to new datasets.

The Solution: Signal Journey Files

Signal Journey addresses these challenges by defining a standardized JSON format (*_signalJourney.json) to capture the essential details of a processing pipeline. A Signal Journey file describes:

  • Pipeline Information: Name, version, description.
  • Input Data: Origin and type of the raw data.
  • Processing Steps: A detailed sequence of analysis steps, including:
  • Software used (name, version).
  • Function or command executed.
  • Parameters and their values.
  • Inputs and outputs of each step.
  • Dependencies between steps.
  • Output Data: Description of the final processed data products.
  • Schema Versioning: Ensures compatibility and understanding over time.

Key Benefits

  • Standardization: Provides a common language for describing pipelines.
  • Machine Readability: Allows automated validation, parsing, and potentially visualization or re-execution of pipelines.
  • Reproducibility: Captures the critical details needed to replicate an analysis.
  • Transparency: Makes the entire workflow explicit and understandable.
  • Interoperability: Facilitates sharing and comparison of methods across different tools and platforms.

Next Steps