FEAT 3 Practical
Practical Overview
This is the third FEAT practical. It leads you through some of
the more advanced usage and concepts in both single-session and higher-level FEAT analysis.
Outlier Inference
In the last practical we have run the group analyses with the outlier de-weighting option
turned off. In this section we will look at the output that is generated when outlier de-weighting
is performed. Note that outlier de-weighting can be performed for any of the mixed effects analyses, but is not applicable to a fixed effects analysis.
In the interest of time, we have provided you with the stripped down results of a group Feat analysis that has
been setup and run with outlier de-weighting for you.
The experiment is looking to infer the group mean effect over a group of 18 subjects. The effect of interest is the
BOLD response in the feedback phase of a decision making experiment.
Move into the group Feat directory corresponding to this lower-level contrast:
cd ~/fsl_course_data/fmri/decmak/decmak.gfeat/cope1.feat
Inside the stats directory are the results of the higher level run with outlier inference turned on.
Take a look at the files in that directory:
ls stats
The prob_outlier1.nii.gz file is a 4D niftii file
giving the probability that each subject has outlier data on a
voxelwise basis. The global_prob_outlier1.nii.gz file is
a 3D niftii file that indicates the proportion of the subjects
classified as outliers at each voxel (see the lecture for more
details). Note there are versions of these files for each variance
group in the analysis. In this case, there was only one variance
group.
Load the global_prob_outlier1 file into Fslview.
fslview stats/global_prob_outlier1.nii.gz
Use File->Add Standard to load in the MNI standard
brain MNI152_T1_2mm_brain. Use File->Add to
load in the prob_outlier1 file, and also load in the
filtered_func_data in the
~/fsl_course_data/fmri/decmak/decmak.gfeat
directory. Note that the filtered_func_data file is a 4D
niftii file of the 18 subjects' first-level effect sizes (COPEs) at
each voxel, in other words the "data" that gets used to calculate the
group average at each voxel.
Select the prob_outlier image and select Tools->Timeseries.
Then de-select the prob_outlier image so that it does not get displayed on the spatial map.
Do the same for filtered_func_data.
Navigate around the brain to see where outlier behaviour occurs, and see how this relates
to the data in the filtered_func_data timeseries plots and to the probability that each subject has outlier data in the prob_outlier1.nii.gz timeseries plots. Which subject is causing the most outlier behaviour?
Inside the stats directory is the file
zstats1_no_outliers. These are the z-stats resulting from
the higher level analysis run with the outlier inference turned off
(note that this would not normally be available when you have run
outlier inference - it is provided for you here to allow you to make
comparisons). Use File->Add to load the z-stats into
Fslview for the analyses with
(~/fsl_course_data/fmri/decmak/decmak.gfeat/stats/zstat1)
and without
(~/fsl_course_data/fmri/decmak/decmak.gfeat/stats/zstat1_no_outliers). Take
a look at how the zstats are changed when there are outliers detected.
Contrasts in Parametric Designs
We can use contrasts in FEAT to investigate different levels of
stimulation. In the following simulated-data example we have 3
different stimulation heights: low, medium and high, and we want to
know if there is a linear or quadratic trend relating stimulation
strength to response strength in different areas of the brain.
Temporal Derivatives
We add temporal derivatives into the model to account for small delays
(in either direction) between the model and the data. We can view this
delay; it may be physiologically interesting. By applying the
following commands you can manipulate the different parameter estimate
values to get a delay image. We will use the audio-visual dataset results that
we have already obtained in the first FEAT practical session:
cd ~/fsl_course_data/fmri/av/fmri.feat/stats
Now use fslmaths to calculate the delay. Make sure that
you mask the delay by the activation - it doesn't make sense to show delay
where the signal looks nothing like the model.
hint
answer
View the output: this is in units of % of TRs. It seems that there
is a fairly consistent shift between the visual model and the
data. Reopen the webpage report in a web browser, for example
open ~/fsl_course_data/fmri/av/fmri.feat/report_poststats.html
You can see this lag in the first timeseries plot as a temporal
displacement between the data plot and the partial model fit; that
partial model fit is the fit due just to EV1 (as COPE1 was [1 0]). Now
look at the full model fit curve; because the temporal derivative
(EV2) is included in the full model fit, it has done a good job of
shifting the complete fit to better match the data.
Interactions
In this section we will look for an interaction effect in the
audio-visual dataset:
cd ~/fsl_course_data/fmri/av
- Type
Feat &
- Press Load and select the design.fsf file in the
fmri.feat directory. This loads up the design we used in the
earlier practical - saving us the effort of having to setup many of
the same options again.
- We have already preprocessed the data
so we do not want to unnecessarily repeat pre-stats. To make
this so, change to Stats + Post-stats, AND change the 4D
data (in the Data section) to be
filtered_func_data.nii.gz from inside the fmri.feat
directory (produced from the previous run). The
filtered_func_data.nii.gz file is the 4D data that was
previously saved in the FEAT output directory when pre-stats was
performed.
- Go to Stats and Full model setup and increase the
number of EVs to 3. Select the third EV and change the Basic
shape to Interaction. The defaults are fine.
- Now go to the contrasts and setup two extra t contrasts to
look for positive and negative interactions: [0 0 1] and [0 0 -1]. Give the contrasts some
helpful
Titles. Press View Design and Efficiency. Study
the design matrix and covariance/eigenvalue plots - you can see from
the Effect required values that the interactions should be
found as efficiently as the primary effects.
- To save time turn off all registrations.
- Now press Go, wait for it to finish and view the
results. Note where the FEAT output directory has been created - with
the name derived from the input data. Identify if there are any areas
of the brain which have positive or negative interactions.
HRF Basis Functions
This section shows you how basis functions can be setup and used in
FEAT. The dataset we will use is a jittered single-event experiment
with 200 time points. The stimulus is heat applied for 3 seconds with
an average inter-stimulus interval of 70 secs. We will only analyze
one slice to allow for quick processing.
cd ~/fsl_course_data/fmri/bf
- Type
Feat &
- Press Select 4D data and select filtdata.nii.gz.
This dataset has already been preprocessed, so change Full
analysis to Stats + Post-stats.
- Set the High pass filter cutoff to 50sec.
- Setup one EV using the Custom (3 column format) file
pain_paradigm.txt. Note that this is the
underlying experimental stimulus and is assumed to also
correspond to the neuronal response to the
stimulus. This needs to be convolved with our assumed HRF.
To start with we will analyze the dataset assuming a fixed Gamma HRF
(no basis functions) and then compare the results with a set of
the optimal linear basis functions.
- Hence, for the EV
leave the Convolution as
Gamma, BUT turn OFF Add temporal derivative
as we want to show the results for when a simple, fixed HRF
is assumed.
- Take a look at the contrasts - the default OC1 contrast of [1] is
fine.
- Press Done and view the design.
- Take a look at the Post-stats tab - the defaults are
fine.
- Turn off all registrations. We are only processing one slice and are
happy to observe the results on a low resolution EPI.
- Press Go and wait for the results. On the FEAT report
page look at the time series plots of data vs model.
We will now process the same data using FMRIB's Linear Optimal Basis Set (FLOBS) and compare the results.
Type Feat &
Press Load and select the design.fsf file in the
filtdata.feat created from the fixed Gamma HRF
analysis we have just performed. This loads up the design we just used -
saving us the effort of having to setup many of the
same options again.
The only bit we need to change is in the Stats tab. We
need to change the Convolution option to
Optimal/custom basis functions.
We can now specify the FMRIB's Linear Optimal Basis Set (FLOBS)
filename we wish to use. By default the FLOBS provided in
$FSLDIR/etc/default_flobs.flobs is used - so leave that selected. You
can generate your own customised FLOBS by selecting Utils->Make_flobs
on the main FEAT setup Gui (if you have time later then come back and
try generating your own basis functions with this GUI and feed that
into FEAT).
Now look at the Contrasts and F-tests tab. We have two
ways of setting up contrasts with basis
functions. This is via consideration of
the "Original EVs" or the "Real
EVs".
The default is to work with the "Original EVs". The "Original
EVs" correspond to the true underlying effects/conditions in the
experiment. Hence, to investigate if the effect is significant, a
simple OC1 contrast [1] suffices.
Now press View Design and the actual design matrix to
be used is displayed. This shows
one EV for each of the
basis functions convolved with the
experimental stimulus. The
single "Original EV" is automatically
expanded into the "Real EVs"
that need to be actually
used in the design matrix
when modelling with basis
functions. Note that
the OC1 [1] contrast
will be actually carried
out by the F1 f contrast. Why is this the correct way to do the test?
Return to Contrasts and F-tests and change Original
EVs to Real
EVs.
The
single "Original EV" is
again automatically
expanded into the "Real EVs"
actually
used in the design matrix,
but now you have control
of the actual contrast
settings used.
Again press View Design and the design should be
exactly the same as
it was before.
Imagine that you want a contrast to test for a negative
effect on an Original EV. What would this look like as a contrast
on the Real EVs? Set one up and switch between Original and Real
EV mode in the GUI to see if you are right. Once you've done this
revert to your original contrasts before proceeding.
Press Done and then press Go and wait for the
results. Take a look at the FEAT report. In particular, look at the
peristimulus plots by clicking on the model fit plots. The
peristimulus plots show the fits to a single epoch of stimulation.
The data actually acquired at each repeat of the stimulation is
plotted as a scatter of points. The "full model fit" on the
peristimulus plot indicates the HRF formed by fitting the basis set to
the data. Compare this FEAT report with the FEAT report from the
single HRF Gamma run previously. Are there any differences?
If you get time at the end of this session try running a range
of different basis sets, e.g. Sinusoidal, FIR. In particular, have a
go at making your own customised basis set (FLOBS) using
Utils->Make_flobs on the main FEAT setup GUI.
Contrast Masking
One problem with using Basis functions is that we have to use f
contrasts to look for a significant effect. These are inherently
two-tailed, hence we can not tell the difference between "activation"
and "deactivation".
An unsophisticated way to remove "deactivation", for example, is to
use Contrast Masking to mask the f test with the t contrast for the
largest basis function EV (C1). Rerun the analysis, but this time
performing this contrast masking (this is setup from the
Post-stats tab on the Feat GUI; you will want to use the
Mask using (Z>0) option). How do the results with and without
this contrast masking differ, and how do the results compare with the
single gamma HRF now?
If you click on the F-stat time course you get the FEAT Time Series
Report for the f-statistic. One useful piece of information available
here is how many voxels passed thresholding for the f-test. It can be
found on the Full model fit - averaged over all active voxels,
weighted by Z-stat values plot. Although the images look similar,
you can see that there is a reduced number. If you have time, find
the two relevant cluster mask images and use fslmaths to subtract
them to easily find the differences.
This is the end of FEAT session 3.