# Cotraining Algorithm Based on Weighted Principal Component Analysis and Improved Density Peak Clustering

Authors: Tao Wang
Journal: Security and Communication Networks
 (2022)

---

## Abstract

In order to solve the problem of insufficient useful information of unlabeled samples added in the iterative process and the accumulation of classification errors caused by inconsistent labeling of samples by multiple classifiers, a cotraining algorithm based on weighted principal component analysis and improved density peak clustering is proposed. This paper firstly introduces the density peak clustering algorithm and the density peak clustering algorithm based on weighted voting consistency. In terms of experiments, the DPC-VM algorithm will be tested on the real datasets Seed, Haberman, and Vertebral, and the accuracy performance of the DPC-VM algorithm in clustering will be compared with the DPC algorithm. DPC-VM's dataset seed is 89.99, dataset Haberman is 55.69, and dataset Vertebral is 75.77. The dataset seed of DPC is 88.61, the dataset Haberman is 53.62, and the dataset Vertebral is 56.25. The dataset seed for E-FDPC is 40.38 and the dataset Haberman is 17.42. The dataset seed for K-means is 89.25 and the dataset Haberman is 51.36. The dataset seed for FCM is 89.49 and the dataset Haberman is 50.89. The performance of the DPC-VM algorithm on Acc is basically better than other algorithms.


---

## Body

## 1. Introduction

In unattended machine learning, integration algorithms are an important part of data exploration. It analyzes data according to the structure of data structures and divides it into subgroups based on characteristics such as “homogeneous groups,” so that the properties of similar groups and the properties of different groups have different degrees of similarity [1]. In recent years, with the rise of big data, group algorithms have been widely used in new functions such as modeling, diagnostics, research scientific knowledge, big data processing such as biomedicine, and virtual reality. Currently, the most common applications can be subdivided into clusters, hierarchy, density, structure-based clusters, and network-based diagrams [2].The K-means algorithm is a classic split-group algorithm. It starts with the first center K and then returns everything to the “closest” group as the mission is completed. The algorithm is reliable, simple, and intuitive, and has good performance on big data. Figure1 shows the multipurpose internal control technology process based on a speed-based fast group search algorithm [3]. However, the K-identification algorithm provides sample data for nearest groups, so the algorithm can only be used for spherical groups and cannot capture nonspherical groups. Fast-based spatial clustering can detect irregularly shaped clusters [4]. DBSCAN (Density-Based Spatial Clustering of Applications with Noise) is a rate-based clustering algorithm [5]. Compared to the K-identification algorithm, DBSCAN does not need to know the required group code first. However, the algorithm must first determine the consequences of two rates community radius Eps and minimum community number MinPts. The group’s results show that the selection of the measurement area around the Eps radius is well understood, and DBSCAN does not affect the quality of high-dimensional data [6].Figure 1
Indoor multitarget tracking technology based on the density-based fast search clustering algorithm.


## 2. Literature Review

For this problem, MD Parmar, et al. propose CFSFDP (clustering by fast search and find of density peaks), similar to the DBSCAN and Mean-shift algorithm, it can detect arbitrary shape clusters without setting the number of clusters in advance [7]. Liang et al. define the local density of samples by combining Euclidean distance and shared nearest neighbor similarity, which reduces the dependence of the algorithm on the parameter cutoff distance [8]. Yang and Nataliani compare the distance parameters of the sample points to make the cluster center points have a higher degree of discrimination in the decision graph. However, when calculating the local density of sample points, the above method only considers the overall distribution of the data set and does not consider the distribution of various clusters, and there is still the problem of subjective selection of parameters [9]. The Fuzzy-CFSFDP algorithm proposed by Silva et al. uses fuzzy rules to determine the cluster center of the CFSFDP algorithm. However, it also lacks the comparison of distance parameters in the generation process of density peak points, resulting in multiple “similar” cluster center points in the decision diagram, which has a great impact on the selection of cluster center [10].Quintian and Corchado propose a method to determine the cutoff distance and boundary correction through the thermal diffusion of the data set. Although it improves the selection of cluster center points and the accuracy of clustering results, the model is relatively complicated [11]. Geng et al. introduce KNN into local density calculation and designed a new allocation strategy. Although it can improve the quality of clustering, it also introduces new parameter correlation coefficients, increases the complexity of the algorithm, and its setting lacks a corresponding basis [12]. Yan et al. propose that the Euclidean distance between any two sample points needs to be calculated due to the density peak clustering, which will cause a lot of time overhead and reduce the computational efficiency. The grid is introduced to improve it so that it is not necessary to calculate the Euclidean distance between all sample points. At the same time, it reduces the subjective setting of parameters and improves the operation efficiency of density peak clustering. The original density peak clustering method is calculated by CPU [13].Kulkarni and others use GPU to improve the operating efficiency of the density peak clustering method, which is a parallelized method. The improved clustering method is 45 times that of the original clustering method. Its main idea is to share a memory, so this requires a corresponding conversion of the data structure of the program, to make it applied to the combined access mechanism of the new architecture [14]. Wang and others analyze the operating efficiency of the density peak clustering algorithm and propose to use the local sensitive hash method for distributed computing, which improves the operating efficiency of the density peak clustering method. The improved clustering method is 1.7–70 times higher than the original clustering method. Its main idea is to regulate the parameters, so as to improve the running time of the algorithm. The clustering optimization process of hierarchical partition is shown in Figure 2 [15].Figure 2
Density optimized clustering algorithm based on hierarchical partition.Wang et al. apply the density peak clustering to the image field, which is aimed at the scene and the face [16]. Dafu et al. use density peak clustering in the field of network communities. They have different clustering purposes, so they are improved for specific problems [17]. Based on the current research, this paper firstly introduces the density peak clustering algorithm, and density peak clustering based on weighted voting consistency. For experiments, the DPC-VM algorithm will be tested on the real data sets Seed, Haberman, and Vertebral, and the accuracy performance of the DPC-VM algorithm in clustering will be compared with the DPC algorithm. The performance of the DPC-VM algorithm on Acc is basically better than other algorithms. Even for the data set Wine, the Acc using the DPC-VM algorithm test is no lower than the DPC algorithm. Seed, Haberman, and Vertebral are all data sets with intersections and overlaps of edge-like points, which shows that the DPC-VM algorithm performs better on data sets with intersections and overlaps in point distribution.


