# An Online Weighted Bayesian Fuzzy Clustering Method for Large Medical Data Sets

Authors: Cong Zhang; Jing Xue; Xiaoqing Gu
Journal: Computational Intelligence and Neuroscience
 (2022)

---

## Abstract

With the rapid development of artificial intelligence, various medical devices and wearable devices have emerged, enabling people to collect various health data of themselves in hospitals or other places. This has led to a substantial increase in the scale of medical data, and it is impossible to import these data into memory at one time. As a result, the hardware requirements of the computer become higher and the time consumption increases. This paper introduces an online clustering framework, divides the large data set into several small data blocks, processes each data block by weighting clustering, and obtains the cluster center and corresponding weight of each data block. Finally, the final cluster center is obtained by processing these cluster centers and corresponding weights, so as to accelerate clustering processing and reduce memory consumption. Extensive experiments are performed on UCI standard database, real cancer data set, and brain CT image data set. The experimental results show that the proposed method is superior to previous methods in less time consumption and good clustering performance.


---

## Body

## 1. Introduction

In recent years, smart medical care has emerged with the vigorous development of artificial intelligence (AI) technology. At present, the application of AI technology in the medical field involves many aspects such as disease prediction, intervention and consultation, disease diagnosis and treatment, drug research and development, and health service management [1]. The fusion of AI and healthcare services can help clinicians reduce reading time, aid in early detection, and improve diagnostic accuracy. The technology of clustering plays a very wide role in the fields of medical data analysis.As a typical unsupervised learning method, clustering mines the internal relationship between data samples and then puts the samples with the same or similar attributes in the same cluster, which avoids the dependence on the label data and saves a lot of manpower and material resources [2]. Fuzzy clustering is a typical representative of clustering methods, and the most classic fuzzy clustering is the fuzzy C-means algorithm (FCM). Fuzzy clustering improves the traditional hard clustering partition. There are a large number of derivative algorithms based on the FCM, including the probabilistic C-means algorithm (PCM), which uses probabilistic methods to express fuzzy membership to improve the limitation of fuzzy membership [3]. Recently, many researchers have improved the traditional FCM method from multiple perspectives and applied them in various scenes [4]. Hua et al. [5] developed a multiview fuzzy clustering based on the framework of FCM. Gu et al. [6] proposed a probabilistic FCM method to be used for antecedent parameter learning in Takagi-Sugeno-Kang fuzzy system. Zhou et al. [7] proposed a new membership scaling FCM method by selecting the unchanged clustering centers through triangular inequality, which solves the problems of slow convergence and a large amount of calculation when a FCM algorithm is dealing with large data sets. Mishro et al. [8] proposed a new type 2 adaptive weighted space FCM clustering algorithm to solve the problem of noise misclassification and inaccurate clustering center obtained by FCM in the process of MR brain image segmentation. Wang et al. [9] proposed an FCM algorithm for irregular image segmentation, which has higher robustness and less computational effort compared to traditional segmentation algorithms. Based on hyperplane partitioning, Shen et al. [10] developed a feasible and efficient FCM algorithm to deal with large data sets. Jha et al. [11] designed and implemented a kernelized fuzzy clustering algorithm using its in-memory cluster computing technology. Liu et al. [12] proposed a FCM algorithm based on multiple surface approximate interval membership for processing artifacts in brain MRI images. Wang et al. [13] proposed a FCM algorithm based on wavelet frame, which can effectively remove image noise and preserve image details. This algorithm can provide a new way to segment images in an irregular domain. Li et al. [14] proposed a domain-qualified adaptive FCM method for processing MRI brain images with noise and uneven intensity. Zhang and Huang [15] studied the generalization error of a FCM algorithm from the perspective of theory and limited the generalization error from the perspective of convergence, which can provide guidance for the application of the sampling-based FCM method. Wu et al. [16] proposed an online clustering algorithm by combining FCM algorithm with an online framework set to solve the problem that batch learning cannot deal with large-scale data sets. Zhang et al. [17] combined FCM with a nonlinear genetic algorithm and proposed an apple defect detection method to improve fruit defect detection. Shen et al. [18] proposed a hyperplane partition method based on FCM to deal with big data clustering. Recently, the Bayesian fuzzy clustering (BFC) [19] algorithm is proposed to combine the fuzzy method into a probability model. BFC reinterprets the fuzzy method from the perspective of probability, expands the value range of the fuzzy index, and solves the problem that the fuzzy method is prone to local optimization. The many characteristics of the BFC algorithm make it very widely used in medical data processing. But due to the high complexity of the BFC method, its efficiency is not high, and it has received great limitations in practical applications.Inspired by the above ideas, this paper proposes the online weighted Bayesian fuzzy clustering method (OWBFC) and uses an online clustering framework, which not only retains all the advantages of the Bayesian fuzzy clustering algorithm but also improves the efficiency of the Bayesian fuzzy clustering method through the online clustering framework. We verify the OWBFC method on a series of real-world data sets. Compared with the existed Bayesian fuzzy clustering algorithms, the contributions of our study are concluded as follows:(1)
OWBFC combines the probability method with the fuzzy method and realizes the fuzzy clustering through the probability method, which has the common advantages of the probability method and the fuzzy method.(2)
In the process of solving the parameters, the Markov chain Monte Carlo method (MCMC) is used for sampling instead of a closed solution, so the global optimal solution of the parameters can be obtained in OWBFC.(3)
The online clustering framework is used in OWBFC to deal with the problem that large data sets cannot be imported into memory, and the weighting mechanism is used to improve the clustering efficiency.


## 2. Related Work

