Title: Batch Programming of fMRI Data Analysis
1Batch Programming of fMRI Data Analysis
- Lars Kasper Christoph Mathys
2Overview
- Introduction Example Dataset
- General fMRI Data Analysis Workflow with SPM
- Quality Assessment of Raw Data
- Spatial Preprocessing
- Statistical Design The General Linear Model
- Results Analyzing Contrast Reporting
- Within-Subject Batching (Single Subject)
- Subject-independent Analysis Steps
- Subject-independent Data Flow (Dependencies)
- Subject-related data
- Between-Subject-Batching (Multiple Subject)
3Overview
- Introduction Example Dataset
- General fMRI Data Analysis Workflow with SPM
- Quality Assessment of Raw Data
- Spatial Preprocessing
- Statistical Design The General Linear Model
- Results Analyzing Contrast Reporting
- Within-Subject Batching (Single Subject)
- Subject-independent Analysis Steps
- Subject-independent Data Flow (Dependencies)
- Subject-related data
- Between-Subject-Batching (Multiple Subject)
4Overview of SPM
Statistical parametric map (SPM)
Image time-series
Design matrix
Kernel
Realignment
Smoothing
General linear model
Gaussian field theory
Statistical inference
Normalisation
p lt0.05
Template
Parameter estimates
5What is batch processing?
- Repeats same data analysis for many subjects
(gt2) - Not prone to human errors, reproducible what was
done - e. g. jobs mat-files
- Runs automatically, no supervision needed
- Researcher can concentrate on assessing the
results - CAVEAT Tempting to forget about all analysis
steps in between which could lead to errors in
your conclusions - Therefore Always make sure, that meaningful
results were created at each step - Using Display/CheckReg to view raw data,
preprocessed data - Using spm_print to save reported supplementary
data output - If anything went wrong, use debugging
63 flavors of batching Goals of this tutorial
- After finishing this session, you will be able to
- analyze fMRI datasets using
- the Graphical User Interface (GUI) of SPM
- The Batch Editor of SPM
- A template Matlab .m-script file to batch very
flexibly
2
1
3
7Introducing the Dataset
- Rik Hensons famous vs non-famous faces dataset
- http//www.fil.ion.ucl.ac.uk/spm/data/face_rep/fa
ce_rep_SPM5.html - Includes a manual with step-by-step instruction
for analysis (homework -)) - Download from SPM homepage (available for SPM5,
but works fine with SPM8)
8Introducing the Dataset
- Factorial 2 x 2 design to investigate repetition
suppression - Question Influence of repeated stimulus
presentation on brain activity (accomodation of
response)? - Each stimulus (pictures of faces) presented twice
during a session - Condition Rep, Level 1 or 2
- lag between presentations randomized
- 26 Famous and 26 non-famous faces to
differentiate between familiarity (long-term
memory) and repetition - Condition Fam, Level F(amous) and N(onfamous)
- Task Decision whether famous or nonfamous
(button-press)
9Introducing the Dataset Published Results
- Right Fusiform face area
- Repetition suppression for familiar/famous faces
- Left Occipital face area (posterior, occip.
extrastriate) - Repetition suppression for familiar AND
unfamiliar faces - Posterior cingulate and bilateral parietal cortex
- Repetition enhancement
10Overview
- Introduction Example Dataset
- General fMRI Data Analysis Workflow with SPM
- Quality Assessment of Raw Data
- Spatial Preprocessing
- Statistical Design The General Linear Model
- Results Analyzing Contrast Reporting
- Within-Subject Batching (Single Subject)
- Subject-independent Analysis Steps
- Subject-independent Data Flow (Dependencies)
- Subject-related data
- Between-Subject-Batching (Multiple Subject)
11Spatial Preprocessing Realign
Batch Editor
Batch File
GUI
FORMAT P spm_realign (P,flags)
12Spatial Preprocessing Unwarp
Batch Editor
Batch File
GUI
uw_params spm_uw_estimate (P,uw_est_flags) spm_
uw_apply (uw_params,uw_write_flags)
13Uhthis takes ages
- Now you can probably value the benefits of batch
processing. If you are still keen on doing all
that by hand (good exercise!), refer to the
following - The SPM manual
- Most current version in your spm8-folder,
sub-folder man/manual.pdf - Rik Hensons famous vs non-famous faces dataset
- http//www.fil.ion.ucl.ac.uk/spm/data/face_rep/fa
ce_rep_SPM5.html - Included in SPM manual, chapter 29, with
step-by-step instruction for analysis - Available for SPM5, but works fine with SPM8
14Overview
- Introduction Example Dataset
- General fMRI Data Analysis Workflow with SPM
- Quality Assessment of Raw Data
- Spatial Preprocessing
- Statistical Design The General Linear Model
- Results Analyzing Contrast Reporting
- Within-Subject Batching (Single Subject)
- Subject-independent Analysis Steps
- Subject-independent Data Flow (Dependencies)
- Subject-related data
- Between-Subject-Batching (Multiple Subject)
15General Workflow for the batch interface
3
1
- Top-down approach
- Specify subject-independent data/analysis steps
- Specify subject-independent file-dependencies
(data flow) - Specify subject-related data (e.g. event-timing)
1
2
2
3
161. The subject-independent analysis parts
- Load all modules first (in right order!)
- Then specify details (where Xs are found) which
are subject independent - TR
- Nslices
- model factors
- contrasts of interest
172. Data-flow specification (subject-independent
dependencies)
- Specify, which results of which steps are input
to another step (DEP-sign) - e.g. smoothed images needed for model spec
- Afterwards save this job as template .mat file
183. Add subject-dependent data/information
- Essentially go to all Xs and fill in appropriate
values - e.g. the .mat-file of the conditions
onsets/durations - Save this job as subject-batch file Run
19Overview
- Introduction Example Dataset
- General fMRI Data Analysis Workflow with SPM
- Quality Assessment of Raw Data
- Spatial Preprocessing
- Statistical Design The General Linear Model
- Results Analyzing Contrast Reporting
- Within-Subject Batching (Single Subject)
- Subject-independent Analysis Steps
- Subject-independent Data Flow (Dependencies)
- Subject-related data
- Between-Subject-Batching (Multiple Subject)
20Between-Subject-Batching (Multiple Subject)
1
3
2
1
- Make sure, parameters to be adjusted have an X
(clear value) for the single subject template - Specify a meta-job with Run batch
- Create one run for every subject and add missing
parameter values (in right order)
2
3
21Resources and Useful Literature
- All step-by-step instructions can be found in the
SPM manual, chapter 40 - Also multiple-session and multiple subjects
processing included - The SPM helpline/mailing list
- E.g. bug precluding the batch-file selector form
working was fixed here, but not in the updates
yet https//www.jiscmail.ac.uk/cgi-bin/webadmin?A2
ind1001LSPMPR39357 - Batch templates are in your spm path
- Configured subject-independent analysis steps
- ltspm8gt/man/batch/face_single_subject_template_nod
eps.m - With dependencies included
- ltspm8gt/man/batch/face_single_subject_template.m
- With multiple subjects
- ltspm8gt/man/batch/face_multi_subject_template.m
22Many, many thanks to
- Klaas Enno Stephan
- The SPM developers (FIL methods group)
23Extending the batchfile with SPM GUI functions
- Debugging
- Generally a good idea to find out how things work
in SPM - Crucial for batch-programming using a .m-file
- Here debug spm.m by setting a breakpoint
- If called function found, use edit
ltfunctionnamegt.m to look at the comments in the
file
24Tuning the engine Matlab workspace variables
- e.g. to manipulate SPM.mat or jobs by hand
- also important during debugging, how variables
are defined and changed