## 3. Methodsdc

### 3.1. Density Peak Clustering Algorithm

The DPC algorithm determines the characteristics of the center point: the higher the local size, the further away from the center point [18]. In this section, algorithms are used to determine the diagram based on the values of the main attributes of the complex sites. In order to interpret the image, two things should be considered for each parameter data: the speed of a point and the distance from a point to a certain point. There are two ways to speed up local content: a truncated kernel function and a Gaussian kernel function. Assuming that there is a data set X=x1,…,xi,…xn, for each data point, its local density ρi can be expressed as follows:(1)ρi=∑jχdij−dc,where x<0 then χx=1, otherwise χx=0. Euclidean distance between data points xi and xj. dc stands for space.(2)dc=dN×q∈D=d1,d2,…,dN,where D is the distance between two points, and the distance in D is in ascending order. N is the value of the data contained in D. q is the percentage modified manually. ⌈.⌉ means rounding up.Equation (1) uses the kernel truncation function to calculate the local distribution of the data content. When using the Gaussian kernel, the density of the local content is reported accordingly(3)ρi=∑jexp−dij2dc2.For a data pointxi, δi is the minimum distance from xi to any point xi with a higher density, which is defined as follows:(4)δi=minj:ρj>ρidij.For the pointxk with the highest density, δk is expressed as follows:(5)δk=maxjdkj.After calculating the velocities and distances of each point, they can be set up according to a diagram determined with abscissaρ and ordinate δ. The characteristics of the joints and other points can be seen at the end of the figure. Figure 3 shows the main points of the R15 configuration file, and Figure 4 shows the main points of the R15 section after grouping with the DPC algorithm. The high points δ and high ρ are the mean, and the high points δ and the low ρ points can be considered as a group of different points, that is, the difference [19]. After finding the place, each part is grouped by the density of its neighbors. Teamwork is just one step and does not need to be repeated.Figure 3
The original point distribution of the data set R15.Figure 4
Point distribution diagram of data set R15 after clustering with DPC algorithm.


### 3.2. Density Peak Clustering Based on Weighted Voting Consistency