The BFC algorithm combines the probabilistic method with the fuzzy method. From the perspective of prior knowledge and Bayesian theory, it expands the range of the fuzzy index of the traditional fuzzy method. The BFC algorithm uses the MCMC strategy [20] and particle filter method [21, 22] to solve the optimization problem. The maximum posterior probability (MAP) is used to process fuzzy clustering, and the normal distribution is further used to predict the number of clusters. Therefore, the BFC method is superior to the previous fuzzy or probabilistic methods in many aspects. However, the algorithm complexity of BFC is relatively high. This shortcoming makes the BFC method not suitable for large-scale data, and its application range is greatly limited, which does not meet the current actual needs. The BFC algorithm aims to solve fuzzy clustering from the perspective of probability. The probability model of BFC consists of three parts, namely fuzzy data likelihood (FDL), fuzzy membership prior (FCP), and cluster center prior, as follows. The fuzzy data likelihood is as follows:(1)pX|U,C=∏k=1KFDLxk|uk,C=∏k=1K1Zuk,m,C∏n=1NNxk|μ=cn,Λ=uknmI,where X, U, and C are matrices of training data, fuzzy member, and cluster centers, respectively. K and N represent the numbers of samples and the numbers of clusters, respectively. ukn is the membership of data point xk in cluster n. The parameters m, cn, and I represent the fuzzy index, the cluster center, and the identity matrix, respectively. And, Zuk,m,C is the normalization constant, and m is the fuzzy index. Since Zuk,m,C will be eliminated by the following equation (2), it does not need to be calculated.The prior of fuzzy membership is expressed as(2)pU|C=∏k=1KFCPun|C=∏k=1KZuk,m,C∏n=1Nukn−mD/2Dirichletuk|α.pU|C consists of three parts as follows: F1=Zuk,m,C, F2=∏n=1Nukn−mD/2, and F3=Dirichletuk|α. F1 is to eliminate the normalizing constant in equation (1). F3 is the Dirichlet distribution as follows:(3)Dirichletx|α=Γ∑n=1Nαn∏n=1NΓαn∏n=1Nxnαn−1,where xn≥0, n = 1,…, N and ∑n=1Nxn=1. The parameter α is the Dirichlet prior parameter, which controls the membership degree of the sample. Through Dirichlet distribution, the BFC algorithm breaks the constraint that the fuzzy index in the FCM algorithm must be greater than 1, so that the fuzzy index in the BFC algorithm can take any value.Cluster center prior is defined as(4)pC=∏n=1NNcn|μc,Σc.It is noted thatpC is to match the high degree of membership produced by equation (4). μc and Σc are the mean and variance of all samples, as follows:(5)μc=1K∑k=1KxkΣc=γK∑k=1Kxk−μcxk−μcT,where γ is a parameter that affects the strength of the prior, which is set by the user, and we use γ = 3 in our study. The joint likelihood of X, U, and C is obtained by multiplying equations (1), (2), and (4).(6)pX,U,C=pX|U,CpU|CpC∝exp−12∑k=1K∑n=1Nuknm||xk−cn||2×∏k=1K∏n=1Nuknαn−1×exp−12∑n=1Ncn−μcT∑c−1cn−μc.According to map theory, the joint likelihood form of equation (7) is its negative logarithm, and a factor of 2 can be multiplied to simplify. The joint likelihood form is as follows:(7)JX,U,C=∑k=1K∑n=1Nuknm||xk−cn||2−2∑k=1K∑n=1Nαn−1logukn+∑n=1Ncn−μcT∑c−1cn−μc.Finally, BFC uses MAP inference and uses sampling to filter membership and cluster centers to obtain their optimal values.From the above introduction, we can see that the BFC algorithm breaks through the constraints of the traditional fuzzy clustering fuzzy index and can obtain the global optimal solution, but its time complexity is too high to handle large data sets.


## 3. Online Weighted Bayesian Fuzzy Clustering

### 3.1. Weighted Bayesian Fuzzy Clustering

