An unsupervised concept drift detection method based on multi-cluster discriminators
By employing an unsupervised concept drift detection method based on a multi-cluster discriminator, this method utilizes imbalanced clustering and multiple single classifiers to address the problem of small cluster drift being masked under imbalanced data, achieving efficient and accurate drift detection and localization for multi-cluster distributions.
Patent Information
- Application Number
- CN202310977090.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-03
- Publication Date
- 2025-12-12
- Estimated Expiration
- 2043-08-03
AI Technical Summary
Existing concept drift detection methods struggle to effectively detect small cluster drift when dealing with imbalanced data, especially multi-cluster distributions. Furthermore, existing methods assume that the data is roughly balanced, which significantly reduces their detection effectiveness.
An unsupervised concept drift detection method based on a multi-cluster discriminator is adopted. The data distribution in the data block is learned by imbalanced clustering to distinguish between large and small clusters. A multi-cluster discriminator composed of multiple single classifiers is trained to monitor the proportion of new distribution samples in each cluster in real time in order to detect drift.
It can effectively detect drift in both large and small clusters and locate the drift position, improving detection efficiency and accuracy under imbalanced data, avoiding the influence of large clusters on small clusters, and has the advantages of high efficiency, few parameters, and easy setup.
Smart Images

Figure CN117195011B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of dynamic data stream mining, and more particularly, to an unsupervised concept drift detection method based on a multi-cluster discriminator. BACKGROUND
[0002] In recent years, big data and the Internet of Things have gradually penetrated into various fields of society, and a large amount of data is constantly flowing into terminals in the form of streams at all times. These data have the characteristics of large quantity and fast flow, and existing data mining methods are often limited by memory and running time, and cannot repeatedly process a single sample. Therefore, how to analyze and process stream data using limited memory and computing resources, master the distribution characteristics of current data, and mine potential valuable information has become a hot task. This task has a very important position in the fields of information security, medical diagnosis, financial prediction, etc. Traditional data mining and analysis methods all assume that data is in the condition of independent and identically distributed, that is, data is identically distributed and independent of each other. This is often unrealistic in real life, because as the market, user behavior, and product change, the distribution characteristics of data will change constantly, so that the data distribution characteristics mastered by the past machine learning model will be invalid, and thus the prediction and decision effect will decrease. This phenomenon is called concept drift. For example, in a fraud phone identification system, as the accuracy of the fraud phone identification system improves, the fraud phone will modify the corresponding strategy to try to deceive the identification system. As an important decision tool, the machine learning system must be able to detect such changes in time to promote the effective adaptation of the downstream learning model.
[0003] The definition of concept drift is as follows: given a p-dimensional feature space. A tuple (x, y) represents a data sample, where x ∈ R p is a feature vector, and y represents the label of the feature vector y ∈ (y1, y2, y3, …, y k ), k represents the number of current data distribution classes. The data stream D is composed of these data points. The data sequences flowing in at different time intervals are divided into different data blocks, and here we name the data block flowing in at t0 as Db, and the data blocks flowing in thereafter as Dt, which are subject to distribution F. When the distributions of Db and Dt change, that is, F b (x, y) ≠ F t (x, y), it is considered that concept drift has occurred. Existing methods can be roughly divided into two categories according to how they quantify the occurrence of drift: model performance change-based methods and distribution change-based methods.
[0004] The concept drift detection method based on the model error rate is the majority of the existing concept drift detection methods. They track the change of the online error rate of the model in real time, and when the change of the error rate is significant, the drift is represented. These methods use the change of the model error rate, and can detect the occurrence of drift in a timely manner. However, they pay more attention to the performance of the model rather than the change of the concept itself in the process of detecting the drift. Therefore, they are not sensitive to the severity and location of the drift. In addition, because the change of the error rate needs to be monitored in real time, the true label needs to be obtained immediately after the model processes the data, which is often unrealistic in real life. The concept drift detection method based on the change of the data distribution represents the drift by measuring the distribution difference between the historical window data and the new data. These methods solve the problem of the concept drift from the root, that is, the distribution drift. They can not only detect the time of the drift, but also grasp the location and severity of the drift. In addition, this method does not necessarily require the label to be available.
[0005] These methods have good effects in drift detection, but they all have a limitation, that is, they all assume that the data is roughly balanced. However, in real life, there is often a phenomenon that the number of samples between data categories is too large, for example, in the medical field, the sample data of the sick is much smaller than the sample data of the non-diseased, which is called imbalance phenomenon. Therefore, when the data stream distribution has an imbalance phenomenon, the effect of these methods will be greatly reduced. Especially when the data stream is in a multi-cluster distribution, the existence of the large cluster will cover the drift phenomenon in the small cluster.
[0006] In summary, it is of great practical significance to develop an unsupervised concept drift detection method that is not sensitive to imbalance and can be applied to multi-cluster imbalance. SUMMARY
[0007] In order to solve the problems and defects existing in the prior art, the present application provides an unsupervised concept drift detection method based on a multi-cluster discriminator.
[0008] In order to achieve the above-mentioned purposes of the present application, the technical solutions adopted are as follows:
[0009] An unsupervised concept drift detection method based on a multi-cluster discriminator, the method comprises the following steps:
[0010] S1: Data block collection, organize the data flowing in different time periods into different data blocks;
[0011] S2: data distribution learning, taking the first inflow data block as the base distribution data block, using an unbalanced clustering method to divide and learn the base distribution data block, and according to the data distribution information of the base distribution data block, each cluster is distinguished, so as to separate out large clusters and small clusters;
[0012] S3: training a multi-cluster discriminator, using the cluster structure after division and learning to train multiple single classifiers, and using the multiple trained single classifiers to form a multi-cluster discriminator;
[0013] S4: drift detection, monitoring the proportion of new distribution samples of each cluster in the subsequent inflow test data block by the multi-cluster discriminator, and when the proportion of new distribution samples is greater than the set drift threshold, reporting the occurrence of drift.
[0014] Preferably, the data block comprises a base distribution data block D b , and a test data block D t .
[0015] The data stream with unbalanced phenomenon is expressed as D={x1, x2, x3, …, x n}, wherein xi i ∈R p is a feature vector of a p-dimensional feature space at i moment, i=1, 2, 3, …, n;
[0016] The data block collected at t0 moment is taken as the base distribution data block D b , and the data block collected at t1 and subsequent moments is taken as the test data block D t .
[0017] Preferably, in step S2, the base distribution data block is divided and learned using an unbalanced clustering method, and according to the data distribution information of the base distribution data block, each cluster is distinguished, so as to separate out large clusters and small clusters, which is specifically as follows:
[0018] First, define the initial seed point S, then let the seed points compete with each other to determine the winner; by punishing the losers and rewarding the winners, the seed points come to the center position of the cluster, and the seed points of other clusters are driven away;
[0019] A competition penalty coefficient beta is used to distinguish the competition penalty of intra-cluster sub-clusters and inter-cluster sub-clusters, and the winning seed point is updated according to the position of the winner, the position of the opponent and the position of the cluster midpoint;
[0020] When a seed point is punished to be far away from all clusters and is expelled, the division and learning is ended, and at this time each cluster is represented by multiple sub-clusters;
[0021] Part of the sub-clusters are fused, and a clustering internal evaluation index is used to obtain the best cluster number and the corresponding sub-cluster fusion queue, thereby obtaining the clustering result of the base distribution data block Db the partition learning result M.
[0022] Further, if no seed point is punished after the competition converges, i.e., the current majority and minority clusters are not represented by a series of sub-clusters, the winning times b j the maximum and the density gap σ j increase the competition seed point in the largest cluster;
[0023] Repeat the competition process until a seed point is punished to be far away from all clusters, i.e., is expelled, and end the partition learning.
[0024] Further, the partial sub-clusters are fused, specifically using a hybrid one-dimensional binary Gaussian distribution to measure the separation degree h ij between sub-clusters, and the lower the separation degree, the more the two sub-clusters should be fused.
[0025] Further, in step S3, the multi-cluster discriminator includes a plurality of single classifiers; wherein the single classifiers are trained by different clusters obtained from the partition result, specifically, all sample points in the i-th cluster M i in the partition result are used as positive samples to train the i-th single classifier c i (x), and then the i-th single classifier c i (x) after training is obtained according to min(f(w)), wherein f(w) is a cost function for measuring the fitting degree of the model to the positive examples.
[0026] Further, in step S4, the proportion of new distribution samples refers to the proportion of samples not belonging to the original distribution in the self cluster in the subsequent inflowing test data block detected by the multi-cluster discriminator, whether it is a large cluster or a small cluster.
[0027] Further, the subsequent inflowing test data block is also divided and learned by using the unbalanced clustering method on the base distribution data block, and the fusion queue Q is used to fuse the result after the partition learning, and the final cluster set O is fused;
[0028] The final cluster set O obtained is assigned to each single classifier in the multi-cluster discriminator for classification, to determine whether the sample in the cluster O j is a point of the original distribution or the new distribution;
[0029] The proportion a j of the new distribution in the cluster O j is calculated;
[0030] The proportion a j is compared with the set drift threshold p, and when any a jWhen p, it is reported that the current test data block exists concept drift, and points out the position of the drift cluster.
[0031] A computer device comprising a memory and a processor, the memory storing a computer program capable of running on the processor, and the processor implements the steps of the method as described above when executing the computer program.
[0032] A computer readable storage medium having a computer program stored thereon, the computer program being executed by a processor to implement the steps of the method as described above.
[0033] The beneficial effects of the present application are as follows:
[0034] The present application adopts an unbalanced clustering method to learn the data distribution in the data block, and distinguishes the minority cluster and the majority cluster according to their clustering characteristics. And in order to reduce the influence of the majority cluster on the minority cluster in the concept drift detection process, the present application proposes to use the clustering division result to train a multi-cluster discriminator composed of multiple single classifiers, and then independently detect the drift for different clusters. Thus, the method of the present application can well detect the drift of both small clusters and large clusters, and also has the ability to locate the position of the drift cluster, which can make the present application better understand the drift.
[0035] The multi-cluster discriminator of the present application adopts the mode of detecting the distribution change of each cluster separately, avoiding the influence of large clusters on small clusters. It can track the distribution change in large clusters or small clusters in real time, thereby monitoring the concept drift phenomenon in the current data block and giving the position of the corresponding drift cluster. The multi-cluster discriminator has the advantage of drift detection for unbalanced data, and is efficient, has few parameters and is easy to set. BRIEF DESCRIPTION OF DRAWINGS
[0036] Figure 1 is the basic principle diagram of an unsupervised concept drift detection method based on a multi-cluster discriminator of the present application.
[0037] Figure 2 is a detailed technical flowchart of the unsupervised concept drift detection method of the present application.
[0038] Figure 3 is a comparison diagram of two drift detection modes.
[0039] Figure 4 is a schematic diagram of the division stage of the test data block of the present application.
[0040] Figure 5 is a schematic diagram of the fusion stage of the test data block of the present application.
[0041] Figure 6 is a drift detection example.
[0042] Figure 7 is a drift detection effect comparison chart under different equilibrium rates. DETAILED DESCRIPTION
[0043] Other advantages and effects of the present application can be easily understood by those skilled in the art from the above description. The present application can also be implemented or applied by other different specific embodiments, and various modifications or changes can be made to the details of the present application based on different views and applications without departing from the spirit of the present application. It should be understood that the preferred embodiments are only for illustrating the present application, but not for limiting the protection scope of the present application.
[0044] It should be noted that the diagrams provided in the following embodiments only schematically illustrate the basic concept of the present application, and only the components related to the present application are shown in the diagrams, but not drawn according to the number, shape and size of the components in actual implementation. The actual implementation of each component may be a random change in type, number and proportion, and the component layout type may also be more complex.
[0045] Embodiment 1
[0046] With the development of science and technology, various devices are generating a large amount of data, and these data containing a large amount of valuable information are continuously flowing into the data. Therefore, the analysis and processing of stream data have become one of the increasingly hot fields. However, as time goes by, the distribution of data itself may change, that is, concept drift, and there may be an imbalance phenomenon in the process of collecting data, such as more data of some kind and less data of some kind, for example, in the medical field, the number of data samples of the disease is much smaller than the number of samples of the disease. This phenomenon is called imbalance phenomenon. There are a large number of drift detection methods today, but they all assume that the data is in a balanced state. However, in the concept drift problem of stream data in the real environment, the distribution imbalance phenomenon is universal. In such an environment, these drift detection methods may be affected. Because when the distribution is in an unbalanced state, large clusters will dominate the drift detection results, so that the drift of small clusters is hidden. The purpose of the present application is to overcome the difficulties brought by the imbalance phenomenon to the concept drift detection task, such as Figure 1 As shown in the figure, an unsupervised concept drift detection method based on multi-cluster discriminator is provided, and the method comprises the following steps:
[0047] S1: data block collection, organizing the data flowing in different time periods into different data blocks;
[0048] S2: data distribution learning, taking the first inflow data block as the base distribution data block, using an unbalanced clustering method to divide and learn the base distribution data block, and according to the data distribution information of the base distribution data block, each cluster is distinguished, so as to separate large clusters and small clusters;
[0049] S3: training a multi-cluster discriminator, using the cluster structure after division and learning to train multiple single classifiers, and using the multiple trained single classifiers to form a multi-cluster discriminator;
[0050] S4: drift detection, monitoring the proportion of new distribution samples of each cluster in the subsequent inflow test data block by the multi-cluster discriminator, and when the proportion of new distribution samples is greater than the set drift threshold, reporting the occurrence of drift.
[0051] In the embodiment, the data block includes a base distribution data block D b , and a test data block D t .
[0052] The data stream with unbalanced phenomenon is expressed as D={x1, x2, x3, …, x n}, wherein x i ∈R p is a feature vector of a p-dimensional feature space at i moment, i=1, 2, 3, …, n;
[0053] The data block collected at t0 moment is taken as the base distribution data block D b ; and the data block collected at t1 moment and after is taken as the test data block D t .
[0054] The method described in the embodiment first uses an unbalanced clustering method to independently divide each cluster in the unbalanced data in the base distribution data block, and the division result is to label each data sample (the clustering division is to divide into multiple clusters, and which points belong to which clusters is the labeling process). Then, the division result and the pseudo label are used to train a multi-cluster discriminator composed of multiple single classifiers. Then, the data in the test data block is divided according to the division result of the base distribution data block and assigned to each single classifier in the multi-cluster discriminator, and finally, the trained multi-cluster discriminator is used to detect whether there is a concept drift phenomenon in the test window. Each single classifier in the multi-cluster discriminator will individually track the distribution change of each cluster during the drift detection process. Therefore, whether the distribution of “majority clusters” or “minority clusters” changes, it can be detected and reported in time. The application can identify global or local drift phenomenon, and can indicate which cluster has drifted.
[0055] The application adopts an unbalanced clustering method to learn the data distribution in the data block, and distinguishes the minority clusters and the majority clusters according to the clustering characteristics. In order to reduce the influence of the majority clusters on the minority clusters in the concept drift detection process, the application proposes to train a multi-cluster discriminator composed of multiple single classifiers by using the clustering division result, and then independently perform drift detection on different clusters. Therefore, the method of the application can well detect the drift of both small clusters and large clusters, and also has the ability to locate the position of the drift cluster, which can make the application better understand the drift.
[0056] The multi-cluster discriminator adopts the mode of detecting the distribution change of each cluster independently, avoids the influence of large clusters on small clusters, can track the distribution change in large clusters or small clusters in real time, thereby monitors the concept drift phenomenon in the current data block, and gives the position of the corresponding drift cluster. The multi-cluster discriminator has the advantage of drift detection for unbalanced data, and is efficient in detection, has few parameters and is easy to set.
[0057] In the embodiment, in order to learn the distribution of unbalanced data as much as possible and avoid the "uniform phenomenon" existing in the ordinary clustering method, the embodiment adopts an unbalanced clustering method of "division first and fusion later" to divide the base distribution data block D b into clusters.
[0058] In step S2, as shown in Figure 2 , the base distribution data block is divided and learned by using the unbalanced clustering method, and each cluster is distinguished according to the data distribution information of the base distribution data block, so as to separate the large clusters and the small clusters. Specifically, the following is performed:
[0059] First, an initial seed point list S is defined, and then the seed points compete with each other to determine the winner. The method of determining the winner is as follows:
[0060]
[0061] In the formula, s i represents the vector of the i th seed point, s i ∈S; x t represents the vector of the sample point in the base distribution data block D b ; k represents the length of the seed point list; j is a result variable, representing the subscript of the winning seed point in the competition; R j,xt represents whether the j th seed point is the winner relative to the sample x t . If R j,xt = 0, it means no, and if R j,xt = 1, it means yes.
[0062] The seed points are driven to the center of the cluster and away from other clusters by punishing the losers and rewarding the winners;
[0063] To prevent the seed points of minority clusters from being driven away or staying in the position between minority and majority clusters during the competition punishment, the uniform effect occurs. The competition punishment coefficient beta is used to distinguish the competition punishment between intra-cluster sub-clusters and inter-cluster sub-clusters, and the winning seed point is updated according to the position of the winner, the position of the competitor and the position of the cluster center;
[0064] The update formula is as follows:
[0065]
[0066]
[0067] In the formula, s j is the vector of the winning seed point, beta j is used to make the punishment of the intra-cluster competitor greater than that of the inter-cluster competitor, so that the phenomenon that the seed points of minority clusters move to majority clusters can be well avoided. j (t) represents the vector of the jth seed point at time t, s j (t+1) represents the vector of the jth seed point at time t+1, eta and epsilon e are given control punishment tensors;
[0068] In the embodiment, to prevent the division learning algorithm from ending too early and causing each cluster not to be well expressed, eta and the number of sub-clusters k are added to offset the influence of the winning times.
[0069] When a seed point is punished to be far away from all clusters, i.e., is expelled, the division learning is ended, and at this time, each cluster is represented by multiple sub-clusters;
[0070] Part of the sub-clusters are fused, and a clustering internal evaluation index is used to obtain the best number of clusters and the corresponding sub-cluster fusion queue, so as to obtain the division learning result M of D b .
[0071] In the embodiment, if no seed point is driven away after the competition converges, i.e., the current majority and minority clusters are not represented by a series of sub-clusters, the winning times b j are the most and the density gap sigma j is the largest, the competition seed points are added in the cluster.
[0072]
[0073] In the formula, the density gap sigma jwhether there are multiple density peaks in the current sub-cluster, i.e. whether the sub-cluster contains multiple clusters of points, j * representing an increased competition seed point.
[0074] The embodiment repeats the competition process again after adding the competition seed point, and ends the division learning when a seed point is punished to be far away from all clusters, i.e. is expelled, at which time each cluster can be represented by multiple sub-clusters.
[0075] In the embodiment, some sub-clusters are fused, and the optimal number of clusters is selected, and the distribution of D b is learned in the fusion process. In order to fuse as many sub-clusters in the same cluster as possible and avoid fusing clusters of different clusters, some sub-clusters are fused, and a mixed one-dimensional binary Gaussian distribution is used to measure the separation degree h ij between sub-clusters, and the lower the separation degree, the more the two sub-clusters should be fused.
[0076] wherein the separation degree h ij is calculated as follows:
[0077]
[0078] wherein the discrete probability density f(A) is calculated after projecting the points in the i and j sub-clusters to a one-dimensional space h ij The higher the value of h ij , the higher the separability of the i and j sub-clusters.
[0079] Then, a cluster internal evaluation index is used to obtain the optimal number of clusters and the corresponding sub-cluster fusion queue.
[0080]
[0081] wherein sep j represents the compactness of the jth sub-cluster; com j represents the separation degree of the jth sub-cluster; and k' represents the number of final clusters, i.e. the optimal number of clusters.
[0082] Thus, the division learning result M of the base distribution data block D b is obtained, and the division learning result labels each data sample with a pseudo label.
[0083] In a specific embodiment, the multi-cluster discriminator includes multiple single classifiers; wherein the single classifiers are trained by different clusters obtained from the division result, and specifically, all sample points in the i th cluster M i in the division result are used as positive samples to train the i th single classifier c i (x), and then the i th single classifier c i (x) is obtained according to min(f(w)).i (x), where f(w) is a cost function that measures how well the model fits the positive examples.
[0084] The embodiment uses the base distribution data block Db' with pseudo labels, i.e., the division learning result, to train a multi-cluster discriminator. The embodiment uses M to train a single classifier for each cluster M i , respectively. The single classifier has the function of learning the current data and estimating the decision boundary of the original distribution data according to the distribution of the feature space, and judging whether the sample belongs to the original distribution.
[0085] The embodiment can well distinguish the points of the original distribution and the new distribution by using the single classifier. However, when the data presents a multi-cluster unbalanced distribution, simply using a single classifier to divide the decision boundary may cause the drift of a single cluster to be hidden and the drift in the minority cluster to be ignored (such as Example 1 in Figure 3 ). Therefore, a multi-cluster discriminator is constructed by using multiple single classifiers, and the multi-cluster discriminator is used to simultaneously and independently track the distribution change of each cluster, thereby solving the above problem, especially in a seriously unbalanced data set (such as Example 2 in Figure 3 ).
[0086] In the embodiment, the specific form of the cost function is different depending on the specific single classifier selected. When the multi-cluster discriminator containing k single classifiers is trained according to M, the decision boundary of each cluster distribution in Db can be distinguished from each other, so that the drift of each cluster can be independently detected.
[0087] In a specific embodiment, the proportion of the new distribution sample refers to the proportion of the sample not belonging to the original distribution in the cluster itself in the test data block flowing in subsequently and detected by the multi-cluster discriminator, whether it is a large cluster or a small cluster.
[0088] Further, in order to obtain the distribution change of each cluster and prevent the influence of the majority clusters on the distribution of the minority clusters, an unbalanced clustering method is also used to divide and learn the base distribution data block for the test data block flowing in subsequently, and the fusion queue Q is used to fuse the division learning result into the final cluster set O.
[0089] wherein the division learning can be written as:
[0090]
[0091] In the formula, t = {1, 2, …, n}, u i,j is a binary variable, u i,j = 1 indicates that the i-th data object is assigned to the j-th cluster, d(xi s j ) represents the distance between the i-th object x t in the test data block D i and the j-th seed point s j .
[0092] where the fusion process can be written as
[0093]
[0094] where j = {1, 2,.., k}; Q[j] represents the j-th element in the fusion queue, which contains the sub-cluster index set fused into the j-th cluster; v i,j is a binary variable, v i,j = 1 indicates that the i-th sub-cluster in the pre-partition sub-cluster set is fused into the j-th cluster in the final partition structure. The partition phase and the fusion phase process are shown in Figure 4 、 Figure 5 .
[0095] After the fusion is completed, the final cluster set O obtained is assigned to each single classifier in the multi-cluster discriminator for classification to determine whether the sample in the cluster O j is a point of the original distribution or a point of the new distribution;
[0096]
[0097] where j = {1, 2,.., k}; c j (x i ) represents the discrimination result of the j-th single classifier on the sample in O j , 1 indicates that the sample x i is a normal point, and 0 indicates a new distribution point.
[0098] By calculating the proportion a j of the new distribution in the cluster O j , the calculation formula is as follows:
[0099]
[0100] According to the proportion set a obtained in the test data block Dt, the proportion a j is compared with the set drift threshold p. When any a j > p, it is reported that the current test data block has concept drift, and the position of the drift cluster is indicated. The formula expression is as follows:
[0101]
[0102] where Drift = True indicates that drift has occurred, and otherwise it indicates that the current cluster distribution has not changed.
[0103] In this embodiment, in order to detect the concept drift in the unbalanced flow data, the data flow data is collected in a block mode, when the learning of the basic data block containing the original distribution is completed, the drift detection is performed in real time for the incoming test data block, and the drift is detected in the manner as shown in the figure. Figure 6 Figure 6 The left subgraph in the figure indicates that there is no drift phenomenon in the current test window, Figure 6 The right subgraph in the figure indicates that there is drift in the current window.
[0104] This embodiment also verifies the drift detection effect trend under different imbalance rates by using artificial data as shown in the figure. Figure 7 The false negative rate represents the ratio of undetected drift, and MICD is the abbreviation of the present application. It can be seen that the drift detection effect of the present application has a significant advantage compared with the prior art.
[0105] The embodiment has the following advantages and effects compared with the prior art:
[0106] (1) A new unsupervised drift detection method is proposed. It first divides the object into unbalanced clusters, and then trains a single classifier for each cluster to avoid ignoring the drift in small clusters.
[0107] (2) In order to avoid the dominance of the main cluster, the present application adopts the strategy of division first and then fusion, initializes multiple additional seed points in a block to avoid the absence of sub-clusters, and then fuses the seed points to detect the main cluster.
[0108] (3) Compared with the prior art, the unsupervised concept drift detection method MICD proposed in the present application can better locate the drift position and specifically reflect the severity of the drift, which is helpful to understand the concept drift.
[0109] (4) Compared with the prior art, the present application has high detection accuracy and strong robustness to different degrees of imbalance and drift severity.
[0110] Embodiment 2
[0111] Based on embodiment 1, the present embodiment further provides a computer device comprising a memory and a processor, the memory stores a computer program capable of running on the processor, and the processor implements the steps of the unsupervised concept drift detection method as described in embodiment 1 when executing the computer program.
[0112] The memory and the processor are connected in a bus manner, the bus can include any number of interconnected buses and bridges, the bus connects various circuits of one or more processors and memories together. The bus can also connect various other circuits such as peripheral devices, voltage stabilizers and power management circuits together, which are well known in the art, therefore, they will not be further described herein. The bus interface provides an interface between the bus and the transceiver. The transceiver can be one element or multiple elements such as multiple receivers and transmitters, which provide units for communicating with various other devices on the transmission medium. The data processed by the processor is transmitted on the wireless medium through the antenna, further, the antenna also receives data and transmits the data to the processor.
[0113] Embodiment 3
[0114] The embodiment also provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the steps of the unsupervised concept drift detection method in the embodiment 1.
[0115] Those skilled in the art can understand that all or part of the steps of the method in the above embodiments can be completed by a program instructing the relevant hardware, the program is stored in a storage medium, and includes a plurality of instructions for making a device (which can be a single-chip microcomputer, a chip, etc.) or a processor execute all or part of the steps of the method described in various embodiments of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk or an optical disk and various program code storage media.
[0116] Obviously, the above embodiments of the present application are only examples for clearly illustrating the present application, and are not intended to limit the implementation manner of the present application. Any modification, equivalent replacement and improvement within the spirit and principle of the present application should be included in the protection scope of the claims of the present application.
Claims
1. An unsupervised concept drift detection method based on a multi-cluster discriminator, characterized in that: The method includes the following steps: S1: Data block collection, which organizes data flowing in from different time periods into different data blocks; S2: Data distribution learning. The first incoming data block is taken as the base distribution data block. An imbalanced clustering method is used to divide the base distribution data block. Based on the data distribution information of the base distribution data block, each cluster is distinguished, thus separating large clusters and small clusters. S3: Train a multi-cluster discriminator by using the cluster structure learned from the partitioning to train multiple single classifiers, and then use the multiple trained single classifiers to form a multi-cluster discriminator. S4: Drift detection. The multi-cluster discriminator monitors the proportion of newly distributed samples in each cluster in the subsequent incoming test data blocks. When the proportion of newly distributed samples is greater than the set drift threshold, a drift is reported. In step S2, the imbalanced clustering method is used to partition the base distribution data blocks. Based on the data distribution information of the base distribution data blocks, each cluster is distinguished, thereby separating large clusters from small clusters, as detailed below: First, define an initial seed point S, then let the seed points compete with each other to determine the winner; by punishing the losers and rewarding the winners, the seed point moves to the center of the cluster and drives away the seed points of other clusters. The competition penalty coefficient beta is used to distinguish the competition penalty between subclusters within a cluster and between subclusters. The winning seed point is updated based on the position of the winner, the position of the competitors, and the position of the cluster center. When a seed point is penalized and driven away from all clusters, i.e., expelled, the partitioning learning ends, at which point each cluster is represented by multiple sub-clusters; By merging some subclusters and using an internal clustering evaluation metric, the optimal number of clusters and the corresponding subcluster fusion queue are determined, thus obtaining the optimal number of clusters for D. b The partitioning learning result M; If, after the competition converges, no seed point is driven out, meaning that the majority and minority clusters have not yet been represented by a series of subclusters, then in the number of wins b j Maximum density gap σ j Add competing seed points to the largest cluster; The competition process is repeated until a seed point is penalized and driven away from all clusters, i.e., it is expelled, at which point the partitioning learning ends. The process of fusing some sub-clusters specifically uses a mixture of one-dimensional binary Gaussian distributions to measure the separation degree h between sub-clusters. ij The lower the separation degree, the more likely the two subclusters should be merged. In step S3, the multi-cluster discriminator includes multiple single classifiers; wherein each single classifier is trained from different clusters obtained from the partitioning results. Specifically, the i-th cluster M in the partitioning results is... i All sample points in the i-th classifier c are used as positive sample pairs. i (x) is used for training, and then the i-th single classifier c is obtained by min(f(w)). i (x), where f(w) is a cost function used to measure how well the model fits the positive examples.
2. The unsupervised concept drift detection method based on a multi-cluster discriminator according to claim 1, characterized in that: The data block includes a base-distributed data block D. b Test data block D t ; The data stream exhibiting imbalance can be represented as D = {x1, x2, x3, ..., x...} n }, where x i ∈R p It is an eigenvector in the p-dimensional feature space at time i, where i = 1, 2, 3, ..., n; The data block collected at time t0 is taken as the base distribution data block D. b The data blocks collected at time t1 and thereafter are called test data blocks D. t .
3. The unsupervised concept drift detection method based on a multi-cluster discriminator according to claim 1, characterized in that: In step S4, the proportion of new distribution samples refers to the proportion of samples in the subsequent incoming test data blocks that do not belong to the original distribution, whether they are large or small clusters, as detected by the multi-cluster discriminator.
4. The unsupervised concept drift detection method based on a multi-cluster discriminator according to claim 3, characterized in that: The imbalanced clustering method is also used to divide the base distribution data blocks into learning blocks for subsequent incoming test data blocks. The results of the division learning are then fused using a fusion queue Q to form the final cluster set O. The resulting final cluster set O is assigned to each single classifier in the multi-cluster discriminator for classification, determining the cluster O. j Are the samples in the data points from the original distribution or the new distribution? By calculating in cluster O j The proportion α belonging to the new distribution j ; The proportion α j It is compared with the set drift threshold ρ, when there is any α j When the value is >ρ, report that there is concept drift in the current test data block and indicate the location of the cluster where the drift occurred.
5. A computer device comprising a memory and a processor, the memory storing a computer program executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 4.
6. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Data flow concept drift detection method and system
CN103345575A
Method and system for obtaining concept drift amount of data distribution
CN111626351A