# Integrated Gradients for Feature Assessment in Point Cloud-Based Data Sets
## 2 Theory
### Integrated Gradients  
Two fundamental axioms of this method are sensitivity and implementation invariance, these are necessary to produce meaningful attributions. Sensitivity: \"every input and baseline that differ in one feature but have different predictions then the differing feature should be given a non-zero attribution\" [15] Implementation invariance: The network is treated as a black box, if input and output are the same so should the attributions.  
Baseline  
A Baseline is motivated by its fundamental need in attribution as no discussion of cause is complete without a comparison [17]. This causation can be expressed in terms of counterfactuals, as described by [PERSON] in his theory of causation:  
\"Where c and e are two distinct possible events, e causally depends on c if and only if, if c were to occur e would occur; and if c were not to occur e would not occur.\"  
Therefore, if c were not to occur, e would not occur, in this case, c not occurring would be the change between the original image and the baseline. For a classification model, this baseline has to meet the requirements of having a high entropy across all classes.  
\begin{table}
\begin{tabular}{|c|c|c|} \hline \((i_{-1},j_{-1})\) & \((i_{,}j_{-1})\) & \((i_{+1},i_{-1})\) \\ \hline \((i_{-1},j)\) & \((i_{,}j)\) & \((i_{+1},j)\) \\ \hline \((i_{-1},j_{+1})\) & \((i_{,}j_{+1})\) & \((i_{+1},j_{+1})\) \\ \hline \end{tabular}
\end{table}
Table 1: Indexing in a 2D image.  
In the Semantic3D dataset, we designate class zero as the \"default class\". Although this makes it challenging to understand why the model marked an object as 'unclassified', the broad definition of this class makes it difficult to gain any meaningful insights. This approach helps us avoid the issue of having to define a distribution that accurately represents the dataset, which could vary for each prediction due to class imbalances and significant differences in class distributions within point clouds. Although these differences can be minimized by sub-sampling point clouds during training, this approach is not practical during evaluation, as a contiguous volume is necessary for visualization.  
An important characteristic of the chosen baseline is the number of steps (referred to as alpha) used in approximating the gradient. This value is influenced by the smoothness of the function being evaluated, the function being a result of the pixel gradients ad different interpolation steps. Given that each alpha requires a separate network pass and that the resulting gradients need to be stored for future processing, a small alpha value is preferred for the sake of performance and memory management. This is particularly important for 3D applications, which tend to have large memory footprints. The minimum feasible alpha value for both networks is determined experimentally, as shown in Figure 5.  
Figure 5 demonstrates how the average normalized pixel gradients converge close to zero after seven iterations. The change in gradients is initially dramatic but quickly stabilizes. In our opinion, this atypically fast convergence is due to the vast number of points predicted in each interpolation, which smooths out many of the large differences found in typical applications for integrated gradients as normally only a couple of points are predicted in each network pass, i.e., for pictures or natural language processing. Rapid convergence is crucial when working with point clouds as even a small number of iterations can consume significant amounts of memory. For instance, the RandLA-Net algorithm, when performing 20 iterations on a point cloud of 5 million points, can require up to 100 GB of Random Access Memory (RAM) during the attribution process. Therefore, using this technique with a large number of interpolations would not be practical.