For large data sets, it is a difficult problem that the data cannot be imported into the computer at one time. In this paper, the online clustering framework is adopted. By dividing the large data set into several easy-to-handle small data blocks, the clustering center of each data block is defined as the representative point. In the process of processing the data blocks, the representative points of each data block and the corresponding weights of the representative points are combined into two new different sets, and then, the two new sets are processed to get the clustering center of the whole data and accelerate clustering. Since the OWBFC method uses a block and weighting mechanism to introduce weights for the clustering centers of each data block, the weighted Bayesian fuzzy clustering (WBFC) algorithm is introduced, and then, WBFC is extended to its online version.To further judge the contribution of each sample point to the cluster in the process of clustering, this paper introduces the WBFC algorithm, which adaptively weights different sample points to select the representative sample points. The objective function of WBFC is defined as(8)pX,U,C=pX|U,CpU|CpC∝exp−12∑k=1K∑n=1Nwnuknm||xk−cn||2×∏k=1K∏n=1Nuknαn−1×exp−12∑n=1Ncn−μcT∑c−1cn−μc,where wk>0 represents the contribution of the nth sample to the final cluster division. How to set wk will be described in detail in the next section. Following [19], the MCMC parameter optimization strategy is used in the WBFC algorithm. First, we initialize the parameter uk and cn by Dirichlet distribution and normal distribution. We sample the U matrix according to U∼pU|X,C∝pX,U,C using the Gibbs sampling. We judge whether the new membership sample is accepted. If it is accepted, then uk is set as uk=ukΨ, ukΨ as a new membership sample. The acceptation rate Au is computed as(9)Au=min1,pxk,ukΨ|Cpxk,uk|C.If pxk,ukΨ|C∗>pxk,uk∗|C∗, we set the current uk∗ as uk∗=ukΨ. The pxk,uk|C is computed as(10)pxk,uk|C=pxk|uk,Cpuk|C∝∏n=1Nexp−12wkuknmxk−cn2uknαn−1.Then, we sampleC according to C∼pC|X,U∝pX,U,C. We judge whether the new cluster center sample is accepted. If it is accepted, then cn is set as cn=cnΨ. The acceptation rate Ac is computed as(11)Ac=min1,pxk,ckΨ|Cpxk,ck|C.If pX,cnΨ|U∗>pX,cn∗|U∗, we set the current cn∗ as cn∗=cnΨ, cnΨ as a new cluster center. The pX,cn|U is computed as(12)pX,cn|U=pX|U,cnpcn∝exp−12∑k=1K∑n=1Nwkuknm||xk−cn||2×exp−12∑n=1Ncn−μcT∑c−1cn−μc.Finally, we check the maximum likelihood of all samples using equation (9). The whole training process circulates several times until the model converges. The training procedure of WBFC is shown in Algorithm 1.Algorithm 1: Weighted Bayesian fuzzy clustering (WBFC) algorithm.
Input:Training dataX, fuzzy index m, number of clusters N, number of sampling iteration Niter, weight wOutput:Fuzzy membershipU∗ and cluster prototypes C∗Step 1. Initialize parametersμc and ΣcStep 2. Initialuk∼Dirichletα=1N,k=1,…,KStep 3. Initialyc∼Nμy,Σy,c=1,…,CStep 4.uk∗=uk,cn∗=cn,//assign map sample to current sampleStep 5. Foriter = 1,…, Niter//SampleU according to U∼pU|X,C∝pX,U,CStep 7.   fork = 1,…,KStep 8.    Sample new membershipukΨ by equation (3)Step 9.    Judge whether the new membership sample is accepted by equation (10). If it is accepted, then uk=ukΨStep 10.    ifpxk,ukΨ|C∗>pxk,uk∗|C∗ //Use Eq. (11)Step 11.uk∗=ukΨStep 12.    endStep 13.   end//SampleC according to C∼pC|X,U∝pX,U,CStep 14.   forn = 1,…,NStep 15.    Sample new cluster centercnΨ from Ncn,Σc/δStep 16.    Judge whether the new cluster center sample is accepted by equation (12). If it is accepted, then cn=cnΨStep 17.     ifpX,cnΨ|U∗>pX,cn∗|U∗ //Use equation (13)Step 18.cn∗=cnΨStep 19.     endStep 20.    endStep 21. //Check the maximum likelihood of all samplesStep 22.     ifpX,U,C>pX,U∗,C∗ //Use equation (9)Step 23.U∗=UC∗=CStep 24.    endStep 25. end


### 3.2. Online Weighted Bayesian Fuzzy Clustering

The WBFC algorithm aims to introduce object weights based on the BFC algorithm, so more representative sample points can be selected while clustering. Based on the characteristics of the WBFC algorithm, we further proposed the online version of WBFC algorithm called OWBFC algorithm. Inspired of the online algorithm advantage, the OWBFC algorithm can handle large data sets based on the WBFC algorithm. OWBFC divides the large-scale data into several easy-to-process data blocks. Then, OWBFC uses the WBFC algorithm to process each data block, merges the cluster center of each data block into a new set, calculates the weight of each cluster center, and merges the obtained weight. Finally, the new cluster center set and the corresponding weight set are processed to obtain the final cluster center. The weight factorwn in OWBFC is computed as follows:(13)wq=∑k=1Klukq,q=1,…,Q,where wq represents the weight of representative points of each data block. Here, we give the training procedure of the OWBFC algorithm as shown in Algorithm 2. The parameter Kl represents the number of sample points in the lth block, ukq is the membership of xk in cluster q, and Q represents the number of clusters. First, we divide the training data X into d blocks as X=X1,…,Xd, and each block Xl has Kl sample points, l = 1, 2, ..., d. Ul and Cl are the fuzzy membership and clustering center matrices, respectively. We run the WBFC algorithm in the first block X1 and obtain the fuzzy membership and clustering center matrices in X1. Then, we run the WBFC algorithm in the rest blocks with the clustering center matrix Cl-1.Algorithm 2: Online Weighted Bayesian Fuzzy Clustering (OWBFC) algorithm.
Input: Training dataX, fuzzy index m, number of clusters Q, number of sampling iteration Niter, weight wn, number of data blocks dOutput: Cluster prototypesC∗Step 1. DivideX into d blocks X=X1,…,Xd//Each block has Kl sample points, 1≤l≤dStep 2. Initializew=1KlStep 3. Use algorithm to obtain theU1,C1=WBFCX1,Q1,m with wStep 4. forl = 2 to dStep 5. Use algorithm to obtain theUl, Cl  = WBFC(Xl, Ql, m) with Cl-1Step 6. endStep 7.C∗=C1∪C2…∪CdStep 8.wq=∑k=1Klukq,q=1,…,QStep 9.C∗ = WBFC(C∗, N, m, {w1∪…∪wd})Step 10. end


## 3.1. Weighted Bayesian Fuzzy Clustering

