4ac11e20dcd3c2e8e24a430db99b4a5bcf711293
Christoph Budziszewski SVMCrossVal toolbox init

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m           1) % function [decodePerformance rawTimecourse ] = calculateDecodePerformance(des,timeLineStart, timeLineEnd, decodeDuration, svmargs, conditionList, sessionList, voxelList, classList, labelMap,normalize)
Christoph Budziszewski refactored to arg-structs!...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m   2) function outputStruct = calculateDecodePerformance(timeline,inputStruct,subjectParams)
Christoph Budziszewski SVMCrossVal toolbox init

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m           3) 
Christoph Budziszewski using global variables now....

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m   4) global CROSSVAL_METHOD_DEF;
private/calculateDecodePerformance.m   5) 
Christoph Budziszewski refactored to arg-structs!...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m   6) 
Christoph Budziszewski SVMCrossVal toolbox init

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m           7) addpath 'libsvm-mat-2.88-1';
calculateDecodePerformance.m           8) 
Christoph Budziszewski using global variables now....

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m   9) % CROSSVAL_METHOD_DEF = inputStruct.CROSSVAL_METHOD_DEF;
Christoph Budziszewski transport changes

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  10) METHOD              = inputStruct.CROSSVAL_METHOD;
Christoph Budziszewski transport changes

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  11) 
private/calculateDecodePerformance.m  12) RANDOMIZE_DATAPOINTS = inputStruct.RANDOMIZE;
Christoph Budziszewski kleine änderungen code move

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m          13) 
Christoph Budziszewski refactored to arg-structs!...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  14) % SubjectID       = subjectParams.SubjectID;
private/calculateDecodePerformance.m  15) % namehelper      = subjectParams.namehelper;
private/calculateDecodePerformance.m  16) voxelList       = subjectParams.voxelList;
private/calculateDecodePerformance.m  17) des             = subjectParams.des;
private/calculateDecodePerformance.m  18) 
Christoph Budziszewski SVMCrossVal toolbox init

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m          19) outputStruct = struct;
calculateDecodePerformance.m          20) 
calculateDecodePerformance.m          21) svmargs         = inputStruct.svmargs;
calculateDecodePerformance.m          22) sessionList     = inputStruct.sessionList;
Christoph Budziszewski refactored to arg-structs!...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  23) 
Christoph Budziszewski SVMCrossVal toolbox init

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m          24) % classList       = inputStruct.classList;
calculateDecodePerformance.m          25) % labelMap        = inputStruct.labelMap;
Christoph Budziszewski added 2nd classification me...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  26) smoothed        = inputStruct.smoothed;
Christoph Budziszewski SVMCrossVal toolbox init

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m          27) eventList       = inputStruct.eventList;
calculateDecodePerformance.m          28) 
Christoph Budziszewski subject loop is function

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  29) timeLineStart   = timeline.frameShiftStart;
private/calculateDecodePerformance.m  30) timeLineEnd     = timeline.frameShiftEnd;
Christoph Budziszewski refactored to arg-structs!...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  31) % decodeDuration  = timeline.decodeDuration;
private/calculateDecodePerformance.m  32) % globalStart     = timeline.psthStart;
private/calculateDecodePerformance.m  33) % globalEnd       = timeline.psthEnd;
private/calculateDecodePerformance.m  34) % baselineStart   = timeline.baselineStart;
private/calculateDecodePerformance.m  35) % baselineEnd     = timeline.baselineEnd;
Christoph Budziszewski subject loop is function

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  36) 
private/calculateDecodePerformance.m  37) 
Christoph Budziszewski SVMCrossVal toolbox init

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m          38) minPerformance = inf;
calculateDecodePerformance.m          39) maxPerformance = -inf;
Christoph Budziszewski added 2nd classification me...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  40) 
Christoph Budziszewski refactored to arg-structs!...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  41) imageFiles = getImageFileList(des,~smoothed);
private/calculateDecodePerformance.m  42) 
private/calculateDecodePerformance.m  43) 
private/calculateDecodePerformance.m  44) extr = calculateImageData(imageFiles,voxelList);
private/calculateDecodePerformance.m  45) 
private/calculateDecodePerformance.m  46) nVoxel = size(voxelList,1);
private/calculateDecodePerformance.m  47) 
private/calculateDecodePerformance.m  48) calculatePstOpts = struct;
private/calculateDecodePerformance.m  49) calculatePstOpts.des = des;
private/calculateDecodePerformance.m  50) calculatePstOpts.eventList = eventList;
private/calculateDecodePerformance.m  51) calculatePstOpts.sessionList = sessionList;
private/calculateDecodePerformance.m  52) 
private/calculateDecodePerformance.m  53) for iVoxel = 1:nVoxel
Christoph Budziszewski git-svn-id: https://svn.dis...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  54)     rawdata = [];
private/calculateDecodePerformance.m  55)     for iImage = 1:length(extr);
private/calculateDecodePerformance.m  56)         tmp = extr(iImage);
private/calculateDecodePerformance.m  57)         rawdata = [rawdata tmp.dat(iVoxel)];
private/calculateDecodePerformance.m  58)     end
private/calculateDecodePerformance.m  59)     pst{iVoxel} = calculatePST(timeline,calculatePstOpts,rawdata);
Christoph Budziszewski refactored to arg-structs!...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m  60) end
private/calculateDecodePerformance.m  61) 
private/calculateDecodePerformance.m  62) %         for voxel = 1:size(voxelList,1)  % [[x;x],[y;y],[z;z]]
private/calculateDecodePerformance.m  63) %             extr        = calculateImageData(imageFiles,voxelList(voxel,:));
private/calculateDecodePerformance.m  64) %             rawdata     = cell2mat({extr.mean}); % Raw Data
private/calculateDecodePerformance.m  65) %             pst{voxel}  = calculatePST(des,globalStart,baselineStart,baselineEnd,globalEnd,eventList,rawdata,sessionList);
private/calculateDecodePerformance.m  66) %         end
private/calculateDecodePerformance.m  67) 
private/calculateDecodePerformance.m  68) timePointArgs.pst = pst;
private/calculateDecodePerformance.m  69) 
private/calculateDecodePerformance.m  70) timePointArgs.labelMap      = inputStruct.labelMap;
private/calculateDecodePerformance.m  71) timePointArgs.eventList     = eventList;
private/calculateDecodePerformance.m  72) 
private/calculateDecodePerformance.m  73) timePointMatrix = buildTimePointMatrix(timeline,timePointArgs);
private/calculateDecodePerformance.m  74) 
private/calculateDecodePerformance.m  75) decodePerformance = [];
private/calculateDecodePerformance.m  76) for index = 1:timeLineEnd-timeLineStart+1
private/calculateDecodePerformance.m  77) 
private/calculateDecodePerformance.m  78)     svmdata      = timePointMatrix{index}(:,2:size(timePointMatrix{index},2));
private/calculateDecodePerformance.m  79)     svmlabel     = timePointMatrix{index}(:,1);
private/calculateDecodePerformance.m  80) 
private/calculateDecodePerformance.m  81)     if RANDOMIZE_DATAPOINTS
private/calculateDecodePerformance.m  82)         rndindex  = randperm(length(svmlabel));
private/calculateDecodePerformance.m  83)         svmdata   = svmdata(rndindex,:);
private/calculateDecodePerformance.m  84)         svmlabel  = svmlabel(rndindex);
private/calculateDecodePerformance.m  85)     end
private/calculateDecodePerformance.m  86) 
private/calculateDecodePerformance.m  87)     switch METHOD;
private/calculateDecodePerformance.m  88)         case CROSSVAL_METHOD_DEF.svmcrossval
private/calculateDecodePerformance.m  89) 
private/calculateDecodePerformance.m  90)             performance  = svmtrain(svmlabel, svmdata, svmargs);
private/calculateDecodePerformance.m  91) 
private/calculateDecodePerformance.m  92)             minPerformance = min(minPerformance,performance);
private/calculateDecodePerformance.m  93)             maxPerformance = max(maxPerformance,performance);
private/calculateDecodePerformance.m  94) 
private/calculateDecodePerformance.m  95)             decodePerformance = [decodePerformance; performance];
private/calculateDecodePerformance.m  96) 
private/calculateDecodePerformance.m  97)         case CROSSVAL_METHOD_DEF.classPerformance
private/calculateDecodePerformance.m  98) 
private/calculateDecodePerformance.m  99)             newsvmopt = killCrossvalOpt(svmargs);
private/calculateDecodePerformance.m 100) 
private/calculateDecodePerformance.m 101)             model = svmtrain(svmlabel,svmdata,newsvmopt);
private/calculateDecodePerformance.m 102)             classperformance = [];
private/calculateDecodePerformance.m 103)             for class = unique(svmlabel)';
private/calculateDecodePerformance.m 104) 
private/calculateDecodePerformance.m 105)                 filterindex = find(class == svmlabel);
private/calculateDecodePerformance.m 106)                 testing_label = svmlabel(filterindex);
private/calculateDecodePerformance.m 107)                 testing_data  = svmdata(filterindex);
private/calculateDecodePerformance.m 108)                 [plabel accuracy dvalue] = svmpredict(testing_label,testing_data,model,'');
private/calculateDecodePerformance.m 109) 
private/calculateDecodePerformance.m 110)                 classperformance = [classperformance accuracy(1)];
Christoph Budziszewski kleine änderungen code move

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m         111)             end
Christoph Budziszewski refactored to arg-structs!...

