## 4 Application
### Model Parameters  
This section investigates the tuning of the parameters of the proposed method. In the design of the interaction-based convolutional neural network (ICNN), the window size and the level of stride are hyper-parameters. **Window Size. ** Window size is the size of the local area that we focus on run the backward dropping algorithm. For example, in the first artificial example in Section 3.3, the data size is \(6\times 6\). A \(2\times 2\) window means that we start with a local area that investigates the first row and the first two columns and the second row and the first two columns. For each row \(i\) and each column \(j\) in this \(6\times 6\) grid structure, a window size of \(2\times 2\) means a local area of the following \(2\times 2\) matrix:  
\[ \begin{bmatrix}(i,j)&(i,j+1)\\ (i+1,j)&(i+1,j+1)\end{bmatrix} \]  
For a \(2\times 2\) matrix, the BDA iteratively drops a variable amongst these four variables to compute the I-score. The result is a subset of this four variables. We can also change the size of this window to \(3\times 3\), which means we investigate the following matrix:  
\[ \begin{bmatrix}(i,j)&(i,j+1)&(i,j+2)\\ (i+1,j)&(i+1,j+1)&(i+1,j+2)\\ (i+2,j)&(i+2,j+1)&(i+2,j+2)\end{bmatrix} \]  
This means that the BDA will start with nine variables. After omitting the noisy variables within this set, the resulting predictive set is a subset of these nine variables. **Stride Level. ** The level of stride is the number of rows or columns that is skipped. This tuning parameter allows the algorithm to move faster but its disadvantage is that some variables are skipped. For example, we investigate a stride level of one starting from row \(i\) and column \(j\). Assume we use a \(2\times 2\) window and let us start from \((i,j)\). We can visualize this action using the following diagram:  
\[ \begin{array}{ll}\text{Original matrix:}&\begin{bmatrix}(i,j)&(i,j+1)\\ (i+1,j)&(i+1,j+1)\end{bmatrix}\\ \overset{\text{stride}=1}{\longrightarrow}&\begin{bmatrix}(i,j+1)&(i,j+2)\\ (i+1,j+1)&(i+1,j+2)\end{bmatrix}\end{array} \]  
If we are at the end of the column for a row, we move down by moving to the first column of the next row. For example, in a \(6\times 6\) grid structure, assume we are in the last position in a certain row \(i\). The action of a stride level of one can be taken using the following:  
\[ \begin{array}{ll}\text{Original matrix}&\\ \text{in the end of a row:}&\\ \begin{bmatrix}(i,5)&(i,6)\\ (i+1,5)&(i+1,6)\end{bmatrix}\overset{\text{stride}=1}{\longrightarrow}\begin{bmatrix} (i+1,1)&(i+1,2)\\ (i+2,1)&(i+2,2)\end{bmatrix}\end{array} \]  
Again assume we are at row \(i\) and column \(j\). Suppose we set the stride level to two and we want to move down. This means we proceed by an increment of two on the number of rows; the action is as follows:  
\[ \begin{array}{ll}\text{Original matrix:}&\\ \begin{bmatrix}(i,j)&(i,j+1)\\ (i+1,j)&(i+1,j+1)\end{bmatrix}&\overset{\text{stride}=2}{\longrightarrow}& \begin{bmatrix}(i+2,j)&(i+2,j)\\ (i+3,j)&(i+3,j)\end{bmatrix}\end{array} \]If this window is located in the final position of a row, then we move down by skipping one row and we start with the first column. If we have a \(6\times 6\) grid structure, this action is as follows:  
\[ \begin{array}{ll}\text{Original matrix}&\\ \text{in the end of a row:}&\\ \left[\begin{matrix}(i,5)&(i,6)\\ (i+1,5)&(i+1,6)\end{matrix}\right]\stackrel{{\text{stride}=2}}{{ \longrightarrow}}\left[\begin{matrix}(i+2,1)&(i+2,2)\\ (i+3,1)&(i+3,2)\end{matrix}\right]\end{array} \]  
**Starting Point. ** Another tuning parameter that we recommend to adjust is the starting point. The starting point represents the location of the first pixel in the proposed operation. The most common point is starting the rolling window from the pixel located in the first row and the first column. This is illustrated in the following matrix:  
\[\text{Starting point}=1: \begin{bmatrix}\text{X}_{1}&\dots\\ \vdots&\ddots\end{bmatrix} \]  
where the starting point is colored in red.