For large data sets, it is a difficult problem that the data cannot be imported into the computer at one time. In this paper, the online clustering framework is adopted. By dividing the large data set into several easy-to-handle small data blocks, the clustering center of each data block is defined as the representative point. In the process of processing the data blocks, the representative points of each data block and the corresponding weights of the representative points are combined into two new different sets, and then, the two new sets are processed to get the clustering center of the whole data and accelerate clustering. Since the OWBFC method uses a block and weighting mechanism to introduce weights for the clustering centers of each data block, the weighted Bayesian fuzzy clustering (WBFC) algorithm is introduced, and then, WBFC is extended to its online version.To further judge the contribution of each sample point to the cluster in the process of clustering, this paper introduces the WBFC algorithm, which adaptively weights different sample points to select the representative sample points. The objective function of WBFC is defined as(8)pX,U,C=pX|U,CpU|CpC∝exp−12∑k=1K∑n=1Nwnuknm||xk−cn||2×∏k=1K∏n=1Nuknαn−1×exp−12∑n=1Ncn−μcT∑c−1cn−μc,where wk>0 represents the contribution of the nth sample to the final cluster division. How to set wk will be described in detail in the next section. Following [19], the MCMC parameter optimization strategy is used in the WBFC algorithm. First, we initialize the parameter uk and cn by Dirichlet distribution and normal distribution. We sample the U matrix according to U∼pU|X,C∝pX,U,C using the Gibbs sampling. We judge whether the new membership sample is accepted. If it is accepted, then uk is set as uk=ukΨ, ukΨ as a new membership sample. The acceptation rate Au is computed as(9)Au=min1,pxk,ukΨ|Cpxk,uk|C.If pxk,ukΨ|C∗>pxk,uk∗|C∗, we set the current uk∗ as uk∗=ukΨ. The pxk,uk|C is computed as(10)pxk,uk|C=pxk|uk,Cpuk|C∝∏n=1Nexp−12wkuknmxk−cn2uknαn−1.Then, we sampleC according to C∼pC|X,U∝pX,U,C. We judge whether the new cluster center sample is accepted. If it is accepted, then cn is set as cn=cnΨ. The acceptation rate Ac is computed as(11)Ac=min1,pxk,ckΨ|Cpxk,ck|C.If pX,cnΨ|U∗>pX,cn∗|U∗, we set the current cn∗ as cn∗=cnΨ, cnΨ as a new cluster center. The pX,cn|U is computed as(12)pX,cn|U=pX|U,cnpcn∝exp−12∑k=1K∑n=1Nwkuknm||xk−cn||2×exp−12∑n=1Ncn−μcT∑c−1cn−μc.Finally, we check the maximum likelihood of all samples using equation (9). The whole training process circulates several times until the model converges. The training procedure of WBFC is shown in Algorithm 1.Algorithm 1: Weighted Bayesian fuzzy clustering (WBFC) algorithm.
Input:Training dataX, fuzzy index m, number of clusters N, number of sampling iteration Niter, weight wOutput:Fuzzy membershipU∗ and cluster prototypes C∗Step 1. Initialize parametersμc and ΣcStep 2. Initialuk∼Dirichletα=1N,k=1,…,KStep 3. Initialyc∼Nμy,Σy,c=1,…,CStep 4.uk∗=uk,cn∗=cn,//assign map sample to current sampleStep 5. Foriter = 1,…, Niter//SampleU according to U∼pU|X,C∝pX,U,CStep 7.   fork = 1,…,KStep 8.    Sample new membershipukΨ by equation (3)Step 9.    Judge whether the new membership sample is accepted by equation (10). If it is accepted, then uk=ukΨStep 10.    ifpxk,ukΨ|C∗>pxk,uk∗|C∗ //Use Eq. (11)Step 11.uk∗=ukΨStep 12.    endStep 13.   end//SampleC according to C∼pC|X,U∝pX,U,CStep 14.   forn = 1,…,NStep 15.    Sample new cluster centercnΨ from Ncn,Σc/δStep 16.    Judge whether the new cluster center sample is accepted by equation (12). If it is accepted, then cn=cnΨStep 17.     ifpX,cnΨ|U∗>pX,cn∗|U∗ //Use equation (13)Step 18.cn∗=cnΨStep 19.     endStep 20.    endStep 21. //Check the maximum likelihood of all samplesStep 22.     ifpX,U,C>pX,U∗,C∗ //Use equation (9)Step 23.U∗=UC∗=CStep 24.    endStep 25. end


## 3.2. Online Weighted Bayesian Fuzzy Clustering

The WBFC algorithm aims to introduce object weights based on the BFC algorithm, so more representative sample points can be selected while clustering. Based on the characteristics of the WBFC algorithm, we further proposed the online version of WBFC algorithm called OWBFC algorithm. Inspired of the online algorithm advantage, the OWBFC algorithm can handle large data sets based on the WBFC algorithm. OWBFC divides the large-scale data into several easy-to-process data blocks. Then, OWBFC uses the WBFC algorithm to process each data block, merges the cluster center of each data block into a new set, calculates the weight of each cluster center, and merges the obtained weight. Finally, the new cluster center set and the corresponding weight set are processed to obtain the final cluster center. The weight factorwn in OWBFC is computed as follows:(13)wq=∑k=1Klukq,q=1,…,Q,where wq represents the weight of representative points of each data block. Here, we give the training procedure of the OWBFC algorithm as shown in Algorithm 2. The parameter Kl represents the number of sample points in the lth block, ukq is the membership of xk in cluster q, and Q represents the number of clusters. First, we divide the training data X into d blocks as X=X1,…,Xd, and each block Xl has Kl sample points, l = 1, 2, ..., d. Ul and Cl are the fuzzy membership and clustering center matrices, respectively. We run the WBFC algorithm in the first block X1 and obtain the fuzzy membership and clustering center matrices in X1. Then, we run the WBFC algorithm in the rest blocks with the clustering center matrix Cl-1.Algorithm 2: Online Weighted Bayesian Fuzzy Clustering (OWBFC) algorithm.
Input: Training dataX, fuzzy index m, number of clusters Q, number of sampling iteration Niter, weight wn, number of data blocks dOutput: Cluster prototypesC∗Step 1. DivideX into d blocks X=X1,…,Xd//Each block has Kl sample points, 1≤l≤dStep 2. Initializew=1KlStep 3. Use algorithm to obtain theU1,C1=WBFCX1,Q1,m with wStep 4. forl = 2 to dStep 5. Use algorithm to obtain theUl, Cl  = WBFC(Xl, Ql, m) with Cl-1Step 6. endStep 7.C∗=C1∪C2…∪CdStep 8.wq=∑k=1Klukq,q=1,…,QStep 9.C∗ = WBFC(C∗, N, m, {w1∪…∪wd})Step 10. end


