Included Decision Trees

Two decision trees are currently distributed with tedana.

kundu is the decision tree that is based on MEICA version 2.5 and has been included with tedana since the start of this project. While multiple publications have used and benefits from this decision, tree, but it includes many steps with arbitrary thresholds and, when components seem misclassified, it’s often hard to understand why.

minimal is a simplified version of that decision tree with fewer steps and arbitrary thresholds. Minimal is designed to be more stable and comprehensible, but it has not yet be extensively validated and parts of the tree may change in response to additional tests on a wider range of data sets.

Flowcharts describing the steps in both trees are below. As documented more in Understanding and building a component selection process, the input to each tree is a table with metrics, like \kappa or \rho, for each component. Each step or node in the decision tree either calculates new values or changes component classifications based on these metrics. When a component classification changes to accept or reject, a classification_tag is also assigned which may help understand why a component was given a specific classification.

Each step in the flow chart is labeled with a node number. If tedana is run using one of these trees, those node numbers will match the numbers in the ICA status table and the ICA decision tree that are described in Output filename descriptions. These node numbers can be used to see when in the process a component’s classifiation changed.

Legend for Decision Tree Flow Charts

Kundu decision tree

Nodes 1-5 reject components that are very unlikely to be BOLD. In nodes 9-10 components where \kappa > \kappa elbow and \rho < \rho elbow are classified as provisional accept. A non-obvious aspect of this decision tree is that no decision node below this point distinguishes components that are provisional accept from components that are still unclassified and nothing that does not cross the \kappa and \rho elbow thresholds is inherantly rejected. The number of provisional accept components is used to see if the process should be restarted (node 11) and calculate other thresholds (nodes 12-16 & 20), but nothing is directly accepted or rejected based on the elbow thresholds. Several additional criteria are used to reject components (nodes 17, 21, & 22). In older versions of tedana components were classified as ignored. This meant too small/minor to lose a degree of freedom by rejecting so treat like the accepted components. This was widely confusing to many users so they are now classified as accepted but with classification tags low variance (node 18) or accept borderline (nodes 24 & 25).

Kundu Decision Tree Flow Chart

LaTeX file to generate the kundu decision tree flow chart

Minimal decision tree

The minimal tree starts similarly to the kundu tree by rejecting components that are very unlikely to be BOLD (nodes 1-5). Then all components where \kappa > \kappa elbow and \rho < \rho elbow are provisional accept and otherwise are provisional reject (nodes 8 & 10). The only expection to this is if \kappa > \kappa elbow and \kappa > 2* \rho than it is provisional accept regardless of the \rho elbow under the assumption that there is enough T2* weighted signal the component should not be rejected even if it also contains noise (node 9). If provisional reject components have very low variance they are accepted rather than losing degrees of freedom, but no more than 1% of the total variance can be accepted this way (node 11). After that point, everything that is provisional accept is accepted (node 12) and everything that is provisional reject is rejected (node 13)

Minimal Decision Tree Flow Chart

LaTeX file to generate the minimal decision tree flow chart