Difference between "res_decision_values" and "signed_decision_values" in TDT

Hello. I am using the decoding toolbox (TDT) with SPM12. I did a decoding analysis where I got both res_decision_values" and “signed_decision_values” as the output. I assumed that “res_decision_values” would only provide decision values that are greater than 0 (positive). However this doesn’t seem to be the case. I also looked at what the sign is coding for and unfortunately it looks arbitrary.

In the analysis I did, both predicted and true values can take on values {0,1}. Just skimming over the decision value, predicted label, and the true label shows that there is no clear cut relationship between the sign of the decision value
dVal pred. true
" 23 -0.010038 0 1
25 0.0047602 0 0
27 0.0022084 0 1
29 0.0073449 0 0
31 0.020894 1 1
47 0.019534 0 1
49 -0.010381 0 0 "

Any guidance is appreciated!

Hi Defne,

res_decision_values and signed_decision_values have a simple relationship. Signed_decision_values simply inverts the sign for one of the decision values, turning it into something like the confidence in a classification irrespective of the class.

I’m not entirely certain why the results you are getting look arbitrary but I also don’t quite know where your results are coming from. If you could share your input script / function then this might be easier to fix. Also, just for the sake of doing so, could you try {1,-1} as labels to make sure that there is no weird bug related to using {0,1}? Would be great!

Best,
Martin