## 4. Experiments

### 4.1. Data Sets and Experiment Settings

In the experiment, we use several medical data sets, including two cancer data sets, Armstrong-2002-v2 and Bhattacharjee-2001 [23], three medical data sets, and brain images in the UCI database [24]. Armstrong-2002-v2 is a data set to distinguish the expression of leukemia genes. It is divided into three categories, with a total of 72 samples. Bhattacharjee-2001 is a lung cancer classification data set, including five categories, a total of 203 samples. Because of the small sample size of these two data sets, they are not segmented here. The heart disease data set, diabetic retinopathy Debrecen (DRD) data set, and hepatitis C virus (HCV) for Egyptian patient data set are three UCI medical data sets. The heart disease data set contains 303 samples, and only 14 of them are used in this article. The DRD data set contains 1151 samples, and the HCV data set contains 1385 samples. To facilitate the division, this study takes 1000 samples for the diabetic retinopathy Debrecen data set. The HCV data set took 1,200 samples. A total of three brain CT images were selected as CT1, CT2, and CT3, with pixels of 275 × 273, 273×277, and 264 × 271. To facilitate segmentation, the pixels of the three pictures are reduced to 272 × 272, 272 × 272, and 264 × 264, respectively. The comparison algorithms include OFCM [25] and SPFCM [25], which can process large-scale data clustering. Among them, the two cancer data sets and one UCI medical data set are used to compare the clustering effects of OWBFC, OFCM, and SPFCM algorithms without segmentation. The remaining two UCI medical data sets are used to compare the clustering effects and time of OWBFC, OFCM, and SPFCM algorithms in different proportions of segmentation. The brain images are used to show the running time comparison of OWBFC and BFC. The OWBFC, OFCM, and SPFCM algorithms have two parameters: fuzzy index m and prior parameter α. In this study, we set m = 1.7 and α = 1. To visually display the clustering performance, we use four clustering performance indicators of accuracy, entropy, F-measure, and purity to show the clustering results. R=fullt/blockt represents the ratio of the running time of the whole processing data set and the block processing data set of the algorithm, fullt represents the running time on the whole data set, and blockt represents the sum of the running time on each block. Although this part loads the data set into the memory at one time, this paper believes that R is similar to the data that cannot be loaded, because the total amount of data is the same, whether it is processed separately or at one time. Our experimental platform is AMD R5-5600X, six cores, 16G memory, Windows10 operating system, Matlab2016a.


### 4.2. Experimental Results on the Armstrong-2002-v2, Bhattacharjee-2001, and Heart Disease Data Set

To make SPFCM and OFCM algorithms run better, according to the suggestions of Havens et al. [25], we set the fuzzy index m = 1.7. For the Armstrong-2002-v2 data set, Bhattacharjee-2001 data set, and heart disease data set, the number of clusters is set to 3, 5, and 5, respectively. Because the sample size of these three data sets is small, they are not processed in blocks. Table 1 shows the experimental results of the OFCM, SPFCM, and OWBFC algorithms. We can see that the OFCM algorithm and the SPFCM algorithm have similar clustering performances on these three different data sets, and it is difficult to compare the advantages and disadvantages of the two algorithms. But comparing the OFCM algorithm, SPCM algorithm, and OWBFC algorithm, it is easy to see that the OWBFC algorithm has the best clustering results except for some special cases.Table 1
Clustering performance on Armstrong-2002-v2, Bhattacharjee-2001, and Heart Disease data sets.
Data setsAlgorithmsAccuracyEntropyF-measurePurityArmstrong-2002-v2OFCM0.72350.47280.79480.7331SPFCM0.72370.46970.80110.7372OWBFC0.75480.46320.79640.7489Bhattacharjee-2001OFCM0.82130.28790.86370.8235SPFCM0.86350.24550.92940.8769OWBFC0.87920.24230.93280.8817Heart DiseaseOFCM0.76430.46750.79210.7039SPFCM0.76590.46780.79140.7054OWBFC0.77680.46790.79320.7258The best average performances are shown in bold type in Tables1–7.Table 2
Accuracy (mean/max/min) on the DRD and HCV data sets (%).
DRD data setBlock sizeOFCMSPFCMOWBFC573.16/73.32/72.9573.26/73.37/73.1874.78/74.90/74.661073.34/74.44/73.1273.37/73.54/73.1574.83/74.97/74.725073.53/73.64/73.3173.51/73.62/73.4375.02/75.16/74.93HCV data setBlock sizeOFCMSPFCMOWBFC574.16/74.41/74.1174.17/74.31/74.0975.61/75.78/75.521074.29/74.44/74.1674.24/74.42/74.1375.65/75.80/75.525074.37/74.48/74.3174.33/74.47/74.2575.73/75.86/75.66Table 3
Entropy (mean/max/ min) on the DRD and HCV data sets (%).
DRD data setBlock sizeOFCMSPFCMOWBFC547.72/47.88/47.6547.77/47.92/47.6147.34/47.49/47.261047.75/47.89/47.6747.77/47.91/47.6347.39/47.54/47.285047.81/47.95/47.7647.82/47.97/47.7447.44/47.57/47.33HCV data setBlock sizeOFCMSPFCMOWBFC546.65/46.78/46.5246.79/46.87/46.6846.84/46.97/46.751046.69/46.78/46.5346.81/46.89/46.7246.84/47.03/46.725046.71/46.82/46.6646.88/46.96/46.7546.87/47.11/46.76Table 4
F-measure (mean/max/min) on the DRD and HCV data sets (%).
DRD data setBlock sizeOFCMSPFCMOWBFC577.96/78.13/77.8177.93/78.15/77.8278.42/78.57/78.301077.96/78.15/77.8177.96/78.17/77.8478.47/78.60/78.335078.04/78.21/77.8577.98/78.22/77.8878.51/78.63/78.38HCV data setBlock sizeOFCMSPFCMOWBFC575.02/75.14/74.9375.02/75.16/74.8975.96/76.13/75.841075.13/75.25/75.0275.10/75.24/74.9076.03/76.17/75.915075.17/75.31/75.0575.16/75.36/75.0376.15/76.31/76.02Table 5
Purity (mean/max/min) on the DRD and HCV data sets (%).
DRD data setBlock sizeOFCMSPFCMOWBFC574.58/74.63/74.3474.55/74.67/74.4375.27/75.43/75.161074.64/74.72/74.4974.59/74.75/74.4875.31/75.46/75.245074.72/74.88/74.6274.66/74.81/74.5775.37/75.50/75.26HCV data setBlock sizeOFCMSPFCMOWBFC574.61/74.79/74.4874.55/74.67/74.3875.25/75.37/75.181074.67/74.83/74.5474.60/74.77/74.4575.29/75.43/75.165074.71/74.88/74.6274.66/74.79/74.5275.33/75.46/75.19Table 6
Clustering results of BFC and OWBFC on three brain images (%).
Data setsMethodsAccuracyEntropyF-measurePurityCtaBFC87.5423.6491.2687.43OWBFC88.0121.9891.3288.15CtbBFC88.6521.3891.9788.76OWBFC89.2321.0592.2889.61CtcBFC86.9124.3390.6587.15OWBFC87.0623.9691.4387.34Table 7
Running time on three brain images (s).
ImageBFCOWBFCCta1224.23345.36Ctb1231.14339.45Ctc1219.56326.72


