A clustering analysis method and a clustering analysis device based on elastic network
By constructing an elastic neural network and guiding nodes to move towards the cluster center, the problem of insufficient solution quality and speed of the NENA algorithm in high-dimensional and big data cluster analysis is solved, and more efficient cluster analysis is achieved.
Patent Information
- Application Number
- CN202510311929.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-17
- Publication Date
- 2025-11-07
- Estimated Expiration
- 2045-03-17
AI Technical Summary
The existing elastic network clustering algorithm NENA suffers from reduced network solution quality and running speed due to the limiting and penalty terms of the energy function when solving high-dimensional and big data clustering analysis problems. The high computational complexity of the neuron momentum formula also limits the algorithm's solution capability.
By constructing an elastic neural network, the position update momentum of each elastic node is calculated using an energy function, and the nodes are guided to move towards the preset cluster center. The target elastic node is selected through competition among neurons, and its position is updated to the target data point. When the clustering termination condition is met, the cluster center is determined and cluster analysis is performed.
It improves the ability to solve high-dimensional, large-scale clustering problems and the accuracy of clustering, thereby enhancing the efficiency and effectiveness of cluster analysis.
Smart Images

Figure CN120256983B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of computer, in particular to a clustering analysis method and device based on elastic network. BACKGROUND
[0002] At present, the commonly used clustering method is elastic network clustering algorithm NENA. The energy function of NENA algorithm is originally designed for solving the traveling salesman problem (TSP) problem. Like the original elastic network, the energy function of NENA algorithm has a restriction term and a penalty term. The restriction term is responsible for the attraction of the data points (i.e. cities in TSP) on the elastic band. The penalty term is conducive to achieving the shortest journey. Although this can well solve the TSP problem, the goal of clustering is to make the similarity of data objects belonging to a cluster and the difference of data objects in different clusters as large as possible. Therefore, the energy function of NENA algorithm is not completely suitable for solving the clustering analysis problem, and the clustering quality needs to be further improved.
[0003] Secondly, due to the existence of the penalty term of the energy function, the expansion of the elastic band and the movement of the elastic nodes are affected by the attraction between adjacent elastic nodes, thereby reducing the solving quality and running speed of the network. Especially for solving high-dimensional and large data clustering analysis problems, the solving quality is significantly reduced.
[0004] Finally, the neuron momentum formula of NENA algorithm has high computational complexity, which limits the solving ability of the algorithm for high-dimensional and large data clustering problems. Therefore, the elastic network clustering algorithm NENA is not suitable for solving high-dimensional and large data clustering analysis problems. SUMMARY
[0005] Therefore, the purpose of the present application is to provide a clustering analysis method and device based on elastic network to overcome at least one of the above-mentioned defects.
[0006] In a first aspect, an embodiment of the present application provides a clustering analysis method based on an elastic network, which comprises the following steps: (A) constructing an elastic network for a data set to be solved, calculating a position update momentum corresponding to each elastic node in the elastic network based on an energy function of the elastic network, and controlling each elastic node to move towards a preset cluster center direction according to the position update momentum, wherein the data set to be solved comprises a plurality of data points required to be clustered, the constructed elastic network comprises a plurality of elastic nodes, i.e., a plurality of neurons, the number of elastic nodes, i.e., neurons, included in the elastic network is equal to the total number of clusters into which all data points are divided, and the position update momentum refers to a position offset of the elastic node calculated according to the energy function; (B) selecting a target data point; (C) introducing competition among neurons in the elastic network, taking a competition winning neuron as a target elastic node to be optimized, and updating the position of the target elastic node to the position of the target data point to update the elastic network; (D) detecting whether the data set to be solved and the elastic network after the movement of the elastic node satisfy a clustering termination condition; (E) if the clustering termination condition is satisfied, determining each elastic node in the elastic network as a cluster center, and clustering the plurality of data points according to the determined cluster center to obtain a plurality of clusters.
[0007] In an optional embodiment of the present application, the target data point is determined by the following method: selecting a preset number of data points from the data set to be solved to form a sub-data set; for each data point in the sub-data set, updating the position of the competition winning neuron to the position of the selected target data point to determine a confidence interval of each data point in each competition; and selecting a data point satisfying a preset condition from all data points in the sub-data set as the target data point.
[0008] In an optional embodiment of the present application, the confidence interval of each data point in the sub-data set is determined by the following method: introducing a competition mechanism among neurons in the elastic network and performing competition, updating the position of the competition winning neuron to the position of the selected target data point, recording a total reward value generated by the data point after the update of the elastic node and a total number of times of selection of the data point; and calculating a confidence degree and a confidence interval of the data point in the current competition round based on the recorded total reward value and total number of times of selection of the data point.
[0009] In an optional embodiment of the present application, the position of the winning elastic node in the competition of the update is updated by the following method: a plurality of elastic networks are constructed, each of which includes a to-be-updated elastic node and the remaining original elastic nodes, the remaining original elastic nodes including the elastic nodes in the elastic network except the elastic node to be updated by the target data point, the elastic node to be updated by the target data point being different among different groups of data; the distance standard deviation of each elastic network is calculated; the distance standard deviation of each elastic network is compared with the distance standard deviation threshold; if the distance standard deviation of at least one elastic network is less than the distance standard deviation threshold, the to-be-updated elastic node corresponding to the elastic network with the smallest distance standard deviation is taken as the winning neuron, and the position of the winning neuron is updated to the position of the target data point; wherein the method further comprises: if there is no elastic network with a distance standard deviation less than the distance standard deviation threshold, directly returning to step (A).
[0010] In an optional embodiment of the present application, the method further comprises: whenever the position of the elastic node in the elastic network is updated, the iteration number corresponding to the elastic network is increased by one, and the iteration number is stored, wherein the step of detecting whether the to-be-solved data set and the elastic network after the update of the elastic node satisfy the clustering termination condition comprises: for each update of the elastic network, determining the difference between the distance standard deviation of the elastic network after the update and the preset distance standard deviation and the number of updates, the preset distance standard deviation being the distance standard deviation of the elastic network corresponding to the previous update of the current number of updates; detecting whether the continuous number of updates is greater than the target number, the continuous number of updates being the number of times that the difference between the distance standard deviation of the elastic network after the update and the preset distance standard deviation is less than the target difference value; if the continuous number of updates is greater than the target number, it is determined that the to-be-solved data set and the current elastic network satisfy the clustering termination condition; if the continuous number of updates is not greater than the target number, it is determined that the to-be-solved data set and the current elastic network do not satisfy the clustering termination condition.
[0011] In an optional embodiment of the present application, the position update momentum of each elastic node is determined by the following method: the Euclidean distance between the elastic node and each data point is determined; for each data point, the probability value of the data point belonging to the cluster corresponding to the elastic node as the current clustering center is determined according to the maximum entropy principle; an energy function is constructed according to the maximum entropy principle, the determined probability value and the Euclidean distance, and the position update momentum of the elastic node is calculated according to the energy function.
[0012] In an optional embodiment of the present application, before step (A), the method further comprises: determining an initial center point according to each data point in the data set to be solved, the initial center point being used to indicate the barycenter of all data points in the data set to be solved; determining a closed annular elastic band based on the initial center point; and determining a plurality of elastic nodes in the elastic network based on the annular elastic band.
[0013] In a second aspect, the embodiments of the present application further provide a clustering analysis device based on an elastic network, which comprises: a calculation module, configured to, for a data set to be solved, construct an elastic neural network, calculate a position update momentum corresponding to each elastic node in the elastic network based on an energy function of the elastic network, and control each elastic node to move in a direction of a preset clustering center according to the position update momentum, wherein the data set to be solved comprises a plurality of data points required to be clustered, the constructed elastic network comprises a plurality of elastic nodes, i.e., a plurality of neurons, the number of elastic nodes, i.e., neurons, included in the elastic network is the total number of clusters into which all data points are divided, and the position update momentum refers to a position offset of an elastic node calculated according to the energy function; a target data point selection module, configured to select a target data point; an update module, configured to introduce competition among neurons in the elastic network, take a competition winning neuron as a target elastic node to be optimized, and update the position of the target elastic node to the position of the target data point to update the elastic network; a clustering termination condition judgment module, configured to detect whether the data set to be solved and the elastic network after the movement of the elastic nodes satisfy a clustering termination condition; and a clustering center determination module, configured to, if the clustering termination condition is satisfied, determine each elastic node in the elastic network as a clustering center, and cluster the plurality of data points according to the determined clustering center to obtain a plurality of clusters.
[0014] In a third aspect, the embodiments of the present application further provide an electronic device, which comprises a processor, a memory and a bus, the memory stores machine readable instructions executable by the processor, when the electronic device is running, the processor and the memory communicate through the bus, and the machine readable instructions are executed by the processor to perform the steps of the above method.
[0015] In a fourth aspect, the embodiments of the present application further provide a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to perform the steps of the above method.
[0016] The clustering analysis method and device based on the elastic network provided by the embodiments of the present application are used for constructing an elastic neural network for a data set to be clustered, calculating a position update momentum corresponding to each elastic node in the elastic network based on an energy function of the elastic network, and controlling each elastic node to move towards a preset cluster center according to the position update momentum; selecting a target data point; introducing competition among neurons in the elastic network, taking a winning neuron in the competition as a target elastic node to be optimized, and updating a position of the target elastic node to a position of the target data point to update the elastic network; detecting whether the elastic network after the movement of the data set and the elastic node satisfies a clustering termination condition; if the clustering termination condition is satisfied, determining each elastic node in the elastic network as a cluster center, and clustering a plurality of data points according to the determined cluster center to obtain a plurality of clusters. Through the embodiments of the present application, the ability of the network to solve high-dimensional and large-data clustering problems is further improved, and the clustering accuracy is improved.
[0017] In order to make the above objectives, features and advantages of the present application more apparent, the following will specifically describe a preferred embodiment in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF DRAWINGS
[0018] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the following will briefly introduce the drawings needed to be used in the embodiments. It should be understood that the following drawings only show some of the embodiments of the present application, and therefore should not be considered as a limitation to the scope. For those skilled in the art, other related drawings can also be obtained without creative labor.
[0019] Figure 1 The flowchart of the clustering analysis method based on the elastic network provided by the embodiments of the present application;
[0020] Figure 2 The flowchart of determining the target data point provided by the embodiments of the present application;
[0021] Figure 3 The flowchart of determining the confidence interval of each data point in the sub-data set provided by the embodiments of the present application;
[0022] Figure 4 The structural schematic diagram of the clustering analysis device based on the elastic network provided by the embodiments of the present application;
[0023] Figure 5 The structural schematic diagram of the electronic device provided by the embodiments of the present application. DETAILED DESCRIPTION
[0024] To make the objects, technical solutions and advantages of the embodiments of the present application clearer, the following will be combined with the accompanying drawings for the embodiments of the present application to make a clear and complete description of the technical solutions of the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, but not all the embodiments. The components of the embodiments of the present application described and shown in the accompanying drawings can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the claimed present application, but only represents selected embodiments of the present application. Based on the embodiments of the present application, every other embodiment obtained by a person skilled in the art without creative work belongs to the scope of protection of the present application.
[0025] Firstly, the application scenarios applicable to the present application are introduced. The present application can be applied to the field of computer technology.
[0026] It is found through research that the commonly used clustering method is the elastic network clustering algorithm NENA. The energy function of the NENA algorithm is originally designed for solving the traveling salesman problem TSP (Travelling Salesman Problem). Like the original elastic network, the energy function of the NENA algorithm has a restriction term and a penalty term, which limits the ability to solve high-dimensional and large data clustering analysis problems, and the solving quality is low.
[0027] Based on this, the embodiments of the present application propose an elastic network-based clustering analysis method and device. The method constructs an elastic neural network, calculates the position update momentum of each elastic node by using an energy function, and guides the nodes to move towards the preset clustering center. Through the competition between neurons, the target elastic node is selected and its position is updated to the target data point, so as to update the elastic network. When the clustering termination condition is met, the elastic node is determined as the clustering center, and clustering analysis is performed. The clustering accuracy is improved by the present application.
[0028] Please refer to Figure 1 , Figure 1 The flowchart of the elastic network-based clustering analysis method provided by the embodiments of the present application is shown in FIG. 1. Figure 1 The elastic network-based clustering analysis method provided by the embodiments of the present application includes the following steps.
[0029] S101, for a data set to be solved, an elastic neural network is constructed, and based on the energy function of the elastic network, the position update momentum corresponding to each elastic node in the elastic network is calculated, and each elastic node is controlled to move towards the direction of the preset clustering center according to the position update momentum.
[0030] Here, the dataset to be solved, i.e., the dataset that needs to be clustered, includes a plurality of data points that need to be clustered, the constructed elastic network includes a plurality of elastic nodes, i.e., a plurality of neurons, the total number of elastic nodes included in the elastic network is the total number of clusters into which all data points are divided, and the position update momentum refers to the position offset of the elastic node calculated according to the energy function;
[0031] The preset cluster center direction is the direction of the cluster center that makes the SED value of the cluster objective function minimum for the current cluster analysis problem corresponding to the dataset to be solved, and each elastic node moves in the preset cluster center direction to complete one iteration movement according to the position update momentum.
[0032] In an optional embodiment, the dataset can be the MNIST dataset, which is composed of 70,000 black and white images, each image represents a handwritten digit (0-9), and is converted into a 784-dimensional vector (because the image size is 28x28 pixels, there are a total of 784 pixel points). Here, in the MNIST dataset, each 784-dimensional vector represents a data point, i.e., a digital image (converted into a vector form). Therefore, the MNIST dataset contains 70,000 data points, and when the elastic network clustering algorithm is used to solve the MNIST dataset, under the action of the energy function, each handwritten digit image (i.e., data point) will generate a force on the elastic node, and these forces will guide the elastic node to move to a position that can best represent the cluster center. Therefore, after the algorithm runs, the position of the elastic node will correspond to the cluster center of each handwritten digit category in the MNIST dataset, and the MNIST dataset is commonly used to test the performance of various image processing and machine learning algorithms.
[0033] In another optional embodiment, the scRNA-seq dataset is a dataset about single-cell RNA sequencing, which contains 40,000 cells after standard filtering, and each cell has the gene expression level of 10,170 different genes. In the scRNA-seq dataset, each cell corresponds to a data point, and its gene expression level constitutes a high-dimensional vector (10,170 dimensions). Therefore, the scRNA-seq dataset contains 40,000 data points, and each elastic node represents a possible cluster center. The data points will be assigned to the cluster represented by the nearest elastic node according to the distance (or other similarity measure) between them. In the case of the scRNA-seq dataset, this means that the cells (data points) will be assigned to the elastic nodes (cluster centers) that are most similar to their gene expression patterns. Such scRNA-seq datasets are very important in biological and medical research, as they can help researchers understand the differences between different cell types and their roles in disease occurrence and development.
[0034] Both of the two data sets are large-scale and high-dimensional data sets, which are representative. By solving the clustering analysis problem of these data sets, the effectiveness and practicability of the new method can be verified.
[0035] In this step, in a k-dimensional space, a data set X = {x1, x2, …, xn} to be solved containing n data points is given, and an initial center point is determined, which is used to indicate the center of gravity of all data points in the data set. n}, determine an initial center point, which is used to indicate the center of gravity of all data points in the data set.
[0036] Based on the initial center point, a closed annular elastic band is determined, and the initial center point is established by using the elastic network to fix the elastic band initialization mode. The radius of the initial elastic network is obtained by dynamic calculation. For the same data set to be solved, the original elastic band is fixed for each initialization. The corresponding calculation formula is:
[0037]
[0038] wherein, is the coordinate of the initial center point in the lth-dimensional space, x i is the coordinate of the ith data point in the data set to be solved, x i,l is the coordinate of the ith data point x i in the lth-dimensional space, n is the total number of all data points in the data set, 1≤i≤n, 1≤l≤k, and k is the total dimension of the data point in the space.
[0039] For example, k = 2, x 1,1 represents the coordinate of the first data point in the first-dimensional space (X-axis coordinate), x 1,2 represents the coordinate of the first data point in the second-dimensional space (Y-axis coordinate), x 2,1 represents the coordinate of the second data point in the first-dimensional space (X-axis coordinate).
[0040]
[0041] wherein, R is a preset radius, is the coordinate of the initial center point, which is also the center of gravity of all data points in the data set, composed of the average value of each data point in each-dimensional space coordinate, i.e. x i is the coordinate of the ith data point in the data set, is the Euclidean distance between the ith data point x i and the center of gravity, n is the total number of all data points in the data set.
[0042] Based on the annular elastic band, a plurality of elastic nodes in the elastic network are determined, where a closed annular elastic band is generated according to a preset radius with the initial center point as the center, and each elastic node in the elastic network is uniformly distributed on the annular elastic band. m} and m elastic nodes are on the elastic band, and each elastic node in the elastic network is uniformly distributed on the annular elastic band.
[0043] The SED (Sum of Euclidean Distance) value is used as one of the evaluation criteria of the clustering quality in the application, and the smaller the SED value is, the higher the clustering quality is. The calculation formula of the SED value is:
[0044]
[0045] where SED is the distance standard error of the energy function, x i represents the coordinates of the i th data point in the data set, C j represents the j th cluster in the data set, m j represents the coordinates of the clustering center of the j th cluster, d(x i , m j ) represents the Euclidean distance between the i th data point x i and the clustering center m j of the j th cluster, and the SED on the left side of the above formula represents the sum of the Euclidean distances between all data points and the clustering centers to which they belong.
[0046] The position update momentum corresponding to each elastic node is determined in the following manner:
[0047] The Euclidean distance between the elastic node and each data point is determined.
[0048] D ij = d(x i , y j ) = ||x i -y j || 2 (4)
[0049] where D ij is the square of the Euclidean distance between the i th data point and the j th elastic node y j , x i represents the coordinates of the i th data point in the data set, and y j represents the coordinates of the j th elastic node in the elastic network.
[0050] The clustering target function SED is introduced into the elastic network energy function in the application, and a new energy function is obtained:
[0051]
[0052] Where E is the energy function of the elastic network, w ij For the i-th data point to belong to the j-th elastic node y j The probability value of the corresponding cluster, D ij For the i-th data point and the j-th elastic node y j The square of the Euclidean distance between them, where n is the total number of data points in the dataset, 1≤i≤n, and m is the total number of data points in the elastic network, 1≤j≤m.
[0053] Because of w ij Since there is no prior knowledge and it is an unknown probability distribution, we use the principle of maximum entropy to determine w. ij The basic form of entropy is defined as follows:
[0054]
[0055] Where H is the initial value of the entropy function, used to measure the disorder of the probability distribution of data points belonging to each cluster center. The larger the entropy value, the more uniform the probability distribution and the greater the uncertainty. ij For the i-th data point to belong to the j-th elastic node y j The probability value of the corresponding cluster, where n is the total number of data points in the dataset, 1≤i≤n, and m is the total number of data points in the elastic network, 1≤j≤m.
[0056] According to the principle of maximum entropy, under the constraints of formulas (5) and (6), the probability distribution of the maximum entropy H is w ij This refers to the equilibrium state of a physical system at temperature T.
[0057] Therefore, by solving the variational problem, the data point x i The maximum probability distribution belonging to a certain cluster can be expressed as:
[0058] For each data point, based on the principle of maximum entropy, the probability value of the data point belonging to the cluster corresponding to the elastic node as the current cluster center is determined;
[0059]
[0060] Among them, w ij For the i-th data point to belong to the j-th elastic node y j The probability value, D ij For the i-th data point and the j-th elastic node y j The square of the Euclidean distance between them, where m is the total number of all elastic nodes in the elastic network, and θ is a temperature-dependent parameter.
[0061] Here, the temperature-related parameter θ is determined by the following formula:
[0062] θ = 1 / (2T 2 ) (8)
[0063] where θ is a temperature-related parameter, T is the temperature at which the physical system is in equilibrium, and the value range of θ is suggested to be 1 < θ < 1000.
[0064] According to the above theory, we can obtain the general form of the Helmholtz free energy function corresponding to the physical system, which is determined by the following formula:
[0065]
[0066] where F is the free energy function of the physical system, θ is a temperature-related parameter, D ij is the square of the Euclidean distance between the i-th data point and the j-th elastic node y j , n is the total number of data points in the data set, 1 ≤ i ≤ n, and m is the total number of data points in the elastic network, 1 ≤ j ≤ m.
[0067] According to the simulated annealing theory, when the free energy reaches a minimum value, the system tends to be stable and reaches an equilibrium state. In order to prevent the elastic network from falling into a local minimum value due to excessive free energy drop and causing clustering failure, a constant parameter α is introduced. Parameter α is used to control the movement range of neurons (i.e. nodes in the elastic network). Therefore, the new free energy function is defined as follows:
[0068]
[0069] where α is a preset constant, F is the free energy function of the physical system, θ is a temperature-related parameter, D ij is the square of the Euclidean distance between the i-th data point and the j-th elastic node y j , n is the total number of data points in the data set, 1 ≤ i ≤ n, and m is the total number of data points in the elastic network, 1 ≤ j ≤ m.
[0070] When the free energy is at a minimum, the nonlinear coupling calculation equation of the optimal elastic network node position is as follows:
[0071]
[0072] where w ij is the probability distribution of the i-th data point belonging to the j-th elastic node y j , x i represents the coordinates of the i-th data point in the data set, y j represents the coordinates of the j-th elastic node, and n is the total number of data points in the data set, 1 ≤ i ≤ n.
[0073] According to the maximum entropy principle, the determined probability value and the Euclidean distance, an energy function is constructed, and a position update momentum of the elastic node is calculated according to the energy function.
[0074] Using the steepest descent algorithm, a position update momentum of each elastic node in the elastic network is determined by the following formula:
[0075]
[0076] wherein Δy j is a position update momentum of each elastic node in the elastic network in each iteration process, Δτ is a time step in each iteration process, w ij is a probability distribution of the i th data point belonging to the j th elastic node y j , x i represents a coordinate of the i th data point in the data set, y j represents a coordinate of the j th elastic node, n is a total number of data points in the data set, 1≤i≤n, F is a free energy function of the physical system, and α is a constant.
[0077] When Δτ is properly selected, the network performance is better, and in the present application, it is suggested that the value range of Δτ is 0.1<Δτ<20, Δy j of each elastic node is calculated by formula (12), and the position of each elastic node is updated by the formula. After SED is taken as the target function of the elastic network, each neuron moves in the direction of minimizing the SED value under the attraction of the data points, and here, Δy j symbolizes the direction.
[0078] Herein, is a mathematical symbol, representing "for all j", in the above formula, it is true for the j th elastic node in the elastic network, is a partial derivative symbol.
[0079] S102, a target data point is selected.
[0080] A new elastic node competition and updating strategy is proposed by integrating the idea of Multi-Armed Bandit (MAB) problem, and the position of each elastic node is updated again.
[0081] The idea of Multi-Armed Bandit problem is to regard each data point as a slot machine, select the slot machine with the highest yield, i.e. a data point, to operate each time, calculate the SED value of the target function after it is exchanged with the center point, if it is optimized, replace the data point with the center point, if it is not optimized, do not replace, and the yield is calculated by the reward strategy.
[0082] Please refer to Figure 2 ,Figure 2 A flowchart for determining the target data point provided by the embodiments of the present application. As shown in Figure 2 The flow for determining the target data point provided by the embodiments of the present application includes:
[0083] Each data point is regarded as an arm, and one target data point is selected in each round for the update of the elastic node. The target data point is determined by the following method:
[0084] S201, selecting a preset number of data points from the data set to be solved to form a sub-data set;
[0085] For example, a subset containing 1000 data points is randomly selected from the data set, and all data points in the data set with less than 1000 data points are directly selected.
[0086] S202, for each data point in the sub-data set, updating the position of the competing winning neuron to the position of the selected target data point to determine the confidence interval of each data point in each competition.
[0087] The total reward value R of each data point is i And the total number of selections N is i initialized to 0;
[0088] Please refer to Figure 3 , Figure 3 A flowchart for determining the confidence interval of each data point in the sub-data set provided by the embodiments of the present application. As shown in Figure 3 The flow for determining the confidence interval of each data point in the sub-data set provided by the embodiments of the present application includes:
[0089] The confidence interval of each data point in the sub-data set is determined by the following method:
[0090] S2021, introducing competition among the neurons in the elastic network, updating the position of the competing winning neuron to the position of the selected target data point, and recording the total reward value generated by the data point after the update of the elastic node and the total number of selections of the data point.
[0091] A round of competition includes multiple competitions. One competition refers to the process of one data point competing with one elastic node in the elastic network. One round of competition refers to one data point competing with each elastic node in the elastic network. The data point competing with each elastic node in the elastic network is different in each round of competition. According to a preset arrangement order, one data point is selected to compete with each elastic node in the elastic network in turn.
[0092] For the data set with the number of data points less than 1000: the current round g = n, for the data set with the number of data points greater than 1000: g = 1000, before the gth round of competition, the data points x are selected in the order in the sub-data set i , that is, the selected data points x s = x i , m elastic nodes are competed, and the winning elastic node after the competition is updated to x s . After each round of competition, the total reward value R i of the current data point x i is recorded, and the total selection number N i of the data point x i is added by 1.
[0093] S2022, based on the total reward value and the total selection number of the recorded data points, the confidence and the confidence interval of the data points in the current competition round are calculated.
[0094] Here, for each elastic node in the elastic network, the total reward value generated after the winning neuron is updated to x s and the total selection number of the data points are recorded, and the confidence interval corresponding to the data points is calculated according to the total reward value and the total selection number.
[0095] It is judged whether the current round is less than g, if less than, it indicates that each data point in the sub-data set has not been selected, a data point is selected according to the order, and the elastic node in the elastic network is competed respectively, the total reward value and the total selection number of the data point are recorded, the round number is added by 1, and it is returned to continue to judge whether the current round is less than g, if the current round is not less than g, it indicates that each data point in the sub-data set has been selected at least once, then the total reward value and the total selection number recorded by each data point are outputted to calculate the confidence interval corresponding to each data point after the competition.
[0096] After the gth round, the total selection number N i (j) and the total reward value R i (j) of the data point x i selected before the jth round are recorded. According to the two values, the average reward of the data point x i before the jth round and the confidence interval of the jth round are calculated.
[0097] The average reward of the data point x i before the jth round is calculated by the following formula
[0098]
[0099] Wherein, R is the average reward of the i th data point in the j th round of competition, i (j) is the total reward value of the i th data point in the j th round of competition, N i (j) is the total number of selections of the i th data point in the j th round of competition.
[0100] Here, the confidence of the i th data point in the j th round of competition is determined by the following formula:
[0101]
[0102] where Δ i (j) is the confidence of the i th data point in the j th round of competition, N i (j) is the total number of selections of the i th data point in the j th round of competition.
[0103] The confidence interval of the i th data point in the j th round of competition is calculated by the following expression:
[0104]
[0105] In the above expression, R is the average reward of the i th data point in the j th round of competition, Δ i (j) is the confidence of the i th data point in the j th round of competition.
[0106] S203, based on the confidence interval of all data points in the sub-data set, a data point satisfying a preset condition is selected as a target data point.
[0107] In an optional embodiment, the data point x s with the largest upper limit of the confidence interval in the j th round is determined as the target data point, that is:
[0108]
[0109] where x s is the position of the data point with the largest upper limit of the confidence interval in the j th round, R is the average reward of the i th data point in the j th round of competition, Δ i (j) is the confidence of the i th data point in the j th round of competition.
[0110] Preferably, the preset condition is the largest upper limit of the confidence interval in the current round.
[0111] S103, competition is introduced between each neuron in the elastic network, the competition winning neuron is taken as the target elastic node to be optimized, and the position of the target elastic node is updated to the position of the target data point to update the elastic network.
[0112] A new competition mechanism is introduced and the position of the updated competition winning elastic node in the elastic network is determined by the following way:
[0113] Based on the target data point x s selected above, a plurality of elastic networks are constructed.
[0114] Each elastic network includes an elastic node to be updated and the remaining original elastic nodes, the remaining original elastic nodes including the elastic nodes in the elastic network except the elastic node to be updated by the target data point, and the elastic node to be updated by the target data point is different among different groups of data.
[0115] The distance standard error of each elastic network is calculated, and the distance standard error of each elastic network is compared with a distance standard error threshold value;
[0116] If the distance standard error of at least one elastic network is less than the distance standard error threshold value, the elastic node corresponding to the elastic network with the smallest distance standard error is taken as the competition winning neuron, and the position of the competition winning neuron is updated to the position of the target data point;
[0117] Here, in the first update, the distance standard error threshold value is the SED value of the original elastic network before the update, and in the update other than the first time, the distance standard error threshold value is the distance standard error of the corresponding elastic network in the previous update.
[0118] Further comprising:
[0119] If there is no elastic network with a distance standard error less than the distance standard error threshold value, directly return to step S101.
[0120] In one optional embodiment, assuming there are three elastic nodes labeled 1, 2, and 3, and a target data point labeled A, the constructed multiple elastic networks are 1, 2, and 3' (assuming the position of elastic node 3 is updated to the position of target data point A); 1, 3, and 2' (assuming the position of elastic node 2 is updated to the position of target data point A); and 2, 3, and 1' (assuming the position of elastic node 1 is updated to the position of target data point A). The standard error of the distances corresponding to the three elastic networks is calculated. Among at least one set of elastic networks whose distances are less than the standard error threshold, the set with the largest difference from the standard error threshold is selected. The elastic nodes are updated based on this set of elastic networks. For example, if the set of elastic networks with the largest difference from the standard error threshold is 2, 3, and 1', then elastic node 1 is considered the winning neuron in this round of competition, i.e., the elastic node to be updated. The position of elastic node 1 is actually updated to the position corresponding to target data point A. Here, the above construction of multiple elastic networks only assumes that the position of a certain neuron is updated to the target data point x. s The purpose of this method is to select the winning neurons in order to perform the actual position update.
[0121] Specifically, if there exists at least one set of elastic networks whose distance standard error is less than the distance standard error threshold, then the elastic node to be updated corresponding to the set of elastic networks with the smallest distance standard error is taken as the winning neuron in the competition. The position of the winning neuron is updated to the position of the target data point, and the currently selected data point x is set to the target data point. s That is, x i The total reward value increases by 1, R i (j)=R i (j)+1;
[0122] If there is no elastic network with a distance from the standard error less than the standard error threshold, then no update is performed, the reward value remains unchanged, and the data point x is moved... i The total number of times N was selected i Add one, then return to step S101.
[0123] The position of each elastic node in the elastic network under the competition mechanism is calculated using the following formula:
[0124]
[0125] Among them, y j Let be the position of the j-th elastic node in the elastic network, Y be the elastic network, n be the total number of data points in the dataset (1≤i≤n), m be the total number of data points in the elastic network (1≤j≤m), and m' be the original node of the updated elastic network. s To update the updated position coordinates of the elastic node, C kis the cluster corresponding to the kth cluster center, m k is the position corresponding to the kth cluster center, x i is the coordinate of the ith data point in the data set.
[0126] Wherein, "\" represents the relative difference set of the left and right sets, that is, the set belonging to the left set but not belonging to the right set, that is, {a, b, c} \ {b, c, d} = {a}, "^" represents the minimum value, that is, a ^ b = min (a, b).
[0127] The position change increment of each elastic node in the elastic network in the competition mechanism is calculated by the following formula:
[0128]
[0129] Wherein, Δy i is the position update momentum of each elastic node in the updated elastic network, y j is the position of the jth elastic node in the elastic network, y j-1 is the position of the j-1th elastic node in the elastic network, Y is the elastic network, n is the total number of data points in the data set, 1≤i≤n, m is the total number of data points in the elastic network, 1≤j≤m, m' is the position coordinate of the original elastic node of the updated elastic network, x s is the updated position coordinate of the updated elastic node, C k is the cluster corresponding to the kth cluster center, m k is the position corresponding to the kth cluster center, x i is the coordinate of the ith data point in the data set, and Δτ is the time step in each iteration process.
[0130] S104, detect whether the data set to be solved and the elastic network after the elastic node moves meet the clustering termination condition.
[0131] If there is no target data point meeting the clustering condition, detect whether the data set and the elastic network after the elastic node moves meet the clustering termination condition.
[0132] Each time the position of the elastic node in the elastic network is updated, the iteration number corresponding to the elastic network is increased by one, and the iteration number is stored.
[0133] Wherein, the step of detecting whether the data set to be solved and the updated elastic network after the elastic node is updated meet the clustering termination condition comprises:
[0134] For each elastic network update, the difference between the distance standard error of the elastic network update and the preset distance standard error and the update number are determined.
[0135] Here, the preset distance standard error is the distance standard error of the previous elastic network update corresponding to the current update number;
[0136] detect whether the continuous update number is greater than a target number, the continuous update number being a number of times that the difference between the distance standard error of the elastic network update and the preset distance standard error is less than a target difference value;
[0137] If the continuous update number is greater than the target number, it is determined that the clustering termination condition is met for the data set to be solved and the current elastic network.
[0138] For example, the target number can be 10 times, and there is a case that the difference between the distance standard error after 10 continuous updates and the preset distance standard error is less than the target difference value, and it is determined that the data set and the elastic network meet the clustering termination condition.
[0139] If the continuous update number is not greater than the target number, it is determined that the data set to be solved and the current elastic network do not meet the clustering termination condition, the iteration number is incremented by one, and the process returns to S101.
[0140] In an optional embodiment, the target difference value ∈ can be dynamically adjusted according to the user's requirement for clustering accuracy, and preferably can be 0.0002.
[0141] S105, if the clustering termination condition is met, each elastic node in the elastic network is determined as a cluster center, and a plurality of data points are clustered according to the determined cluster center to obtain a plurality of clusters.
[0142] Specifically, each elastic node in the elastic network is determined as a cluster center, and the final position Y of the cluster center is determined end = {Y end 1, Y end 2, …, Y end m}.
[0143] According to formula (7), the probability value w of the ith data point x i belongs to the jth cluster center Y end j is calculated ij , the data point x i is assigned to the cluster C ij with the maximum w max value, and the final clustering is obtained;
[0144] A plurality of cluster sets C = {c1, c2, …, c m} and cluster center position sets Y end = {Y end 1, Y end 2, …, Y endm}。At this time, the clustering is completed.
[0145] If the clustering termination condition is not satisfied, return to S101.
[0146] The clustering analysis method and the clustering analysis device based on the elastic network provided by the embodiments of the present application are used to construct an elastic network for a data set to be solved, calculate a position update momentum corresponding to each elastic node in the elastic network based on an energy function of the elastic network, and control each elastic node to move in a direction of a preset cluster center according to the position update momentum; select a target data point; introduce competition between neurons in the elastic network, and after the competition, the winning neuron is the target elastic node to be optimized, the position of the target elastic node is updated to the position of the target data point, so as to update the elastic network; detect whether the elastic network after the movement of the data set and the elastic node satisfies a clustering termination condition; if the clustering termination condition is satisfied, determine each elastic node in the elastic network as a cluster center, and cluster a plurality of data points according to the determined cluster center, so as to obtain a plurality of clusters. Through the present application, the ability of the network to solve high-dimensional and large-data clustering problems is further improved, and the accuracy of clustering is improved.
[0147] The method provided by the present application has the following advantages when used for data clustering:
[0148] 1) The present application proposes a new elastic network clustering method, directly introduces a clustering objective function into an elastic network energy function, combines a maximum entropy principle, proposes formula (10), and further improves the ability of the network to solve high-dimensional and large-data clustering analysis problems by introducing the idea of a multi-armed bandit problem, and effectively improves the quality of clustering.
[0149] 2) The present application introduces the idea of a multi-armed bandit problem, constructs a new competition mechanism and updating strategy between elastic network neurons suitable for solving high-dimensional and large-data clustering analysis problems, and proposes a calculation formula of the position of the winning elastic node, as shown in formula (17).
[0150] 3) Based on the above elastic node competition mechanism, a new position change increment calculation formula of the elastic node for solving high-dimensional and large-data clustering analysis problems is proposed, as shown in formula (18).
[0151] The clustering objective function is directly introduced into the elastic network energy function, the energy function is designed to directly solve the clustering problem, and the quality of clustering solution is significantly improved. Since the energy function of the proposed method does not have a penalty term, the calculation complexity is further reduced, the time required for the network to reach saturation is less, and the ability of the algorithm to solve large-scale data clustering problems is improved.
[0152] The application considers the possibility of taking the points in the elastic network as the cluster center points by introducing the idea of multi-armed bandit, and optimizes the elastic network in the direction of the clustering target, which can further improve the clustering quality of the algorithm, and significantly improve the ability of the algorithm to solve high-dimensional and large-scale data clustering problems, avoid the algorithm from falling into local optimum, and reduce the influence of noise on the elastic network.
[0153] Through experimental verification, the method of the application can solve clustering analysis problems of the order of 1000,0000, such as the CoverType data set, the total number of samples is 581012, each sample has 54 characteristics, and the total size of the data set is 31374648.
[0154] Compared with the NENA algorithm, the ACC value (Accuracy, accuracy) of the method of the application for the data sets Wave form, Gamma and CoverType is increased by 103.90%, 16.40% and 23.3% respectively, so it can be seen that the application is more suitable for solving clustering analysis problems, especially for solving high-dimensional and large data clustering analysis problems.
[0155] The basic idea of the application is to customize a squared distance cost function based on the clustering target function SED, design and form a new energy function E, and use the maximum entropy principle to solve the probability value w of each data point belonging to each cluster in each data set ij , use the deterministic annealing technology to minimize the energy function to obtain the clustering result, and a new elastic node updating strategy is proposed by introducing the idea of multi-armed bandit problem to optimize the network, which regards each data point as a gambling machine, selects the gambling machine with the highest income, that is, a data point, selects the target data point, introduces competition between the elastic nodes, calculates the distance standard error of the target data point after exchanging with the elastic nodes, if optimized, the winning elastic node is updated to the position of the target data point, if not optimized, it is not updated, and the income is calculated by the reward strategy.
[0156] Compared with the original elastic network, the energy function of the improved algorithm is designed to replace the target function of the clustering problem, so that the algorithm can provide a better solution for clustering, and the energy function calculation complexity of the algorithm is further reduced, so that the number of iterations required for the network to reach saturation is less, the ability of the algorithm to solve large-scale data clustering problems is improved, the calculation complexity and time complexity are effectively reduced, and the elastic network node updating strategy introduced by the idea of multi-armed bandit further improves the ability of the elastic network algorithm to solve high-dimensional and large-scale clustering analysis problems.
[0157] Based on the same inventive concept, the embodiment of the present application also provides an elastic network-based clustering analysis device corresponding to the elastic network-based clustering analysis method. Since the principle of the device in the embodiment of the present application for solving the problem is similar to the elastic network-based clustering analysis method in the embodiment of the present application, the implementation of the device can be referred to the implementation of the method, and the repeated parts will not be described here.
[0158] Please refer to Figure 4 , Figure 4 The structure diagram of the elastic network-based clustering analysis device provided by the embodiment of the present application is shown in FIG. 4. Figure 4 As shown in FIG. 4, the elastic network-based clustering analysis device 400 includes:
[0159] The computing module 401 is configured to, for a data set to be solved, construct an elastic neural network, calculate a position update momentum corresponding to each elastic node in the elastic network based on an energy function of the elastic network, and control each elastic node to move in a direction of a preset cluster center according to the position update momentum, wherein the data set to be solved includes a plurality of data points required to be clustered, the constructed elastic network includes a plurality of elastic nodes, i.e., a plurality of neurons, the number of elastic nodes, i.e., neurons, included in the elastic network is the total number of clusters into which all data points are divided, and the position update momentum refers to a position offset of the elastic node calculated according to the energy function.
[0160] The target data point selection module 402 is configured to select a target data point.
[0161] The updating module 403 is configured to introduce competition between neurons in the elastic network, take a competition winning neuron as a target elastic node to be optimized, and update the position of the target elastic node to the position of the target data point to update the elastic network.
[0162] The clustering termination condition judgment module 404 is configured to detect whether the elastic network after the movement of the elastic nodes meets a clustering termination condition.
[0163] The cluster center determination module 405 is configured to, if the clustering termination condition is met, determine each elastic node in the elastic network as a cluster center, and cluster the plurality of data points according to the determined cluster center to obtain a plurality of clusters.
[0164] Please refer to Figure 5 , Figure 5 The structure diagram of the electronic device provided by the embodiment of the present application is shown in FIG. 3. Figure 5 As shown in FIG. 3, the electronic device 300 includes a processor 310, a memory 320, and a bus 330.
[0165] The memory 320 stores machine readable instructions executable by the processor 310, when the electronic device 300 is running, the processor 310 and the memory 320 communicate through the bus 330, the machine readable instructions are executed by the processor 310, can execute the steps of the method embodiment as described above Figure 1 The steps of the elastic network-based clustering analysis method in the method embodiment are shown, and the specific implementation manner can be referred to the method embodiment, which will not be repeated here.
[0166] The embodiment of the application further provides a computer readable storage medium, the computer readable storage medium stores a computer program, the computer program is run by the processor, and the computer program can execute the steps of the elastic network-based clustering analysis method in the method embodiment as described above Figure 1 The steps of the elastic network-based clustering analysis method in the method embodiment are shown, and the specific implementation manner can be referred to the method embodiment, which will not be repeated here.
[0167] Those skilled in the art can clearly understand that, for the convenience and brevity of the description, the specific working process of the system, device and unit described above can refer to the corresponding process in the foregoing method embodiment, which will not be repeated here.
[0168] In several embodiments provided in the application, it should be understood that the disclosed system, device and method can be implemented by other ways. The device embodiments described above are only schematic, for example, the division of the units is only a logical function division, and actual implementation can have another division manner, and for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some communication interfaces, devices or units, and can be electrical, mechanical or other forms.
[0169] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, that is, they can be located in one place, or can be distributed on a plurality of network units. According to actual needs, part or all of the units can be selected to achieve the purpose of the embodiment.
[0170] In addition, the functional units in each embodiment of the application can be integrated in one processing unit, or each unit can be physically present separately, or two or more units can be integrated in one unit.
[0171] If the functions are realized in the form of software function units and sold or used as independent products, they can be stored in a nonvolatile computer readable storage medium executable by a processor. Based on this understanding, the technical solutions of the present application essentially or the parts of the prior art that make contributions or parts of the technical solutions can be embodied in the form of software products. The computer software product is stored in a storage medium and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in the embodiments of the present application. The aforementioned storage medium includes: a U disk, a mobile hard disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk or an optical disk, and various media that can store program codes.
[0172] Finally, it should be noted that: the above-described embodiments are only specific embodiments of the present application, which are used to illustrate the technical solutions of the present application, but not to limit them. The protection scope of the present application is not limited thereto. Although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that any person skilled in the art can make modifications or easily think of changes to the technical solutions described in the foregoing embodiments within the technical scope disclosed by the present application, or make equivalent replacements to some of the technical features. The modifications, changes or replacements do not make the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application, and should be covered within the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
Claims
1. A method of cluster analysis based on elastic net, characterized by, The application relates to a high-dimensional data clustering scenario applied to image recognition or gene expression data analysis, comprising: (A) constructing an elastic neural network for a to-be-solved data set, calculating a position update momentum corresponding to each elastic node in the elastic network based on an energy function of the elastic network, and controlling each elastic node to move in a direction of a preset clustering center according to the position update momentum, wherein the to-be-solved data set comprises a plurality of data points required to be clustered, the constructed elastic network comprises a plurality of elastic nodes, i.e. a plurality of neurons, the number of elastic nodes, i.e. neurons, included in the elastic network is the total number of clusters into which all data points are divided, the position update momentum refers to a position offset of the elastic node calculated according to the energy function, the to-be-solved data set is an MNIST data set or an scRNA-seq data set, the MNIST data set is composed of a plurality of black-and-white images, and the scRNA-seq data set comprises a plurality of cells filtered according to a standard, and each cell has a gene expression level of different genes; (B) selecting a target data point; (C) introducing competition among the neurons in the elastic network, taking a competition winning neuron as a target elastic node to be optimized, and updating the position of the target elastic node to the position of the target data point to update the elastic network; (D) detecting whether the to-be-solved data set and the elastic network after the movement of the elastic nodes meet a clustering termination condition; (E) if the clustering termination condition is met, determining each elastic node in the elastic network as a clustering center, and clustering the plurality of data points according to the determined clustering center to obtain a plurality of clusters, so as to automatically classify images in the MNIST data set or identify and type cell types in the scRNA-seq data set; wherein (B) comprises: selecting a preset number of data points from the to-be-solved data set to form a sub-data set; for each data point in the sub-data set, updating the position of the competition winning neuron to the position of the selected target data point to determine a confidence interval of each data point in each competition; selecting a data point meeting a preset condition from all data points in the sub-data set as the target data point; the confidence interval of each data point in the sub-data set is determined in the following manner: a competition mechanism is introduced among the neurons in the elastic network, and competition is performed, the position of the competition winning neuron is updated to the position of the selected target data point, the total reward value generated by the data point after the updated elastic node and the total selection times of the data point are recorded; based on the total reward value and the total selection times of the data point recorded above, the confidence of the data point in the current competition round and the confidence interval are calculated.
2. The method of claim 1, wherein, the position of the updated competition winning elastic node in the elastic network is determined in the following manner: constructing multiple groups of elastic networks, each group of elastic networks including a to-be-updated elastic node and remaining original elastic nodes, the remaining original elastic nodes including elastic nodes in the elastic network other than the elastic node to be updated by the target data point, the elastic node to be updated by the target data point being different among different groups of data; calculating a distance standard error of each group of elastic networks; comparing the distance standard error of each group of elastic networks with a distance standard error threshold; if there is at least one group of elastic networks whose distance standard error is less than the distance standard error threshold, taking the to-be-updated elastic node corresponding to the group of elastic networks with the smallest distance standard error as a competition winning neuron, and updating the position of the competition winning neuron to the position of the target data point; wherein the method further comprises: if there is no group of elastic networks whose distance standard error is less than the distance standard error threshold, directly returning to step (A).
3. The method of claim 2, wherein, The method further comprises: each time the position of an elastic node in the elastic network is updated, incrementing the iteration number corresponding to the elastic network by one and storing the iteration number, wherein the step of detecting whether the data set to be solved and the elastic network after the elastic node is updated satisfy a clustering termination condition comprises: for each elastic network update, determining the difference between the distance standard error of the elastic network after the update and a preset distance standard error and the number of updates, the preset distance standard error being the distance standard error of the elastic network corresponding to the previous update at the current number of updates; detecting whether the number of consecutive updates is greater than a target number, the number of consecutive updates being the number of times that the difference between the distance standard error of the elastic network after the update and the preset distance standard error is less than a target difference value; if the number of consecutive updates is greater than the target number, determining that the data set to be solved and the current elastic network satisfy the clustering termination condition; if the number of consecutive updates is not greater than the target number, determining that the data set to be solved and the current elastic network do not satisfy the clustering termination condition.
4. The method of claim 1, wherein, The position update momentum corresponding to each elastic node is determined in the following manner: determining the Euclidean distance between the elastic node and each data point; for each data point, determining the probability value of the data point belonging to the cluster corresponding to the elastic node as the current clustering center according to the maximum entropy principle; constructing an energy function according to the maximum entropy principle, the determined probability value and the Euclidean distance, and calculating the position update momentum of the elastic node according to the energy function.
5. The method of claim 1, wherein, Before step (A), the method further comprises: determining an initial center point according to each data point in the data set to be solved, the initial center point being used to indicate the center of gravity of all data points in the data set to be solved; determining a closed annular elastic band based on the initial center point; determining multiple elastic nodes in the elastic network based on the annular elastic band.
6. An elastic network-based clustering analysis device, characterized by comprising: The method is applied to a high-dimensional data clustering scenario in image recognition or gene expression data analysis, comprising: The computing module is configured to, for a to-be-solved data set, construct an elastic neural network, calculate a position update momentum corresponding to each elastic node in the elastic network based on an energy function of the elastic network, and control each elastic node to move in a direction of a preset cluster center according to the position update momentum. The target data point selection module is configured to determine the target data point by: selecting a preset number of data points from the to-be-solved data set to form a sub-data set; updating the position of a winning neuron to the position of the selected target data point for each data point in the sub-data set to determine a confidence interval of each data point in each competition; selecting a data point that meets a preset condition from all data points in the sub-data set as the target data point; determining the confidence interval of each data point in the sub-data set by: introducing a competition mechanism between neurons in the elastic network and performing competition, updating the position of a winning neuron to the position of the selected target data point, recording a total reward value generated by the data point after updating the elastic node and a total number of times the data point is selected; and calculating the confidence and confidence interval of the data point in the current competition round based on the recorded total reward value and total number of times the data point is selected. The updating module is configured to introduce competition between neurons in the elastic network, take a winning neuron as a target elastic node to be optimized, and update the position of the target elastic node to the position of a target data point to update the elastic network. The cluster termination condition judgment module is configured to detect whether the to-be-solved data set and the elastic network after the elastic nodes are moved meet a cluster termination condition. The cluster center determination module is configured to, if the cluster termination condition is met, determine each elastic node in the elastic network as a cluster center, and cluster the plurality of data points according to the determined cluster center to obtain a plurality of clusters, so as to automatically classify images in the MNIST data set or identify and type cell types in the scRNA-seq data set.
7. An electronic device, comprising: The processor, the memory, and the bus, the memory stores machine readable instructions executable by the processor, when the electronic device is running, the processor and the memory communicate through the bus, the processor executes the machine readable instructions to execute the steps of the method of any one of claims 1 to 5. 8. A computer-readable storage medium, characterized in that, The computer readable storage medium stores a computer program, and the computer program is run by the processor to execute the steps of the method in any one of claims 1 to 5.
Citation Information
Patent Citations
Deep clustering method based on competitive learning
CN107229945A
Residue contact information self-learning-based protein structure prediction method
CN109215732A