In the DPC algorithm, each point belongs to the same class as its nearest neighbor, and the distribution of the target point is determined by its occupancy. When the distribution of content in the configuration file is discontinuous and overlapping, it is not necessary to allocate the closest objects with the DPC algorithm, which requires a lot of close content to determine the result of the target point [20]. The algorithms described in this paper are based on the K-En Nearest Neighbor (KNN) concept. The main idea of the KNN algorithm is that if the location feature includes most of the proximal models of the model, then the model also belongs to this class. Because KNN’s classification criteria are based on environmental standards rather than individual classes, models need to be divided into more classes or overlapped. The simplest approach to the KNN algorithm is to find the k closest to the sample points of the training configuration based on distance measurements to a given example. Then make predictions based on data from nearest neighbors. In general, the “voting method” can be used for the allocation of labor, that is, the group of symbols that appear in most of the k examples is selected according to the hypothesis. Based on the concept of the KNN algorithm, this paper proposes a new group DPC-VM19 algorithm based on the DPC algorithm. In other words, when segmenting content, refer to information from multiple people around you rather than the environment alone [21].Assuming that there is a data setX=x1,…,xi,…xn, the neighbor points of each point xi are screened to see whether the three conditions required for voting are met: first, the density of neighbor points is greater than this point. Second, the distance to the point is the closest. Third, the distance to this point is less than the cutoff distance (the cutoff distance is n times the cutoff distance dc in the second part). The points that meet these conditions are the points around the target point that have a greater impact on the classification of points [22].For the neighbor pointxj that meets the conditions around the point xi, it is stipulated to select at most km neighbor points from them. Then, randomly select ki points from the km neighbor point to vote, and get a label, which indicates the category to which the neighbor point belongs. Repeat the previous step once, each time the points and number of voting are different, and t tags can be obtained and used as a total tag set. Finally, vote again on the total tag set, and the resulting tag is used as the final classification of the point. The pseudocode for the implementation of the DPC-VM algorithm is shown below.Require: Data setX=x1,…,xi,…xn, cutoff distance dc, number of neighbor points km , and number of repeated votes t.Fori = 1: n doForj = 1: n doCalculate the Euclidean distance between thei-th point and the j-th point.End forFori = 1: n doCalculate the density of thei-th point.End forFori = 1: n doIf thei-th point is not the point with the highest density, then, calculate the distance δi from the i-th point to its nearest neighbor point with a higher density;End ifEnd forFor the point with the highest density,δk is the maximum distance. Make a decision diagram and select the point with high δ and high ρ as the cluster center.Fori = 1: n doCalculate the set of eligible neighbor points of thei-th point.End forFori = 1: n doIf thei-th point has a qualified neighbor point, then.Forj = 1: n doRandomly select any number of eligible neighbor points to vote, and record the most frequent label category.End forPoints are assigned to the tag category that appears most frequently.ElsePoints are assigned to clusters of nearest neighbor points with higher density.End ifEnd forEnsure: clustering result


## 3.1. Density Peak Clustering Algorithm

The DPC algorithm determines the characteristics of the center point: the higher the local size, the further away from the center point [18]. In this section, algorithms are used to determine the diagram based on the values of the main attributes of the complex sites. In order to interpret the image, two things should be considered for each parameter data: the speed of a point and the distance from a point to a certain point. There are two ways to speed up local content: a truncated kernel function and a Gaussian kernel function. Assuming that there is a data set X=x1,…,xi,…xn, for each data point, its local density ρi can be expressed as follows:(1)ρi=∑jχdij−dc,where x<0 then χx=1, otherwise χx=0. Euclidean distance between data points xi and xj. dc stands for space.(2)dc=dN×q∈D=d1,d2,…,dN,where D is the distance between two points, and the distance in D is in ascending order. N is the value of the data contained in D. q is the percentage modified manually. ⌈.⌉ means rounding up.Equation (1) uses the kernel truncation function to calculate the local distribution of the data content. When using the Gaussian kernel, the density of the local content is reported accordingly(3)ρi=∑jexp−dij2dc2.For a data pointxi, δi is the minimum distance from xi to any point xi with a higher density, which is defined as follows:(4)δi=minj:ρj>ρidij.For the pointxk with the highest density, δk is expressed as follows:(5)δk=maxjdkj.After calculating the velocities and distances of each point, they can be set up according to a diagram determined with abscissaρ and ordinate δ. The characteristics of the joints and other points can be seen at the end of the figure. Figure 3 shows the main points of the R15 configuration file, and Figure 4 shows the main points of the R15 section after grouping with the DPC algorithm. The high points δ and high ρ are the mean, and the high points δ and the low ρ points can be considered as a group of different points, that is, the difference [19]. After finding the place, each part is grouped by the density of its neighbors. Teamwork is just one step and does not need to be repeated.Figure 3
The original point distribution of the data set R15.Figure 4
Point distribution diagram of data set R15 after clustering with DPC algorithm.


## 3.2. Density Peak Clustering Based on Weighted Voting Consistency