### 4.3. Clustering Performance on DRD and HCV Data Set

Like the parameter setting in Section4.2, the DRD and HCV data sets are divided into 5%, 10%, and 50% of the whole data set, and the last column of the HCV data set is selected as the basis for the number of clusters, the fuzzy index m = 1.7, and the number of clusters is set to 4. The OFCM, SPFCM, and OWBFC algorithms run independently 10 times on the basis of random initialization to calculate the maximum, minimum, and average values of accuracy, entropy, F-measure, and purity. The clustering results of the two data sets are shown in Tables 2–5. From Table 2, it can be seen that the accuracy of the OFCM is slightly lower than that of the SPFCM algorithm when the number of data blocks is large, and the accuracy of the OFCM algorithm is higher than that of the SPFCM algorithm when the number of blocks is small. Overall, the accuracy of OFCM algorithm is similar to that of SPFCM algorithm, and the accuracy of OWBFC algorithm is the best. Tables 2–5 show the accuracy, entropy, F-measure, and purity of these two different data sets. For example, 74.78/74.90/74.66 represents the mean, max, and min accuracy values, respectively. Compared with the OFCM algorithm and SPFCM algorithm, the OWBFC algorithm has the best results whether it is entropy or F-measure or purity. Because the OWBFC algorithm uses the MCMC sampling method to solve the parameters, it can obtain the global optimization of the parameters. Therefore, the OWBFC algorithm can obtain better clustering performance. Only from Tables 3–5, the gap between the three algorithms is not obvious. Combining with Table 8, it can be clearly seen that the OWBFC algorithm has good clustering performance and also greatly reduces the time consumption of the algorithm. Table 8 shows the running time at different division ratios. Because the data set name is too long, the abbreviation is used in the experiment.Table 8
OWBFC running time on different block ratios (s).
Data setsBlock sizeR100%50%10%5%100%/50%100%/10%100%/5%DRD85.3167.5415.6712.511.265.446.82HCV97.2570.2617.4813.161.385.567.38


### 4.4. Brain Images

Three brain images are shown in Figure1. We use them to verify the clustering performance of OWBFC for large-scale image segmentation. We compare the OWBFC and BFC algorithms in this subsection. According to the recommendations [19, 25], the parameters α set to 1, and the parameters m set to 1.7. We split brain images at a ratio of 25% and set all classes to 3. Figures 2 and 3 show the clustering results of three brain images by BFC and OWBFC algorithms, respectively. Table 6 shows the experimental results on three brain images. Table 7 shows the running time results of BFC and OWBFC on three brain images. We can see from Table 6 that the clustering performance of OWBFC is better than that of BFC. Meanwhile, from Table 7, we can clearly see that OWBFC has a shorter time consumption compared with BFC. In summary, compared with BFC, the OWBFC algorithm not only maintains a good clustering effect but also consumes less time.Figure 1
Three brain images used in the experiment. (a) cta, (b) ctb, and (c) ctc.
(a)(b)(c)Figure 2
Clustering results of BFC on three brain images. (a) cta, (b) ctb, and (c) ctc.
(a)(b)(c)Figure 3
Clustering results of OWBFC on three brain images. (a) cta, (b) ctb, and (c) ctc.
(a)(b)(c)


## 4.1. Data Sets and Experiment Settings

