Hello all,
I have a couple of questions regarding the way the cluster correction simulation in freesurfer works. I've read the wiki pages on the subject, but if I've missed something and any of this is answered elsewhere please let me know. My technical knowledge of these things is not great so I am just trying to get some background. First of all, how does smoothing the data prior to running the simulation affect the results? I've run corrections on the same data smoothed with a 10mm FWHM, and also on completely unsmoothed data, and the cluster results were different. Secondly, what determines whether vertices are neighbors or not? Is there an option to tinker with this or is it predetermined? Lastly, how do the p values of individual vertices factor into the simulation? Are they taken into account when the determination of the max cluster size under the null hypothesis is performed? Thanks in advance,
Nate
1) The smoother the data, the more likely a cluster will be found by chance. When the data are created, they start with some smoothness level. When you smooth them you add more. So you need to match the total level of smoothing when you do the simulations, otherwise your clusters will be way too significant. mri_glmfit creates a fwhm.dat file with an estimate of the total smoothness.
2) Just if they are nearest neighbors. There is no option to tinker with this.
3) Vertices in the maps created by the simulation are thresholded at the level you pass. This is what defines the cluster.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote:
Hello all,
I have a couple of questions regarding the way the cluster correction simulation in freesurfer works. I've read the wiki pages on the subject, but if I've missed something and any of this is answered elsewhere please let me know. My technical knowledge of these things is not great so I am just trying to get some background. First of all, how does smoothing the data prior to running the simulation affect the results? I've run corrections on the same data smoothed with a 10mm FWHM, and also on completely unsmoothed data, and the cluster results were different. Secondly, what determines whether vertices are neighbors or not? Is there an option to tinker with this or is it predetermined? Lastly, how do the p values of individual vertices factor into the simulation? Are they taken into account when the determination of the max cluster size under the null hypothesis is performed? Thanks in advance,
Nate
Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
I have recently run simulations with and without the FWHM flag, and the results were 100% identical, in both the mgh output and cluster summary files. From what is below, I would think that the results should have changed in at least some way. The original qdec analysis was run with 10mm smoothing, and the sims (mc-full, 10k) were run with and without 10mm smoothing.
Is there a certain point at which one would not expect smoothing in the simulations to not matter?
--------- Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
Douglas N Greve wrote:
<div class="moz-text-flowed" style="font-family: -moz-fixed">1) The smoother the data, the more likely a cluster will be found by chance. When the data are created, they start with some smoothness level. When you smooth them you add more. So you need to match the total level of smoothing when you do the simulations, otherwise your clusters will be way too significant. mri_glmfit creates a fwhm.dat file with an estimate of the total smoothness.
- Just if they are nearest neighbors. There is no option to tinker with
this.
- Vertices in the maps created by the simulation are thresholded at the
level you pass. This is what defines the cluster.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote:
Hello all,
I have a couple of questions regarding the way the cluster correction simulation in freesurfer works. I've read the wiki pages on the subject, but if I've missed something and any of this is answered elsewhere please let me know. My technical knowledge of these things is not great so I am just trying to get some background. First of all, how does smoothing the data prior to running the simulation affect the results? I've run corrections on the same data smoothed with a 10mm FWHM, and also on completely unsmoothed data, and the cluster results were different. Secondly, what determines whether vertices are neighbors or not? Is there an option to tinker with this or is it predetermined? Lastly, how do the p values of individual vertices factor into the simulation? Are they taken into account when the determination of the max cluster size under the null hypothesis is performed? Thanks in advance,
Nate
Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
Sorry, I mistyped. To clarify, the original qdec analyses were run on the 10mm smoothed data from qcache, and the sims were then run with and without passing the value from fwhm.dat into the FWHM flag in mri_glmfit.
--------- Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
James Porter wrote:
I have recently run simulations with and without the FWHM flag, and the results were 100% identical, in both the mgh output and cluster summary files. From what is below, I would think that the results should have changed in at least some way. The original qdec analysis was run with 10mm smoothing, and the sims (mc-full, 10k) were run with and without 10mm smoothing.
Is there a certain point at which one would not expect smoothing in the simulations to not matter?
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
Douglas N Greve wrote:
<div class="moz-text-flowed" style="font-family: -moz-fixed">1) The smoother the data, the more likely a cluster will be found by chance. When the data are created, they start with some smoothness level. When you smooth them you add more. So you need to match the total level of smoothing when you do the simulations, otherwise your clusters will be way too significant. mri_glmfit creates a fwhm.dat file with an estimate of the total smoothness.
- Just if they are nearest neighbors. There is no option to tinker
with this.
- Vertices in the maps created by the simulation are thresholded at
the level you pass. This is what defines the cluster.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote:
Hello all,
I have a couple of questions regarding the way the cluster correction simulation in freesurfer works. I've read the wiki pages on the subject, but if I've missed something and any of this is answered elsewhere please let me know. My technical knowledge of these things is not great so I am just trying to get some background. First of all, how does smoothing the data prior to running the simulation affect the results? I've run corrections on the same data smoothed with a 10mm FWHM, and also on completely unsmoothed data, and the cluster results were different. Secondly, what determines whether vertices are neighbors or not? Is there an option to tinker with this or is it predetermined? Lastly, how do the p values of individual vertices factor into the simulation? Are they taken into account when the determination of the max cluster size under the null hypothesis is performed? Thanks in advance,
Nate
Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
Can you send your mri_glmfit and mri_surfcluster command-lines?
doug
James Porter wrote:
Sorry, I mistyped. To clarify, the original qdec analyses were run on the 10mm smoothed data from qcache, and the sims were then run with and without passing the value from fwhm.dat into the FWHM flag in mri_glmfit.
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
James Porter wrote:
I have recently run simulations with and without the FWHM flag, and the results were 100% identical, in both the mgh output and cluster summary files. From what is below, I would think that the results should have changed in at least some way. The original qdec analysis was run with 10mm smoothing, and the sims (mc-full, 10k) were run with and without 10mm smoothing.
Is there a certain point at which one would not expect smoothing in the simulations to not matter?
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
Douglas N Greve wrote:
<div class="moz-text-flowed" style="font-family: -moz-fixed">1) The smoother the data, the more likely a cluster will be found by chance. When the data are created, they start with some smoothness level. When you smooth them you add more. So you need to match the total level of smoothing when you do the simulations, otherwise your clusters will be way too significant. mri_glmfit creates a fwhm.dat file with an estimate of the total smoothness.
- Just if they are nearest neighbors. There is no option to tinker
with this.
- Vertices in the maps created by the simulation are thresholded at
the level you pass. This is what defines the cluster.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote:
Hello all,
I have a couple of questions regarding the way the cluster correction simulation in freesurfer works. I've read the wiki pages on the subject, but if I've missed something and any of this is answered elsewhere please let me know. My technical knowledge of these things is not great so I am just trying to get some background. First of all, how does smoothing the data prior to running the simulation affect the results? I've run corrections on the same data smoothed with a 10mm FWHM, and also on completely unsmoothed data, and the cluster results were different. Secondly, what determines whether vertices are neighbors or not? Is there an option to tinker with this or is it predetermined? Lastly, how do the p values of individual vertices factor into the simulation? Are they taken into account when the determination of the max cluster size under the null hypothesis is performed? Thanks in advance,
Nate
Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
Hi Doug-
You can see the full logs & a screenshot of the mgh files here: https://netfiles.umn.edu/xythoswfs/webui/_xy-10431983_1-t_4xQ4HIVC
Below are the commands (full pathways removed for brevity) that I ran.
-Jim
# mri glmfit command & fwhm listing from original qdec log mri_glmfit --y 168.All.FAS.lh.qdec/y.mgh --fsgd 168.All.FAS.lh.qdec/qdec.fsgd dods --glmdir 168.All.FAS.lh.qdec --surf fsaverage lh --label $SUBJECTS_DIR/fsaverage/label/lh.cortex.label --C 168.All.FAS.lh.qdec/contrasts/lh-Avg-Intercept-thickness.mat --C 168.All.FAS.lh.qdec/contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat
ResidualFWHM 16.296576
# an example of the glmfit simulation commands with smoothing cd 168.All.FAS.lh.qdec/ mri_glmfit --y y.mgh --C contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat --mask mask.mgh --sim mc-z 500 1.3 csd/mc-z.abs.p05.sim1 --sim-sign abs --fwhm 16.296576 --fsgd y.fsgd --surf fsaverage lh
# command for clustering of the doubly smoothed data # note: if I try to pass fwhm into mri_surfcluster, I get an error that it can't be done with the 'abs' flag mri_surfcluster --hemi lh --subject fsaverage --in lh-Avg-thickness-FAS_Tot-Cor/sig.mgh --sum lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.p001.sum --cwsig lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.p001.mgh --annot aparc --thmin 3 --sign abs --csd csd/mc-z.abs.p001.sim10-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim1-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim2-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim3-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim4-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim5-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim6-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim7-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim8-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim9-lh-Avg-thickness-FAS_Tot-Cor.csd
# command from the no smoothing glmfit sims cd 168.All.FAS.lh.qdec/ mri_glmfit --y y.mgh --C contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat --mask mask.mgh --sim mc-z 500 3 csd/mc-z.nosmooth.abs.p001.sim2 --sim-sign abs --fwhm 0 --fsgd y.fsgd --surf fsaverage lh
# no smoothing clustering command mri_surfcluster --hemi lh --subject fsaverage --in lh-Avg-thickness-FAS_Tot-Cor/sig.mgh --sum lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.nosmooth.p001.sum --cwsig lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.nosmooth.p001.mgh --annot aparc --thmin 3 --sign abs --olab FAS_168.All.FAS.lh.mc-z.nosmooth.p001 --csd csd/mc-z.nosmooth.abs.p001.sim10-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim1-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim2-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim3-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim4-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim5-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim6-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim7-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim8-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim9-lh-Avg-thickness-FAS_Tot-Cor.csd
Douglas N Greve wrote:
Can you send your mri_glmfit and mri_surfcluster command-lines?
doug
James Porter wrote:
Sorry, I mistyped. To clarify, the original qdec analyses were run on the 10mm smoothed data from qcache, and the sims were then run with and without passing the value from fwhm.dat into the FWHM flag in mri_glmfit.
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
James Porter wrote:
I have recently run simulations with and without the FWHM flag, and the results were 100% identical, in both the mgh output and cluster summary files. From what is below, I would think that the results should have changed in at least some way. The original qdec analysis was run with 10mm smoothing, and the sims (mc-full, 10k) were run with and without 10mm smoothing.
Is there a certain point at which one would not expect smoothing in the simulations to not matter?
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
Douglas N Greve wrote:
<div class="moz-text-flowed" style="font-family: -moz-fixed">1) The smoother the data, the more likely a cluster will be found by chance. When the data are created, they start with some smoothness level. When you smooth them you add more. So you need to match the total level of smoothing when you do the simulations, otherwise your clusters will be way too significant. mri_glmfit creates a fwhm.dat file with an estimate of the total smoothness.
- Just if they are nearest neighbors. There is no option to tinker
with this.
- Vertices in the maps created by the simulation are thresholded at
the level you pass. This is what defines the cluster.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote:
Hello all,
I have a couple of questions regarding the way the cluster correction simulation in freesurfer works. I've read the wiki pages on the subject, but if I've missed something and any of this is answered elsewhere please let me know. My technical knowledge of these things is not great so I am just trying to get some background. First of all, how does smoothing the data prior to running the simulation affect the results? I've run corrections on the same data smoothed with a 10mm FWHM, and also on completely unsmoothed data, and the cluster results were different. Secondly, what determines whether vertices are neighbors or not? Is there an option to tinker with this or is it predetermined? Lastly, how do the p values of individual vertices factor into the simulation? Are they taken into account when the determination of the max cluster size under the null hypothesis is performed? Thanks in advance,
Nate
Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
The cluster sizes/locations won't change because those are dependent on your actual data, not the simulation. If you change the smoothing level in the QDEC analysis, you will find that the cluster sizes/locations change. The simulation is only for computing the pvalues (CWP) of the clusters, and that does look like it has changed substantially between the two simulations.
doug
James Porter wrote:
Hi Doug-
You can see the full logs & a screenshot of the mgh files here: https://netfiles.umn.edu/xythoswfs/webui/_xy-10431983_1-t_4xQ4HIVC
Below are the commands (full pathways removed for brevity) that I ran.
-Jim
# mri glmfit command & fwhm listing from original qdec log mri_glmfit --y 168.All.FAS.lh.qdec/y.mgh --fsgd 168.All.FAS.lh.qdec/qdec.fsgd dods --glmdir 168.All.FAS.lh.qdec --surf fsaverage lh --label $SUBJECTS_DIR/fsaverage/label/lh.cortex.label --C 168.All.FAS.lh.qdec/contrasts/lh-Avg-Intercept-thickness.mat --C 168.All.FAS.lh.qdec/contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat
ResidualFWHM 16.296576
# an example of the glmfit simulation commands with smoothing cd 168.All.FAS.lh.qdec/ mri_glmfit --y y.mgh --C contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat --mask mask.mgh --sim mc-z 500 1.3 csd/mc-z.abs.p05.sim1 --sim-sign abs --fwhm 16.296576 --fsgd y.fsgd --surf fsaverage lh
# command for clustering of the doubly smoothed data # note: if I try to pass fwhm into mri_surfcluster, I get an error that it can't be done with the 'abs' flag mri_surfcluster --hemi lh --subject fsaverage --in lh-Avg-thickness-FAS_Tot-Cor/sig.mgh --sum lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.p001.sum --cwsig lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.p001.mgh --annot aparc --thmin 3 --sign abs --csd csd/mc-z.abs.p001.sim10-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim1-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim2-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim3-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim4-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim5-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim6-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim7-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim8-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim9-lh-Avg-thickness-FAS_Tot-Cor.csd
# command from the no smoothing glmfit sims cd 168.All.FAS.lh.qdec/ mri_glmfit --y y.mgh --C contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat --mask mask.mgh --sim mc-z 500 3 csd/mc-z.nosmooth.abs.p001.sim2 --sim-sign abs --fwhm 0 --fsgd y.fsgd --surf fsaverage lh
# no smoothing clustering command mri_surfcluster --hemi lh --subject fsaverage --in lh-Avg-thickness-FAS_Tot-Cor/sig.mgh --sum lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.nosmooth.p001.sum --cwsig lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.nosmooth.p001.mgh --annot aparc --thmin 3 --sign abs --olab FAS_168.All.FAS.lh.mc-z.nosmooth.p001 --csd csd/mc-z.nosmooth.abs.p001.sim10-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim1-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim2-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim3-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim4-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim5-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim6-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim7-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim8-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim9-lh-Avg-thickness-FAS_Tot-Cor.csd
Douglas N Greve wrote:
Can you send your mri_glmfit and mri_surfcluster command-lines?
doug
James Porter wrote:
Sorry, I mistyped. To clarify, the original qdec analyses were run on the 10mm smoothed data from qcache, and the sims were then run with and without passing the value from fwhm.dat into the FWHM flag in mri_glmfit.
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
James Porter wrote:
I have recently run simulations with and without the FWHM flag, and the results were 100% identical, in both the mgh output and cluster summary files. From what is below, I would think that the results should have changed in at least some way. The original qdec analysis was run with 10mm smoothing, and the sims (mc-full, 10k) were run with and without 10mm smoothing.
Is there a certain point at which one would not expect smoothing in the simulations to not matter?
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
Douglas N Greve wrote:
<div class="moz-text-flowed" style="font-family: -moz-fixed">1) The smoother the data, the more likely a cluster will be found by chance. When the data are created, they start with some smoothness level. When you smooth them you add more. So you need to match the total level of smoothing when you do the simulations, otherwise your clusters will be way too significant. mri_glmfit creates a fwhm.dat file with an estimate of the total smoothness.
- Just if they are nearest neighbors. There is no option to
tinker with this.
- Vertices in the maps created by the simulation are thresholded
at the level you pass. This is what defines the cluster.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote:
Hello all,
I have a couple of questions regarding the way the cluster correction simulation in freesurfer works. I've read the wiki pages on the subject, but if I've missed something and any of this is answered elsewhere please let me know. My technical knowledge of these things is not great so I am just trying to get some background. First of all, how does smoothing the data prior to running the simulation affect the results? I've run corrections on the same data smoothed with a 10mm FWHM, and also on completely unsmoothed data, and the cluster results were different. Secondly, what determines whether vertices are neighbors or not? Is there an option to tinker with this or is it predetermined? Lastly, how do the p values of individual vertices factor into the simulation? Are they taken into account when the determination of the max cluster size under the null hypothesis is performed? Thanks in advance,
Nate
Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
Thanks, Doug. Just so I'm clear: passing mri_glmfit the value in fwhm.dat is the *proper* thing to do, and not giving the simulation that information on the residual smoothness would cause the p-value estimates to be biased towards letting clusters in, yes?
--------- Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
Douglas N Greve wrote:
The cluster sizes/locations won't change because those are dependent on your actual data, not the simulation. If you change the smoothing level in the QDEC analysis, you will find that the cluster sizes/locations change. The simulation is only for computing the pvalues (CWP) of the clusters, and that does look like it has changed substantially between the two simulations.
doug
James Porter wrote:
Hi Doug-
You can see the full logs & a screenshot of the mgh files here: https://netfiles.umn.edu/xythoswfs/webui/_xy-10431983_1-t_4xQ4HIVC
Below are the commands (full pathways removed for brevity) that I ran.
-Jim
# mri glmfit command & fwhm listing from original qdec log mri_glmfit --y 168.All.FAS.lh.qdec/y.mgh --fsgd 168.All.FAS.lh.qdec/qdec.fsgd dods --glmdir 168.All.FAS.lh.qdec --surf fsaverage lh --label $SUBJECTS_DIR/fsaverage/label/lh.cortex.label --C 168.All.FAS.lh.qdec/contrasts/lh-Avg-Intercept-thickness.mat --C 168.All.FAS.lh.qdec/contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat
ResidualFWHM 16.296576
# an example of the glmfit simulation commands with smoothing cd 168.All.FAS.lh.qdec/ mri_glmfit --y y.mgh --C contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat --mask mask.mgh --sim mc-z 500 1.3 csd/mc-z.abs.p05.sim1 --sim-sign abs --fwhm 16.296576 --fsgd y.fsgd --surf fsaverage lh
# command for clustering of the doubly smoothed data # note: if I try to pass fwhm into mri_surfcluster, I get an error that it can't be done with the 'abs' flag mri_surfcluster --hemi lh --subject fsaverage --in lh-Avg-thickness-FAS_Tot-Cor/sig.mgh --sum lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.p001.sum --cwsig lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.p001.mgh --annot aparc --thmin 3 --sign abs --csd csd/mc-z.abs.p001.sim10-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim1-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim2-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim3-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim4-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim5-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim6-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim7-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim8-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim9-lh-Avg-thickness-FAS_Tot-Cor.csd
# command from the no smoothing glmfit sims cd 168.All.FAS.lh.qdec/ mri_glmfit --y y.mgh --C contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat --mask mask.mgh --sim mc-z 500 3 csd/mc-z.nosmooth.abs.p001.sim2 --sim-sign abs --fwhm 0 --fsgd y.fsgd --surf fsaverage lh
# no smoothing clustering command mri_surfcluster --hemi lh --subject fsaverage --in lh-Avg-thickness-FAS_Tot-Cor/sig.mgh --sum lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.nosmooth.p001.sum --cwsig lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.nosmooth.p001.mgh --annot aparc --thmin 3 --sign abs --olab FAS_168.All.FAS.lh.mc-z.nosmooth.p001 --csd csd/mc-z.nosmooth.abs.p001.sim10-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim1-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim2-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim3-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim4-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim5-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim6-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim7-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim8-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim9-lh-Avg-thickness-FAS_Tot-Cor.csd
Douglas N Greve wrote:
Can you send your mri_glmfit and mri_surfcluster command-lines?
doug
James Porter wrote:
Sorry, I mistyped. To clarify, the original qdec analyses were run on the 10mm smoothed data from qcache, and the sims were then run with and without passing the value from fwhm.dat into the FWHM flag in mri_glmfit.
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
James Porter wrote:
I have recently run simulations with and without the FWHM flag, and the results were 100% identical, in both the mgh output and cluster summary files. From what is below, I would think that the results should have changed in at least some way. The original qdec analysis was run with 10mm smoothing, and the sims (mc-full, 10k) were run with and without 10mm smoothing.
Is there a certain point at which one would not expect smoothing in the simulations to not matter?
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
Douglas N Greve wrote:
<div class="moz-text-flowed" style="font-family: -moz-fixed">1) The smoother the data, the more likely a cluster will be found by chance. When the data are created, they start with some smoothness level. When you smooth them you add more. So you need to match the total level of smoothing when you do the simulations, otherwise your clusters will be way too significant. mri_glmfit creates a fwhm.dat file with an estimate of the total smoothness.
- Just if they are nearest neighbors. There is no option to
tinker with this.
- Vertices in the maps created by the simulation are thresholded
at the level you pass. This is what defines the cluster.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote: > Hello all, > > I have a couple of questions regarding the way the cluster > correction simulation in freesurfer works. I've read the wiki > pages on the subject, but if I've missed something and any of > this is answered elsewhere please let me know. My technical > knowledge of these things is not great so I am just trying to get > some background. First of all, how does smoothing the data prior > to running the simulation affect the results? I've run > corrections on the same data smoothed with a 10mm FWHM, and also > on completely unsmoothed data, and the cluster results were > different. Secondly, what determines whether vertices are > neighbors or not? Is there an option to tinker with this or is > it predetermined? Lastly, how do the p values of individual > vertices factor into the simulation? Are they taken into account > when the determination of the max cluster size under the null > hypothesis is performed? Thanks in advance, > > Nate > > _______________________________________________ > Freesurfer mailing list > Freesurfer@nmr.mgh.harvard.edu > https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer > > >
Yes, when you are running the simulation you should pass it the fwhm (new versions *force* you to pass it a fwhm when running the simulation, even if it is 0). And, yes, if you do not give it the proper fwhm (or pass 0), then it will make it more likely that clusters will be deemed significant.
doug
James Porter wrote:
Thanks, Doug. Just so I'm clear: passing mri_glmfit the value in fwhm.dat is the *proper* thing to do, and not giving the simulation that information on the residual smoothness would cause the p-value estimates to be biased towards letting clusters in, yes?
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
Douglas N Greve wrote:
The cluster sizes/locations won't change because those are dependent on your actual data, not the simulation. If you change the smoothing level in the QDEC analysis, you will find that the cluster sizes/locations change. The simulation is only for computing the pvalues (CWP) of the clusters, and that does look like it has changed substantially between the two simulations.
doug
James Porter wrote:
Hi Doug-
You can see the full logs & a screenshot of the mgh files here: https://netfiles.umn.edu/xythoswfs/webui/_xy-10431983_1-t_4xQ4HIVC
Below are the commands (full pathways removed for brevity) that I ran.
-Jim
# mri glmfit command & fwhm listing from original qdec log mri_glmfit --y 168.All.FAS.lh.qdec/y.mgh --fsgd 168.All.FAS.lh.qdec/qdec.fsgd dods --glmdir 168.All.FAS.lh.qdec --surf fsaverage lh --label $SUBJECTS_DIR/fsaverage/label/lh.cortex.label --C 168.All.FAS.lh.qdec/contrasts/lh-Avg-Intercept-thickness.mat --C 168.All.FAS.lh.qdec/contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat
ResidualFWHM 16.296576
# an example of the glmfit simulation commands with smoothing cd 168.All.FAS.lh.qdec/ mri_glmfit --y y.mgh --C contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat --mask mask.mgh --sim mc-z 500 1.3 csd/mc-z.abs.p05.sim1 --sim-sign abs --fwhm 16.296576 --fsgd y.fsgd --surf fsaverage lh
# command for clustering of the doubly smoothed data # note: if I try to pass fwhm into mri_surfcluster, I get an error that it can't be done with the 'abs' flag mri_surfcluster --hemi lh --subject fsaverage --in lh-Avg-thickness-FAS_Tot-Cor/sig.mgh --sum lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.p001.sum --cwsig lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.p001.mgh --annot aparc --thmin 3 --sign abs --csd csd/mc-z.abs.p001.sim10-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim1-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim2-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim3-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim4-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim5-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim6-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim7-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim8-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.abs.p001.sim9-lh-Avg-thickness-FAS_Tot-Cor.csd
# command from the no smoothing glmfit sims cd 168.All.FAS.lh.qdec/ mri_glmfit --y y.mgh --C contrasts/lh-Avg-thickness-FAS_Tot-Cor.mat --mask mask.mgh --sim mc-z 500 3 csd/mc-z.nosmooth.abs.p001.sim2 --sim-sign abs --fwhm 0 --fsgd y.fsgd --surf fsaverage lh
# no smoothing clustering command mri_surfcluster --hemi lh --subject fsaverage --in lh-Avg-thickness-FAS_Tot-Cor/sig.mgh --sum lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.nosmooth.p001.sum --cwsig lh-Avg-thickness-FAS_Tot-Cor/sig.mc-z.nosmooth.p001.mgh --annot aparc --thmin 3 --sign abs --olab FAS_168.All.FAS.lh.mc-z.nosmooth.p001 --csd csd/mc-z.nosmooth.abs.p001.sim10-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim1-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim2-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim3-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim4-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim5-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim6-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim7-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim8-lh-Avg-thickness-FAS_Tot-Cor.csd --csd csd/mc-z.nosmooth.abs.p001.sim9-lh-Avg-thickness-FAS_Tot-Cor.csd
Douglas N Greve wrote:
Can you send your mri_glmfit and mri_surfcluster command-lines?
doug
James Porter wrote:
Sorry, I mistyped. To clarify, the original qdec analyses were run on the 10mm smoothed data from qcache, and the sims were then run with and without passing the value from fwhm.dat into the FWHM flag in mri_glmfit.
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
James Porter wrote:
I have recently run simulations with and without the FWHM flag, and the results were 100% identical, in both the mgh output and cluster summary files. From what is below, I would think that the results should have changed in at least some way. The original qdec analysis was run with 10mm smoothing, and the sims (mc-full, 10k) were run with and without 10mm smoothing.
Is there a certain point at which one would not expect smoothing in the simulations to not matter?
Jim Porter Graduate Student Clinical Science & Psychopathology Research University of Minnesota
Douglas N Greve wrote: > <div class="moz-text-flowed" style="font-family: -moz-fixed">1) > The smoother the data, the more likely a cluster will be found > by chance. When the data are created, they start with some > smoothness level. When you smooth them you add more. So you need > to match the total level of smoothing when you do the > simulations, otherwise your clusters will be way too > significant. mri_glmfit creates a fwhm.dat file with an estimate > of the total smoothness. > > 2) Just if they are nearest neighbors. There is no option to > tinker with this. > > 3) Vertices in the maps created by the simulation are > thresholded at the level you pass. This is what defines the > cluster. > > doug > > Dankner, Nathan (NIH/NIMH) [F] wrote: >> Hello all, >> >> I have a couple of questions regarding the way the cluster >> correction simulation in freesurfer works. I've read the wiki >> pages on the subject, but if I've missed something and any of >> this is answered elsewhere please let me know. My technical >> knowledge of these things is not great so I am just trying to >> get some background. First of all, how does smoothing the data >> prior to running the simulation affect the results? I've run >> corrections on the same data smoothed with a 10mm FWHM, and >> also on completely unsmoothed data, and the cluster results >> were different. Secondly, what determines whether vertices are >> neighbors or not? Is there an option to tinker with this or is >> it predetermined? Lastly, how do the p values of individual >> vertices factor into the simulation? Are they taken into >> account when the determination of the max cluster size under >> the null hypothesis is performed? Thanks in advance, >> >> Nate >> >> _______________________________________________ >> Freesurfer mailing list >> Freesurfer@nmr.mgh.harvard.edu >> https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer >> >> >> >
Doug,
Thanks for the info. One quick follow-up question: Let's say for example the smoothing before I run the simulation is 2.75. When you say I need to match the smoothing, do I achieve that by adding 2.75mm of smoothness to the data before running the cluster simulation? In the qdec GUI it only allows you to smooth in increments of 5. Is there a command line flag that would allow me to choose my own level?
On 8/11/09 5:48 PM, "Douglas N Greve" greve@nmr.mgh.harvard.edu wrote:
1) The smoother the data, the more likely a cluster will be found by chance. When the data are created, they start with some smoothness level. When you smooth them you add more. So you need to match the total level of smoothing when you do the simulations, otherwise your clusters will be way too significant. mri_glmfit creates a fwhm.dat file with an estimate of the total smoothness.
2) Just if they are nearest neighbors. There is no option to tinker with this.
3) Vertices in the maps created by the simulation are thresholded at the level you pass. This is what defines the cluster.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote:
Hello all,
I have a couple of questions regarding the way the cluster correction simulation in freesurfer works. I've read the wiki pages on the subject, but if I've missed something and any of this is answered elsewhere please let me know. My technical knowledge of these things is not great so I am just trying to get some background. First of all, how does smoothing the data prior to running the simulation affect the results? I've run corrections on the same data smoothed with a 10mm FWHM, and also on completely unsmoothed data, and the cluster results were different. Secondly, what determines whether vertices are neighbors or not? Is there an option to tinker with this or is it predetermined? Lastly, how do the p values of individual vertices factor into the simulation? Are they taken into account when the determination of the max cluster size under the null hypothesis is performed? Thanks in advance,
Nate
Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
-- Douglas N. Greve, Ph.D. MGH-NMR Center greve@nmr.mgh.harvard.edu Phone Number: 617-724-2358 Fax: 617-726-7422
In order to help us help you, please follow the steps in: surfer.nmr.mgh.harvard.edu/fswiki/BugReporting
If you are running an MC simulation (not perm) directly from mri_glmfit (and not mri_glmfit-sim) then you must pass it a fwhm or the results will be wrong. The smoothing level is measured by QDEC (mri_glmfit) as part of the analysis. You can't run the simulation from QDEC, so specifying the smoothing level for the simulation from QDEC is not an issue.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote:
Doug,
Thanks for the info. One quick follow-up question: Let's say for example the smoothing before I run the simulation is 2.75. When you say I need to match the smoothing, do I achieve that by adding 2.75mm of smoothness to the data before running the cluster simulation? In the qdec GUI it only allows you to smooth in increments of 5. Is there a command line flag that would allow me to choose my own level?
On 8/11/09 5:48 PM, "Douglas N Greve" greve@nmr.mgh.harvard.edu wrote:
- The smoother the data, the more likely a cluster will be found by
chance. When the data are created, they start with some smoothness level. When you smooth them you add more. So you need to match the total level of smoothing when you do the simulations, otherwise your clusters will be way too significant. mri_glmfit creates a fwhm.dat file with an estimate of the total smoothness.
- Just if they are nearest neighbors. There is no option to tinker with
this.
- Vertices in the maps created by the simulation are thresholded at the
level you pass. This is what defines the cluster.
doug
Dankner, Nathan (NIH/NIMH) [F] wrote:
Hello all,
I have a couple of questions regarding the way the cluster correction simulation in freesurfer works. I've read the wiki pages on the subject, but if I've missed something and any of this is answered elsewhere please let me know. My technical knowledge of these things is not great so I am just trying to get some background. First of all, how does smoothing the data prior to running the simulation affect the results? I've run corrections on the same data smoothed with a 10mm FWHM, and also on completely unsmoothed data, and the cluster results were different. Secondly, what determines whether vertices are neighbors or not? Is there an option to tinker with this or is it predetermined? Lastly, how do the p values of individual vertices factor into the simulation? Are they taken into account when the determination of the max cluster size under the null hypothesis is performed? Thanks in advance,
Nate
Freesurfer mailing list Freesurfer@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer
-- Douglas N. Greve, Ph.D. MGH-NMR Center greve@nmr.mgh.harvard.edu Phone Number: 617-724-2358 Fax: 617-726-7422
In order to help us help you, please follow the steps in: surfer.nmr.mgh.harvard.edu/fswiki/BugReporting
freesurfer@nmr.mgh.harvard.edu