[pymvpa] redundant voxels

kimberg at mail.med.upenn.edu kimberg at mail.med.upenn.edu
Thu Apr 1 14:50:58 UTC 2010


Hi all.  I have a question about methods that's not really about pymvpa per se -- if this is too inappropriate for this mailing list, please let me know.  I have a structural dataset with one volume per subject and a lot of redundant voxels (i.e., two voxels that have the same value for all subjects).  I have a preprocessing step outside python that creates a mask that effectively strips the redundancy (i.e., masks out all but one of each set of identical voxels, separately within each ROI).  Then I use shogun SVR in PyMVPA to get an error measure for each voxel.  My naive assumption was that removing redundant voxels would never result in a larger error.  But while this is true in most cases, a substantial minority (about a quarter) of the ROIs do benefit from including the redundant voxels.  The difference in error is relatively small (mostly in the 1-3% range), but I was surprised it happens so often.  So I was hoping I could get an expert opinion on whether or not I should be alarmed by this (i.e., it means I'm doing something wrong).  Just for the record, I wasn't planning to do anything with the analyses that included the redundant voxels, I just forgot to create the stripped masks the first time through.

The most relevant lines of the script are below.  Any thoughts would be greatly appreciated.  Thanks,

dan




cc=sg.SVM(svm_impl='libsvr', kernel_type='linear', regression=True)
for mask in masklist:
    myds=NiftiDataset(samples=lmap,mask=mask,labels=n.array(labels))
    cv=CrossValidatedTransferError(
        TransferError(cc,errorfx=RMSErrorFx()),
        NFoldSplitter())
    res=cv(myds)
    print "error for %s is [%g]" % (mask,res)




More information about the Pkg-ExpPsy-PyMVPA mailing list