In the experiment, we use several medical data sets, including two cancer data sets, Armstrong-2002-v2 and Bhattacharjee-2001 [23], three medical data sets, and brain images in the UCI database [24]. Armstrong-2002-v2 is a data set to distinguish the expression of leukemia genes. It is divided into three categories, with a total of 72 samples. Bhattacharjee-2001 is a lung cancer classification data set, including five categories, a total of 203 samples. Because of the small sample size of these two data sets, they are not segmented here. The heart disease data set, diabetic retinopathy Debrecen (DRD) data set, and hepatitis C virus (HCV) for Egyptian patient data set are three UCI medical data sets. The heart disease data set contains 303 samples, and only 14 of them are used in this article. The DRD data set contains 1151 samples, and the HCV data set contains 1385 samples. To facilitate the division, this study takes 1000 samples for the diabetic retinopathy Debrecen data set. The HCV data set took 1,200 samples. A total of three brain CT images were selected as CT1, CT2, and CT3, with pixels of 275 × 273, 273×277, and 264 × 271. To facilitate segmentation, the pixels of the three pictures are reduced to 272 × 272, 272 × 272, and 264 × 264, respectively. The comparison algorithms include OFCM [25] and SPFCM [25], which can process large-scale data clustering. Among them, the two cancer data sets and one UCI medical data set are used to compare the clustering effects of OWBFC, OFCM, and SPFCM algorithms without segmentation. The remaining two UCI medical data sets are used to compare the clustering effects and time of OWBFC, OFCM, and SPFCM algorithms in different proportions of segmentation. The brain images are used to show the running time comparison of OWBFC and BFC. The OWBFC, OFCM, and SPFCM algorithms have two parameters: fuzzy index m and prior parameter α. In this study, we set m = 1.7 and α = 1. To visually display the clustering performance, we use four clustering performance indicators of accuracy, entropy, F-measure, and purity to show the clustering results. R=fullt/blockt represents the ratio of the running time of the whole processing data set and the block processing data set of the algorithm, fullt represents the running time on the whole data set, and blockt represents the sum of the running time on each block. Although this part loads the data set into the memory at one time, this paper believes that R is similar to the data that cannot be loaded, because the total amount of data is the same, whether it is processed separately or at one time. Our experimental platform is AMD R5-5600X, six cores, 16G memory, Windows10 operating system, Matlab2016a.


## 4.2. Experimental Results on the Armstrong-2002-v2, Bhattacharjee-2001, and Heart Disease Data Set

To make SPFCM and OFCM algorithms run better, according to the suggestions of Havens et al. [25], we set the fuzzy index m = 1.7. For the Armstrong-2002-v2 data set, Bhattacharjee-2001 data set, and heart disease data set, the number of clusters is set to 3, 5, and 5, respectively. Because the sample size of these three data sets is small, they are not processed in blocks. Table 1 shows the experimental results of the OFCM, SPFCM, and OWBFC algorithms. We can see that the OFCM algorithm and the SPFCM algorithm have similar clustering performances on these three different data sets, and it is difficult to compare the advantages and disadvantages of the two algorithms. But comparing the OFCM algorithm, SPCM algorithm, and OWBFC algorithm, it is easy to see that the OWBFC algorithm has the best clustering results except for some special cases.Table 1
Clustering performance on Armstrong-2002-v2, Bhattacharjee-2001, and Heart Disease data sets.
Data setsAlgorithmsAccuracyEntropyF-measurePurityArmstrong-2002-v2OFCM0.72350.47280.79480.7331SPFCM0.72370.46970.80110.7372OWBFC0.75480.46320.79640.7489Bhattacharjee-2001OFCM0.82130.28790.86370.8235SPFCM0.86350.24550.92940.8769OWBFC0.87920.24230.93280.8817Heart DiseaseOFCM0.76430.46750.79210.7039SPFCM0.76590.46780.79140.7054OWBFC0.77680.46790.79320.7258The best average performances are shown in bold type in Tables1–7.Table 2
Accuracy (mean/max/min) on the DRD and HCV data sets (%).
DRD data setBlock sizeOFCMSPFCMOWBFC573.16/73.32/72.9573.26/73.37/73.1874.78/74.90/74.661073.34/74.44/73.1273.37/73.54/73.1574.83/74.97/74.725073.53/73.64/73.3173.51/73.62/73.4375.02/75.16/74.93HCV data setBlock sizeOFCMSPFCMOWBFC574.16/74.41/74.1174.17/74.31/74.0975.61/75.78/75.521074.29/74.44/74.1674.24/74.42/74.1375.65/75.80/75.525074.37/74.48/74.3174.33/74.47/74.2575.73/75.86/75.66Table 3
Entropy (mean/max/ min) on the DRD and HCV data sets (%).
DRD data setBlock sizeOFCMSPFCMOWBFC547.72/47.88/47.6547.77/47.92/47.6147.34/47.49/47.261047.75/47.89/47.6747.77/47.91/47.6347.39/47.54/47.285047.81/47.95/47.7647.82/47.97/47.7447.44/47.57/47.33HCV data setBlock sizeOFCMSPFCMOWBFC546.65/46.78/46.5246.79/46.87/46.6846.84/46.97/46.751046.69/46.78/46.5346.81/46.89/46.7246.84/47.03/46.725046.71/46.82/46.6646.88/46.96/46.7546.87/47.11/46.76Table 4
F-measure (mean/max/min) on the DRD and HCV data sets (%).
DRD data setBlock sizeOFCMSPFCMOWBFC577.96/78.13/77.8177.93/78.15/77.8278.42/78.57/78.301077.96/78.15/77.8177.96/78.17/77.8478.47/78.60/78.335078.04/78.21/77.8577.98/78.22/77.8878.51/78.63/78.38HCV data setBlock sizeOFCMSPFCMOWBFC575.02/75.14/74.9375.02/75.16/74.8975.96/76.13/75.841075.13/75.25/75.0275.10/75.24/74.9076.03/76.17/75.915075.17/75.31/75.0575.16/75.36/75.0376.15/76.31/76.02Table 5
Purity (mean/max/min) on the DRD and HCV data sets (%).
DRD data setBlock sizeOFCMSPFCMOWBFC574.58/74.63/74.3474.55/74.67/74.4375.27/75.43/75.161074.64/74.72/74.4974.59/74.75/74.4875.31/75.46/75.245074.72/74.88/74.6274.66/74.81/74.5775.37/75.50/75.26HCV data setBlock sizeOFCMSPFCMOWBFC574.61/74.79/74.4874.55/74.67/74.3875.25/75.37/75.181074.67/74.83/74.5474.60/74.77/74.4575.29/75.43/75.165074.71/74.88/74.6274.66/74.79/74.5275.33/75.46/75.19Table 6
Clustering results of BFC and OWBFC on three brain images (%).
Data setsMethodsAccuracyEntropyF-measurePurityCtaBFC87.5423.6491.2687.43OWBFC88.0121.9891.3288.15CtbBFC88.6521.3891.9788.76OWBFC89.2321.0592.2889.61CtcBFC86.9124.3390.6587.15OWBFC87.0623.9691.4387.34Table 7
Running time on three brain images (s).
ImageBFCOWBFCCta1224.23345.36Ctb1231.14339.45Ctc1219.56326.72


