# SSKM_DP: Differential Privacy Data Publishing Method via SFLA-Kohonen Network
## 4 The Proposed Data Publishing Method
### Attribute Correlation Determination Method  
There may be complex correlations between attributes in the data. Some attributes are correlated to each other, while some attributes are independent of each other. If there is a relationship between a non-sensitive attribute and a sensitive attribute, it is likely that sensitive information can be inferred from the non-sensitive attribute. Therefore, when noise is added to sensitive attributes in the data, it is necessary to consider the correlation between the attributes in the data.  
The common methods used to measure the degree of attribute correlation are the Pearson coefficient, mutual information, and k-nearest distance. However, Pearson's coefficient cannot measure nonlinear relationships and non-functional relationships. The mutual information has weak computing power for continuous variables, has low accuracy, and cannot compare the calculation results of different data. KNN needs to calculate the distance between each sample and all sample points, which requires a large amount of calculation. The maximum information coefficient can overcome the shortcomings of the above methods and reflect the correlation degree between attributes more accurately. Therefore, when the SSKM_DP algorithm measures the connection strength between attributes, the maximum information coefficient is adopted as the metric index.  
**Definition 4** (Connection strength).: _Given the properties \(z_{i}\) and\(z_{j}\), the calculation method to define the connection strength between them is shown in Equation (16):_  
\[CS(z_{i}:z_{j})=MIC(z_{i}:z_{j}) \tag{16}\]  
_where MIC is the maximum information coefficient between attribute\(z_{i}\) and\(z_{j}\)._  
Algorithm 4 for finding non-sensitive attributes linked to sensitive attributes is described below:  
```
Input: cluster formed by SFLA-SOM network clustering \(V=\{V_{1},V_{2},\ldots\ldots\). \(V_{m}\}\); Connection strength threshold \(CS_{\text{Tsh}}\) Output: Clusters with sensitive attributes \(Vs\); there exists cluster \(V_{c}\) with non-sensitive attributes strongly connected to sensitive attributes.
1: Mark all sensitive attributes xs in the data
2:\(V_{s}\) add \(V_{i}(xs_{i})\)
3: Calculate Connection strength \(CS\big{(}xs_{i}:xv_{j}\big{)}\)
4:\(CS(xs_{i}:xv_{i})=\max\limits_{a:vc\in\mathcal{B}}\frac{Ma(l(xs_{i}:xv_{j})) }{log_{\text{min}}(a,b)}\)
5:if\(CS\big{(}xs_{i}:xv_{j}\big{)}\leq CS_{\text{Tsh}}\)then
6:\(Vc\) add \(V_{i}(xv_{i})\)
7:endif
8:return\(Vs=\{\,v_{s1},v_{s2},\ldots\ldots\,v_{sp}\}\), \(Vc=\{v_{c1},v_{c2},\ldots\ldots\,v_{cpq}\}\)
```  
**Algorithm 4** Attribute correlation determination method  
Input: Cluster formed by SFLA-SOM network clustering \(V=\{v_{1},v_{2},\ldots,v_{m}\}\); connection strength threshold \(CS_{\text{Tsh}}\).  
Output: Clusters with sensitive attributes \(Vs\); there exists cluster \(V_{c}\) with non-sensitive attributes strongly connected to sensitive attributes.  
Step 1. All sensitive attributes \(xs\) are marked in the data.  
Step 2. The connection strength between each sensitive attribute \(xs_{j}\) and the non-sensitive attribute \(xv_{i}\) of other subset clusters \(CS(xs_{i}:xv_{j})\) is calculated, as shown in Equation (17):  
\[\begin{array}{c}CS(xs_{i}:xv_{j})=MIC(xs_{i}:xv_{j})\\ =\max\limits_{a\times b\leq B}\frac{Max(I(xs_{i}:xv_{j}))}{\log_{2}\min(a,b)} \end{array} \tag{17}\]  
Step 3. It is determined \(CS(xs_{i}:xv_{j})\) whether the connection strength reaches the threshold of the \(CS_{Tsh}\) connection strength. If \(CS(xs_{i}:xv_{j})\leq CS_{Tsh}\), it indicates that there is a strong connection between them; otherwise, they are considered to be only weakly connected and are not marked.  
Step 4. Clusters with sensitive attributes and clusters \(Vs=\left\{v_{s1},v_{s2},\ldots,v_{sp}\right\}\) with non-sensitive attributes with a strong connection \(Vs=\left\{v_{s1},v_{s2},\ldots,v_{sp}\right\}\) are obtained according to the results of tags in \(Vc=\left\{v_{c1},v_{c2},\ldots,v_{cq}\right\}\).