Christoph Budziszewski authored 15 years ago

private/calculateDecodePerformance.m 112)             decodePerformance = [decodePerformance; classperformance];
private/calculateDecodePerformance.m 113) 
private/calculateDecodePerformance.m 114)         case CROSSVAL_METHOD_DEF.somTraining
private/calculateDecodePerformance.m 115) 
private/calculateDecodePerformance.m 116)             display('SOM TRAINING');
private/calculateDecodePerformance.m 117)             addpath 'somtoolbox2';
private/calculateDecodePerformance.m 118)             sD = som_data_struct(svmdata,'label',num2str(svmlabel));
private/calculateDecodePerformance.m 119)             assignin('base','sD',sD);
private/calculateDecodePerformance.m 120)             sM = som_make(sD,'msize', [3 3],'lattice', 'hexa');
private/calculateDecodePerformance.m 121) 
private/calculateDecodePerformance.m 122)             assignin('base','sD',sD);
private/calculateDecodePerformance.m 123)             assignin('base','sM',sM);
private/calculateDecodePerformance.m 124)             display('type ''figure'' before visualisation');
private/calculateDecodePerformance.m 125)     end
private/calculateDecodePerformance.m 126) 
private/calculateDecodePerformance.m 127) end
private/calculateDecodePerformance.m 128) 
private/calculateDecodePerformance.m 129) outputStruct.decodePerformance  = decodePerformance;
private/calculateDecodePerformance.m 130) outputStruct.svmdata            = svmdata;
private/calculateDecodePerformance.m 131) outputStruct.svmlabel           = svmlabel;
private/calculateDecodePerformance.m 132) outputStruct.rawTimeCourse      = pst;
private/calculateDecodePerformance.m 133) outputStruct.minPerformance     = minPerformance;
private/calculateDecodePerformance.m 134) outputStruct.maxPerformance     = maxPerformance;
Christoph Budziszewski SVMCrossVal toolbox init

Christoph Budziszewski authored 15 years ago

calculateDecodePerformance.m         135) end
calculateDecodePerformance.m         136)