## 4.3. Clustering Performance on DRD and HCV Data Set

Like the parameter setting in Section4.2, the DRD and HCV data sets are divided into 5%, 10%, and 50% of the whole data set, and the last column of the HCV data set is selected as the basis for the number of clusters, the fuzzy index m = 1.7, and the number of clusters is set to 4. The OFCM, SPFCM, and OWBFC algorithms run independently 10 times on the basis of random initialization to calculate the maximum, minimum, and average values of accuracy, entropy, F-measure, and purity. The clustering results of the two data sets are shown in Tables 2–5. From Table 2, it can be seen that the accuracy of the OFCM is slightly lower than that of the SPFCM algorithm when the number of data blocks is large, and the accuracy of the OFCM algorithm is higher than that of the SPFCM algorithm when the number of blocks is small. Overall, the accuracy of OFCM algorithm is similar to that of SPFCM algorithm, and the accuracy of OWBFC algorithm is the best. Tables 2–5 show the accuracy, entropy, F-measure, and purity of these two different data sets. For example, 74.78/74.90/74.66 represents the mean, max, and min accuracy values, respectively. Compared with the OFCM algorithm and SPFCM algorithm, the OWBFC algorithm has the best results whether it is entropy or F-measure or purity. Because the OWBFC algorithm uses the MCMC sampling method to solve the parameters, it can obtain the global optimization of the parameters. Therefore, the OWBFC algorithm can obtain better clustering performance. Only from Tables 3–5, the gap between the three algorithms is not obvious. Combining with Table 8, it can be clearly seen that the OWBFC algorithm has good clustering performance and also greatly reduces the time consumption of the algorithm. Table 8 shows the running time at different division ratios. Because the data set name is too long, the abbreviation is used in the experiment.Table 8
OWBFC running time on different block ratios (s).
Data setsBlock sizeR100%50%10%5%100%/50%100%/10%100%/5%DRD85.3167.5415.6712.511.265.446.82HCV97.2570.2617.4813.161.385.567.38


## 4.4. Brain Images

Three brain images are shown in Figure1. We use them to verify the clustering performance of OWBFC for large-scale image segmentation. We compare the OWBFC and BFC algorithms in this subsection. According to the recommendations [19, 25], the parameters α set to 1, and the parameters m set to 1.7. We split brain images at a ratio of 25% and set all classes to 3. Figures 2 and 3 show the clustering results of three brain images by BFC and OWBFC algorithms, respectively. Table 6 shows the experimental results on three brain images. Table 7 shows the running time results of BFC and OWBFC on three brain images. We can see from Table 6 that the clustering performance of OWBFC is better than that of BFC. Meanwhile, from Table 7, we can clearly see that OWBFC has a shorter time consumption compared with BFC. In summary, compared with BFC, the OWBFC algorithm not only maintains a good clustering effect but also consumes less time.Figure 1
Three brain images used in the experiment. (a) cta, (b) ctb, and (c) ctc.
(a)(b)(c)Figure 2
Clustering results of BFC on three brain images. (a) cta, (b) ctb, and (c) ctc.
(a)(b)(c)Figure 3
Clustering results of OWBFC on three brain images. (a) cta, (b) ctb, and (c) ctc.
(a)(b)(c)


## 5. Conclusion

With the advancement of science and technology, the collection of various medical data has become more frequent and easier, which makes the scale of medical data larger and larger, and it is impossible to import the data into the memory at one time, so the hardware requirements for processing these data become higher and the time consumption increases. This paper proposes an OWBFC method, which reduces the memory consumption of the computer and the time consumption of the algorithm by introducing an online clustering framework to process the data set in blocks. From the experimental results, the block processing can effectively reduce the time consumption of the algorithm. However, the online clustering framework adopted in this paper needs to merge and save the cluster centers of each data block in the process of processing data, which raises the space consumption of the algorithm. Therefore, how to avoid excessive space consumption while ensuring low time consumption is a problem worth thinking about.



---

*Source: 6168785-2022-02-21.xml*