# Getting over High-Dimensionality: How Multidimensional Projection Methods Can Assist Data Science
## 4 Multidimensional Projection Approaches and Domains
### Sammon's Mapping and Related Projections  
In some cases, the obligation of dissimilarities maintenance during the transformation process can be restrictive, generating poor mapping. In this scenario, techniques based on nonlinear optimization emerged. This class of global methods is derived from MDS theory and maps original space to the visual space by minimizing a loss function \(g\) in such a way that \(d(y_{i},y_{j})\approx g(\delta(x_{i},x_{j}))\). Gradient descent is a well-known algorithm for minimization problems, and it is used in the following projection methods. Gradient descent walks in the opposite sense of the function gradient \(-\
abla f(\vec{x}(k))\), with steps that have an \(\alpha\) size (varying each iteration defined by a line search satisfying the Wolfe conditions or the Barzilai-Borwein method). The step size is defined by applying some algorithm or a heuristic method. Finally, each update step is defined as \(\vec{x}(k+1)=\vec{x}(k)-\alpha(k)\
abla f(\vec{x}(k))\) and the algorithm is finished when the gradient function stops the changes or a maximum number of \(k>0\) is reached. The gradient, also known as the slope of a line, is defined as the ratio of the change, and whenever the gradient is perpendicular to \(\vec{x}(k)\), then it will be the negative reciprocal of the original line. [PERSON] [35] was the first one to model the projection problem as an optimization problem that seeks to generate a layout that minimizes the quadratic difference between original data dissimilarities and the projected data distances. This quadratic difference is well-known as the _stress_ function (Equation (5)) and will be identified here by \(S_{T}\). Then, [PERSON] [35] used Gradient Descent to find values that minimize the _stress_ function. With \(\vec{x}(k)\) being a vector with all the \(n\) instances of \(X\) after the \(k\)-th interaction, the minimization process updates the mapping with the following equation:  
\[\vec{x}(k+1)=\vec{x}(k)-\alpha\bigg{(}\frac{\partial S_{T}(k)}{\partial\vec{ x}(k)}\bigg{/}\bigg{|}\frac{\partial S_{T}(k)}{\partial\vec{x}(k)}\bigg{|} \bigg{)} \tag{12}\]  
In this process, the normalization of the gradient is applied not to change the magnitude of \(\vec{x}(k)\). [PERSON]'s method is related to [PERSON]'s Mapping [53], one of the best-known dimensionality reduction techniques in the InfoVis area. The latter introduces a loss function normalization in a different way, which can be figured out when comparing Equation (5) (used by [PERSON]) and Equation (13) (applied by [PERSON]). [PERSON] [53] mapping also uses Gradient Descent to minimize the information lost in the transformation process while preserving the global data dissimilarities of the original space by finding a local minimum solution [9; 54]. \[E=\frac{1}{\sum\limits_{i<j}\delta(x_{i},x_{j})}\sum\limits_{i<j}\frac{(\delta(x_ {i},x_{j})-d(y_{i},y_{j}))^{2}}{\delta(x_{i},x_{j})} \tag{13}\]  
Note that Equation (13) is weighted by the sum of \(\delta(x_{i},x_{j})^{-1}\), which gives more importance to small dissimilarities. This characteristic enables [PERSON]'s Mapping to project data with high dimensionality; however, it can generate distortions in multidimensional data with nonlinear relations, an issue that also appears in [PERSON]'s method [9]. [PERSON] [53] defined the update steps as the following equation:  
\[y_{i}(k+1)=y_{i}(k)-\beta\Delta_{i}(k), \tag{14}\]  
such that the step size \(\beta\) can be into the interval \(0.3\leq\beta\leq 0.4\) and defined by:  
\[\Delta_{it}(k)=\frac{\partial E(k)}{\partial y_{it}(k)}\bigg{/}\bigg{|}\frac{ \partial^{2}E(k)}{\partial y_{it}^{2}(k)}\bigg{|}. \tag{15}\]  
Another issue related to [PERSON]'s and [PERSON]'s methods is the quadratic computational complexity (\(O(kn^{2})\) operations, see Table 1). To mitigate it, [PERSON] et al. [54] developed a strategy that, in the first step, maps a subset with \(s\) samples to visual space using [PERSON]'s Mapping.