Skip to content

Commit 7dfd58d

Browse files
committed
Retarget docs to OpenNeuro ds007262 v1.0.6
1 parent 99b544f commit 7dfd58d

7 files changed

Lines changed: 38 additions & 15 deletions

File tree

README.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Physiological Workload ML Pipeline
22

3-
Standalone repository for reproducing the multimodal cognitive-workload pipeline used on the BIDS arithmetic dataset. The codebase covers dataset acquisition, trial-table construction, QC, preprocessing, epoching, unimodal feature extraction, fused-table assembly, split-aware machine learning, confusion analysis, and publication-oriented reporting.
3+
Analysis repository for the OpenNeuro study [`ds007262` version `1.0.6`](https://openneuro.org/datasets/ds007262/versions/1.0.6), titled `Cognitive Workload 8-level arithmetic` (DOI `10.18112/openneuro.ds007262.v1.0.6`). The codebase covers dataset acquisition, trial-table construction, QC, preprocessing, epoching, unimodal feature extraction, fused-table assembly, split-aware machine learning, confusion analysis, and publication-oriented reporting for this specific study snapshot.
44

55
## Repository layout
66

@@ -11,7 +11,7 @@ Standalone repository for reproducing the multimodal cognitive-workload pipeline
1111
- `data/`: local BIDS dataset root (ignored).
1212
- `analysis_pipeline/runs/`: run-specific outputs (ignored).
1313

14-
This repository is intentionally separate from any BIDS descriptor or data-publication repository. Track code, configs, and documentation here; keep raw data and generated outputs local.
14+
This repository is intentionally separate from the OpenNeuro dataset record itself. Track code, configs, and documentation here; keep raw data and generated outputs local.
1515

1616
## Quick start
1717

@@ -28,11 +28,12 @@ python -m pip install -r requirements.txt
2828

2929
### 2. Acquire the BIDS dataset
3030

31-
OpenNeuro dataset ID:
31+
OpenNeuro dataset snapshot for this repository:
3232

3333
```powershell
3434
python .\scripts\download_bids.py `
35-
--dataset-id dsXXXXXX `
35+
--dataset-id ds007262 `
36+
--snapshot 1.0.6 `
3637
--target .\data\bids_arithmetic
3738
```
3839

@@ -44,10 +45,10 @@ python .\scripts\download_bids.py `
4445
--target .\data\bids_arithmetic
4546
```
4647

47-
One-command download plus pipeline execution:
48+
One-command download plus pipeline execution for `ds007262` `v1.0.6`:
4849

4950
```powershell
50-
.\scripts\run_end_to_end.ps1 -DatasetId dsXXXXXX -ForceDownload
51+
.\scripts\run_end_to_end.ps1 -DatasetId ds007262 -Snapshot 1.0.6 -ForceDownload
5152
```
5253

5354
### 3. Run a checked-in profile
@@ -66,7 +67,7 @@ python .\analysis_pipeline\run_pipeline.py `
6667
--config .\analysis_pipeline\config\pipeline_unified_classic_nn_baseline_overlap3s_50pct_preproc.yaml
6768
```
6869

69-
The checked-in profiles write under `analysis_pipeline/runs/<profile_name>/`. Both set `outputs.clean_start: true`, so rerunning the same profile replaces that profile's run directory only. If you want to preserve an existing run, copy the YAML and change `outputs.root` or set `clean_start: false`.
70+
The checked-in profiles assume a local copy of OpenNeuro `ds007262` `v1.0.6` under `data/bids_arithmetic`. They write under `analysis_pipeline/runs/<profile_name>/`. Both set `outputs.clean_start: true`, so rerunning the same profile replaces that profile's run directory only. If you want to preserve an existing run, copy the YAML and change `outputs.root` or set `clean_start: false`.
7071

7172
### 4. Run stage subsets
7273

analysis_pipeline/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Analysis Pipeline Package
22

3-
This directory contains the executable stages, config profiles, and supporting modules that drive the end-to-end workload analysis workflow.
3+
This directory contains the executable stages, config profiles, and supporting modules that drive the end-to-end workload analysis workflow for the OpenNeuro `ds007262` `v1.0.6` arithmetic study snapshot.
44

55
## Canonical entry points
66

docs/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
## GitHub-facing documentation
44

55
- `../README.md`
6-
Repository overview, quick start, checked-in profiles, and high-level pipeline summary.
6+
Repository overview, quick start, checked-in profiles, and high-level pipeline summary for OpenNeuro `ds007262` `v1.0.6`.
77
- `pipeline_reference.md`
88
Stage-by-stage reference for the executable pipeline, config structure, and common run patterns.
99
- `reproducibility.md`

docs/pipeline_reference.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Pipeline Reference
22

3-
This document explains how the checked-in pipeline profiles map to the executable code, runtime behavior, and output structure.
3+
This document explains how the checked-in pipeline profiles map to the executable code, runtime behavior, and output structure for the OpenNeuro `ds007262` `v1.0.6` dataset snapshot.
44

55
## Canonical entry points
66

@@ -32,7 +32,7 @@ Important runtime behavior:
3232

3333
Common settings across both profiles:
3434

35-
- BIDS root: `./data/bids_arithmetic`
35+
- BIDS root: `./data/bids_arithmetic` containing OpenNeuro `ds007262` `v1.0.6`
3636
- Stage 1 strict QC enabled
3737
- Stage 2 EEG preprocessing uses a Butterworth pipeline with `eeg_l_freq=2.0` and `eeg_h_freq=40.0`
3838
- Stage 5 builds `features_fused_tutorial_baseline.tsv` and `split_manifest_tutorial_baseline.json`
@@ -246,6 +246,15 @@ python .\analysis_pipeline\run_pipeline.py `
246246
--config .\analysis_pipeline\config\pipeline_unified_classic_nn_baseline_preproc.yaml
247247
```
248248

249+
Download the study snapshot expected by the checked-in profiles:
250+
251+
```powershell
252+
python .\scripts\download_bids.py `
253+
--dataset-id ds007262 `
254+
--snapshot 1.0.6 `
255+
--target .\data\bids_arithmetic
256+
```
257+
249258
Dry run:
250259

251260
```powershell

docs/reproducibility.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Reproducibility and Artifact Policy
22

3-
This repository is intended to keep the pipeline implementation, configs, and human-written documentation under version control while keeping raw data and generated outputs local.
3+
This repository is intended to keep the pipeline implementation, configs, and human-written documentation under version control while keeping raw data and generated outputs local for the OpenNeuro `ds007262` `v1.0.6` study snapshot.
44

55
## What belongs in git
66

@@ -34,11 +34,20 @@ Both configs set `outputs.clean_start: true`. Rerunning either profile replaces
3434
## Recommended local workflow
3535

3636
1. Create the Python environment and install `requirements.txt`.
37-
2. Download or place the BIDS dataset under `data/bids_arithmetic`.
37+
2. Download or place OpenNeuro `ds007262` `v1.0.6` under `data/bids_arithmetic`.
3838
3. Run one of the checked-in profiles through `analysis_pipeline/run_pipeline.py`.
3939
4. If Stage 0 to 5 outputs are already available, rerun only `stage6` or `stage6_confusions` as needed.
4040
5. Build manuscript-facing assets only after the underlying `ml_results*.json` inputs are present locally.
4141

42+
Recommended download command:
43+
44+
```powershell
45+
python .\scripts\download_bids.py `
46+
--dataset-id ds007262 `
47+
--snapshot 1.0.6 `
48+
--target .\data\bids_arithmetic
49+
```
50+
4251
## Linux to Windows handoff for baseline outputs
4352

4453
If Linux already ran the classic and deep baseline training jobs, treat the Linux outputs as the source of truth. On Windows, prefer copying the Stage 6 result artifacts and rebuilding the downstream confusion and reporting assets from those files instead of rerunning Stage 6.

scripts/download_bids.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ def _download_from_archive(url: str, target: Path) -> None:
121121
def main() -> None:
122122
parser = argparse.ArgumentParser(description="Download a BIDS dataset to a local folder.")
123123
source = parser.add_mutually_exclusive_group(required=True)
124-
source.add_argument("--dataset-id", help="OpenNeuro dataset ID (example: ds003XXX).")
124+
source.add_argument("--dataset-id", help="OpenNeuro dataset ID (example: ds007262).")
125125
source.add_argument("--archive-url", help="Direct URL to a BIDS archive (.zip/.tar/.tar.gz/.tgz).")
126126
parser.add_argument("--snapshot", default=None, help="Optional OpenNeuro snapshot tag/version.")
127127
parser.add_argument(
@@ -132,7 +132,7 @@ def main() -> None:
132132
parser.add_argument(
133133
"--target",
134134
default="data/bids_arithmetic",
135-
help="Local destination folder for the BIDS dataset (default: data/bids_arithmetic).",
135+
help="Local destination folder for the BIDS dataset (default: data/bids_arithmetic for ds007262 v1.0.6).",
136136
)
137137
parser.add_argument("--force", action="store_true", help="Replace target folder if it already exists.")
138138
args = parser.parse_args()

scripts/run_end_to_end.ps1

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
param(
22
[string]$DatasetId = "",
33
[string]$ArchiveUrl = "",
4+
[string]$Snapshot = "1.0.6",
45
[string]$Target = "data/bids_arithmetic",
56
[string]$Config = "analysis_pipeline/config/pipeline_unified_classic_nn_baseline_preproc.yaml",
67
[switch]$ForceDownload
@@ -18,6 +19,9 @@ if ($ForceDownload) {
1819
}
1920
if (-not [string]::IsNullOrWhiteSpace($DatasetId)) {
2021
$downloadArgs += @("--dataset-id", $DatasetId)
22+
if (-not [string]::IsNullOrWhiteSpace($Snapshot)) {
23+
$downloadArgs += @("--snapshot", $Snapshot)
24+
}
2125
} else {
2226
$downloadArgs += @("--archive-url", $ArchiveUrl)
2327
}

0 commit comments

Comments
 (0)