In the DPC algorithm, each point belongs to the same class as its nearest neighbor, and the distribution of the target point is determined by its occupancy. When the distribution of content in the configuration file is discontinuous and overlapping, it is not necessary to allocate the closest objects with the DPC algorithm, which requires a lot of close content to determine the result of the target point [20]. The algorithms described in this paper are based on the K-En Nearest Neighbor (KNN) concept. The main idea of the KNN algorithm is that if the location feature includes most of the proximal models of the model, then the model also belongs to this class. Because KNN’s classification criteria are based on environmental standards rather than individual classes, models need to be divided into more classes or overlapped. The simplest approach to the KNN algorithm is to find the k closest to the sample points of the training configuration based on distance measurements to a given example. Then make predictions based on data from nearest neighbors. In general, the “voting method” can be used for the allocation of labor, that is, the group of symbols that appear in most of the k examples is selected according to the hypothesis. Based on the concept of the KNN algorithm, this paper proposes a new group DPC-VM19 algorithm based on the DPC algorithm. In other words, when segmenting content, refer to information from multiple people around you rather than the environment alone [21].Assuming that there is a data setX=x1,…,xi,…xn, the neighbor points of each point xi are screened to see whether the three conditions required for voting are met: first, the density of neighbor points is greater than this point. Second, the distance to the point is the closest. Third, the distance to this point is less than the cutoff distance (the cutoff distance is n times the cutoff distance dc in the second part). The points that meet these conditions are the points around the target point that have a greater impact on the classification of points [22].For the neighbor pointxj that meets the conditions around the point xi, it is stipulated to select at most km neighbor points from them. Then, randomly select ki points from the km neighbor point to vote, and get a label, which indicates the category to which the neighbor point belongs. Repeat the previous step once, each time the points and number of voting are different, and t tags can be obtained and used as a total tag set. Finally, vote again on the total tag set, and the resulting tag is used as the final classification of the point. The pseudocode for the implementation of the DPC-VM algorithm is shown below.Require: Data setX=x1,…,xi,…xn, cutoff distance dc, number of neighbor points km , and number of repeated votes t.Fori = 1: n doForj = 1: n doCalculate the Euclidean distance between thei-th point and the j-th point.End forFori = 1: n doCalculate the density of thei-th point.End forFori = 1: n doIf thei-th point is not the point with the highest density, then, calculate the distance δi from the i-th point to its nearest neighbor point with a higher density;End ifEnd forFor the point with the highest density,δk is the maximum distance. Make a decision diagram and select the point with high δ and high ρ as the cluster center.Fori = 1: n doCalculate the set of eligible neighbor points of thei-th point.End forFori = 1: n doIf thei-th point has a qualified neighbor point, then.Forj = 1: n doRandomly select any number of eligible neighbor points to vote, and record the most frequent label category.End forPoints are assigned to the tag category that appears most frequently.ElsePoints are assigned to clusters of nearest neighbor points with higher density.End ifEnd forEnsure: clustering result


## 4. Results and Analysis

In this part, the DPC-VM algorithm will be tested on the real data set Seed, Haberman, and Vertebral, and the accuracy performance of the DPC-VM algorithm on clustering will be compared with the DPC algorithm [23]. In this paper, accuracy is measured by the Acc indicator:(6)Acc=∑i=1kain,where ai is the number of correctly classified points in the i-th cluster. k is the number of clusters. n is the number of points in the data set.For Acc, a higher value means better clustering quality. When their value is 1, it means that the clustering result is completely correct. Figures5–7, respectively, show the decision diagrams of the DPC-VM algorithm on these three commonly used data sets. At the same time, the accuracy performance of other clustering algorithms, the k-Means algorithm and fuzzy C-means algorithm on these real data sets are queried [24]. The accuracy comparison of the DPC-VM algorithm, DPC algorithm, and these three clustering algorithms is shown in Table 1.Figure 5
Decision diagram of the data set Seed.Figure 6
Decision diagram of the data set Haberman.Figure 7
Decision diagram of the data set Vertebral.Table 1
Results of the data set.
AlgorithmSeedHabermanVertebralDPC-VM89.9955.6975.77DPC88.6153.6256.25E-FDPC40.3817.42—K-means89.2551.36—FCM89.4950.89—In Table1, by adjusting the total number of decision votes t, the accuracy of the test data set Seed, Haberman, Vertebral, Ecoli, Iris, and Wine can be stabilized by the DPC-VM algorithm [25]. The accuracy of the DPC-VM algorithm shown in Table 1 tested on different data sets is not necessarily the best performing value, but they are all relatively stable and significantly improved values (values with the most occurrences). In the table, the accuracy of the DPC-VM algorithm is improved differently compared with other algorithms on different data sets. Taking the DPC algorithm as the main comparison object, the Acc improvement of the DPC-VM algorithm on the Vertebral data set is more obvious. This is because the Vertebral data set has a lot of intersections between categories, and the DPC-VM algorithm has improved the classification problem of this part [26]. For the data set Wine, the DPC-VM algorithm can hardly improve the accuracy. This is because the Wine is a high-dimensional sparse data set. Because the points are very sparse, the neighbor points that meet the conditions are almost empty sets, which are equivalent to no reallocation, but are assigned to the nearest neighbor class according to the original algorithm.


## 5. Conclusion

The performance of the DPC-VM algorithm on Acc is basically better than other algorithms. Even for the data set Wine, the Acc when using the DPC-VM algorithm test is no lower than the DPC algorithm. Seed, Haberman, and Vertebral are all data sets with intersections and overlaps of edge-like points, which show that the DPC-VM algorithm performs better on data sets with intersections and overlaps in point distribution. The processing of high-dimensional data sets can be further studied in the future.



---

*Source: 8353697-2022-09-05.xml*