# Data Quality Measures and Efficient Evaluation Algorithms for Large-Scale High-Dimensional Data
## 3 Methods
### Methods for Efficient Computation
#### 3.3.2 Bootstrapping  
Bootstrapping [6] is a sampling-based technique that estimates the statistic of the population with little data using sampling with replacement. For instance, bootstrapping can be used to estimate the mean and the variance of a statistic from an unknown population. Let \(s_{i}\) is a statistic of interest that is calculated from a randomly drawn sample of an unknown population. The mean and variance of the statistic can be estimated as follows:  
\[\hat{\mu}=\frac{1}{B}\sum_{i=1}^{B}s_{i},\hskip 14.226378 pt\hat{\sigma}^{2}= \frac{1}{B}\sum_{i=1}^{B}s_{i}^{2}-\left(\frac{1}{B}\sum_{i=1}^{B}s_{i}\right) ^{2},\]  
where \(B\) is the number of bootstrap samples, \(\hat{\mu}\) is a mean estimate of the statistic, and \(\hat{\sigma}^{2}\) is the variability of the estimate. By using a small \(B\), we can reduce the number of data points to be considered at once. We found that \(B=100\) and making each bootstrap sample to be 25% of a given dataset in size worked well overall our experiments. We summarized the above procedure in Algorithm 1 (The implementation is available here: [[https://github.com/[PERSON]/Efficient-Data-Quality-Measures-for-High-Dimensional-Classification-Data](https://github.com/[PERSON]/Efficient-Data-Quality-Measures-for-High-Dimensional-Classification-Data)]([https://github.com/[PERSON]/Efficient-Data-Quality-Measures-for-High-Dimensional-Classification-Data](https://github.com/[PERSON]/Efficient-Data-Quality-Measures-for-High-Dimensional-Classification-Data)). )```
Result:\(M_{sep}\), \(M_{var}\) and \(M_{var}\), score \(\textbf{Dataset}=\{(x_{1},y_{1}),\ldots,(x_{m},y_{m})\}\) Args= the number of samples \(B\), a sample ratio of each bootstrap sample against a given dataset \(R\), the number of random vector used in each sample \(nv\), an array storing the values of overall in-class variability \(A_{var}\), an array storing the values of class-wise in-class variability \(A_{var_{i}}\) and an array storing the values of class separability \(A_{sep}\). '\(\leftarrow\)' symbol stands for variable assignment \(i\gets 1\) \(A_{var}\leftarrow\{\}\) \(A_{var_{i}}\leftarrow\{\}\) \(A_{sep}\leftarrow\{\}\) while\(i\leq B\)do \(j\gets 1\) \(i\gets i+1\)  Calculate the number of class \(c\) and data dimension \(n\) from the dataset  Sampling with replacement using stratified sampling as much as R ratio from the dataset  Standardize the sampled dataset while\(j\leq nv\)do \(j\gets j+1\) \(w\leftarrow\) a unit vector drawn from \(\mathcal{N}(0,1)\)  Compute \(w^{T}\delta_{w_{j}}w\gets Sum(\{w^{T}\delta_{w_{j}:}w,\ldots,w^{T}\delta_{w_{ j}:}w\})\) \(M_{var-j}\gets w^{T}\delta_{w_{j}}w\)  Compute \(w^{T}\delta_{b}w\) \(M_{sep-j}\leftarrow(w^{T}\delta_{b_{j}}w)/(w^{T}\delta_{w_{j}}w)\)  end while \(A_{var_{i}}\).insert\((\{\frac{1}{c\cdot n}\min(w^{T}\delta_{w_{1}:}w,\ldots,w^{T}\delta_{w_{m}:1}w),\ldots, \frac{1}{c\cdot n}\min(w^{T}\delta_{w_{1}:}w,\ldots,w^{T}\delta_{w_{m}:}w)\})\) \(A_{par_{i}}\).insert\((\frac{1}{c\cdot n}\min(M_{var-1},\ldots,M_{var-nv}))\) \(A_{sep}\).insert\((\max(M_{sep-1},\ldots,M_{sep-nv}))\)  end while \(M_{sep}\gets Mean(A_{sep})\) \(M_{var}\gets Mean(A_{var})\) \(M_{var_{i}}\gets ClassWiseMean(A_{var_{i}})\) Return\(M_{sep},M_{var},M_{var_{i}}\)
```

**Algorithm 1**Algorithm of class separability and in-class variability. ## 4 Experiment Results

In this section, we show that our method can evaluate the data quality of the large-scale high-dimensional dataset efficiently. To verify the representative performance of \(M_{sep}\) for class separability, we calculated the correlation between the accuracy of chosen classifiers and \(M_{sep}\). Classifiers used in our experiments are as follows: a perceptron, a multi-layer perceptron with one hidden layer and LeakyReLU (denoted by MLP-1), and a multi-layer perceptron with two hidden layers and LeakyReLU (denoted by MLP-2). To simplify the experiments, we trained the models with the following settings: 30 epochs, a batch size of 100, a learning rate of 0.002, the Adam optimizer, and the cross-entropy loss function.