Network bandwidth prediction method and device, and nonvolatile storage medium
By clustering network bandwidth data from applications and training neural network models, the problem of inaccurate network bandwidth prediction was solved, achieving efficient bandwidth utilization and device status awareness, and improving the normal usage rate of applications.
Patent Information
- Application Number
- CN202211734633.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-30
- Publication Date
- 2026-02-17
- Estimated Expiration
- 2042-12-30
AI Technical Summary
Existing technologies cannot accurately and quickly predict the network bandwidth of applications, resulting in low network bandwidth utilization.
By clustering multiple standard bandwidth data, a trained neural network model is used to predict the bandwidth data, and an improved clustering algorithm and a deep belief neural network model are employed for accurate prediction.
It enables accurate prediction of network bandwidth, improves network bandwidth utilization, helps maintenance personnel to make adjustments in advance, avoids peak congestion, and reduces equipment failure rate.
Smart Images

Figure CN116127307B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of big data, in particular, relates to a network bandwidth prediction method and device and a nonvolatile storage medium. BACKGROUND
[0002] The running state of an application program directly affects the daily life of the people in society, and the normal running of the application program cannot be separated from the support of underlying hardware such as servers, storage and other devices. In the running of these devices, two indicators are extremely important and indirectly affect the normal use of the application program, that is, the use bandwidth and the number of read and write operations per second. The use bandwidth is affected by the number of people using the application program in society. The more people using the application program in society, the more the use bandwidth of the application program increases. When the use bandwidth reaches a threshold, traffic congestion occurs, affecting people's use of the application program and thus affecting social order. The use of the application program is affected by factors such as weather, holidays, peak hours, etc., and has great uncertainty. If the use bandwidth at the peak of the use of the application program can be perceived in advance, the operation and maintenance personnel can make relevant adjustments in advance, and adjust the use bandwidth of the application program according to different situations, which can not only guarantee the normal use of the application program, but also use the excess bandwidth to other devices at times when the application program is less used, such as giving the use bandwidth to backup devices that need high bandwidth at night. This can improve the utilization rate of bandwidth, reduce the operation and maintenance pressure of operation and maintenance personnel, and improve the network quality of the operator.
[0003] Therefore, accurately predicting the use bandwidth of the application program can greatly improve the use perception of the application program and effectively avoid peak congestion. At the same time, the prediction of the use bandwidth of the application program can also enable the operation and maintenance personnel to perceive the current state of the device and make a prediction in advance, thereby reducing the failure rate of the device and improving the normal use rate of the application program. There are many factors for the prediction of the use bandwidth of the application program, and social, political, weather and even economic factors have become the background of the use of the application program. Therefore, it is necessary to accurately and reasonably study the prediction of the use bandwidth of the application program, which may involve algorithms involving many factors. However, the use bandwidth of the application program cannot be accurately and quickly predicted in advance at present.
[0004] At present, no effective solution has been proposed for the above problems. SUMMARY
[0005] The embodiments of the present application provide a network bandwidth prediction method and device and a nonvolatile storage medium to at least solve the technical problem of low network bandwidth utilization rate caused by the inability of the prior art to predict the network bandwidth of the application program.
[0006] According to an aspect of the embodiments of the present application, a network bandwidth prediction method is provided, comprising: clustering a plurality of standard bandwidth data according to a plurality of clustering centers corresponding to the plurality of standard bandwidth data, to obtain a plurality of clustering results; determining a clustering result to which each of a plurality of prediction bandwidth data belongs according to a relationship between a plurality of prediction time series corresponding to the plurality of prediction bandwidth data and the plurality of clustering centers; and predicting network bandwidths of the plurality of prediction bandwidth data by using a trained neural network model according to the clustering result to which each of the plurality of prediction bandwidth data belongs, to obtain a prediction result of the network bandwidths.
[0007] Optionally, the clustering of the plurality of standard bandwidth data according to the plurality of clustering centers corresponding to the plurality of standard bandwidth data to obtain the plurality of clustering results comprises: normalizing a plurality of standard time series corresponding to the plurality of standard bandwidth data to obtain a plurality of target time series; determining any target time series with a quantity of n in the plurality of target time series as the plurality of clustering centers, where n is a positive integer greater than 1; determining other target time series in the plurality of target time series except the plurality of clustering centers as first target time series; and clustering the first target time series according to a distance deviation of the first target time series from the clustering centers to obtain the plurality of clustering results.
[0008] Optionally, the clustering of the first target time series according to the distance deviation of the first target time series from the clustering centers to obtain the plurality of clustering results comprises: determining a first target time series set composed of a plurality of first target time series with a distance deviation from the clustering centers within a first target interval; determining a maximum number of similar points between each first target time series in the first target time series set and the clustering centers; and assigning a first target time series with a maximum number of similar points greater than a preset value to the clustering center to obtain the plurality of clustering results.
[0009] Optionally, the cluster result to which each of the plurality of prediction bandwidth data belongs is determined according to a relationship between the plurality of prediction time series corresponding to the plurality of prediction bandwidth data and the plurality of cluster centers, including: determining a plurality of distance deviations of the prediction time series from the plurality of cluster centers, a plurality of maximum similar point numbers, and a plurality of maximum deviating point numbers; determining a target distance deviation from the plurality of distance deviations, a target maximum similar point number from the plurality of maximum similar point numbers, and a target maximum deviating point number from the plurality of maximum deviating point numbers, wherein the target distance deviation is the minimum value in the plurality of distance deviations, the target maximum similar point number is the maximum value in the plurality of maximum similar point numbers, and the target maximum deviating point number is the minimum value in the plurality of maximum deviating point numbers; in a case where the distance deviation of the prediction time series from the cluster center, the plurality of maximum similar point numbers, and the plurality of maximum deviating point numbers are the target distance deviation, the target maximum similar point number, and the target maximum deviating point number respectively, determining that the prediction bandwidth data corresponding to the prediction time series belongs to the cluster result corresponding to the cluster center; in a case where the distance deviation of the prediction time series from the first cluster center and the maximum similar point number of the prediction time series from the second cluster center are in a second target interval, determining that the prediction bandwidth data corresponding to the prediction time series belongs to the cluster result corresponding to the second cluster center.
[0010] Optionally, the neural network model is obtained by the following method: performing chaotic processing on initial genes of the deep belief neural network model; restoring the initial genes subjected to the chaotic processing to a solution range by a mapping formula to obtain an initialization matrix corresponding to the improved genetic algorithm; determining a fitness function value, an individual optimal value, and a population optimal value of the improved genetic algorithm according to the initialization matrix; performing selection operation, mutation operation, and vertical-horizontal crossover operation on the initialization matrix to obtain a target matrix and a target gene corresponding to the target matrix; taking the target gene as an initial weight of the deep belief neural network model; and determining the trained deep belief neural network model according to the initial weight.
[0011] Optionally, the selection operation, the mutation operation, and the vertical-horizontal crossover operation are performed on the initialization matrix to obtain the target matrix and the target gene corresponding to the target matrix, including: performing selection operation on the initialization matrix according to the fitness function value and the population quantity to obtain a first matrix; performing mutation operation on the first matrix according to an upper bound of the gene, a lower bound of the gene, and a maximum evolution number to obtain a second matrix; and performing vertical-horizontal crossover operation on the second matrix according to a dimension of the parent gene and a dimension of the child gene to obtain the target matrix and the target gene corresponding to the target matrix.
[0012] Optionally, before the clustering the plurality of standard bandwidth data according to the plurality of cluster centers corresponding to the plurality of standard bandwidth data to obtain a plurality of clustering results, the method further includes: obtaining historical bandwidth data, wherein the historical bandwidth data includes at least one of the following: an average used network bandwidth, a maximum used network bandwidth and a minimum used network bandwidth in a target time range; obtaining basic data, wherein the basic data includes at least one of the following: an environment temperature, an environment humidity, a holiday condition and a weather condition; determining a standard bandwidth data set according to the historical bandwidth data and the basic data, wherein the standard bandwidth data set includes the plurality of standard bandwidth data.
[0013] According to still another aspect of the embodiments of the present application, a nonvolatile storage medium is also provided, which includes a stored program, wherein the program, when executed, controls a device in which the storage medium is located to perform the above network bandwidth prediction method.
[0014] According to still another aspect of the embodiments of the present application, an electronic device is also provided, which includes a memory and a processor, the processor being configured to execute a program stored in the memory, wherein the program, when executed, performs the above network bandwidth prediction method.
[0015] In the embodiments of the present application, the plurality of standard bandwidth data is clustered according to the plurality of cluster centers corresponding to the plurality of standard bandwidth data to obtain a plurality of clustering results; the clustering results to which the plurality of prediction bandwidth data respectively belong are determined according to the relationship between the plurality of prediction time series corresponding to the plurality of prediction bandwidth data and the plurality of cluster centers; and the network bandwidth of the plurality of prediction bandwidth data is predicted by using the trained neural network model according to the clustering results to which the plurality of prediction bandwidth data respectively belong, to obtain the prediction result of the network bandwidth. In this way, by clustering the standard bandwidth data and selecting the clustering results of the same category as the prediction bandwidth data by comparing the Euclidean distances, the network bandwidth is accurately predicted by using the trained neural network model according to the clustering results to which the prediction bandwidth data respectively belong, so that the technical effect of improving the network bandwidth utilization rate is achieved, and the technical problem of low network bandwidth utilization rate caused by the inability of the prior art to predict the network bandwidth of the application program is solved. BRIEF DESCRIPTION OF DRAWINGS
[0016] The accompanying drawings, which are included to provide a further understanding of the present application and are incorporated in and constitute a part of this application, illustrate embodiments of the present application and serve to explain the present application. In the drawings:
[0017] Figure 1 is a flowchart of a network bandwidth prediction method according to an embodiment of the present application;
[0018] Figure 2 is a flow chart of another network bandwidth prediction method according to an embodiment of the present application;
[0019] Figure 3 is a structural diagram of a network bandwidth prediction device according to an embodiment of the present application;
[0020] Figure 4 is a structural diagram of another network bandwidth prediction device according to an embodiment of the present application;
[0021] Figure 5 is a hardware structural block diagram of a computer terminal (or electronic equipment) of a network bandwidth prediction method provided according to an embodiment of the present application. DETAILED DESCRIPTION
[0022] In order to enable persons skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by persons skilled in the art without creative labor should fall within the scope of protection of the present application.
[0023] It should be noted that the terms "first", "second", and the like in the specification and claims of the present application and the above-described drawings are used to distinguish similar objects, and do not necessarily indicate a specific order or a chronological sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present application described herein can be implemented in an order other than that illustrated or described herein. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product, or device that includes a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but can include other steps or units that are not clearly listed or inherent to the process, method, product, or device.
[0024] According to an embodiment of the present application, a method embodiment of a network bandwidth prediction method is provided. It should be noted that the steps shown in the flow chart of the drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flow chart, in some cases, the steps shown or described herein can be executed in an order different from that shown herein.
[0025] Figure 1 is a flow chart of a network bandwidth prediction method according to an embodiment of the present application, as shown in Figure 1 the method comprises the following steps:
[0026] In step S102, the multiple standard bandwidth data are clustered according to the multiple cluster centers corresponding to the multiple standard bandwidth data, to obtain multiple clustering results.
[0027] According to an optional embodiment of the present application, for example, 1000 standard bandwidth data are selected in a database, and 10 standard bandwidth data are randomly selected from the above 1000 standard bandwidth data as cluster centers. The distance deviations of the remaining 990 standard bandwidth data corresponding to the standard bandwidth time series and the 10 cluster centers are calculated. If the distance deviations meet the preset requirements, the standard bandwidth time series meeting the requirements are attributed to the corresponding cluster centers, and 10 clustering results are obtained.
[0028] In step S104, the clustering result to which each of the multiple prediction bandwidth data belongs is determined according to the relationship between the multiple prediction time series corresponding to the multiple prediction bandwidth data and the multiple cluster centers.
[0029] According to another optional embodiment of the present application, multiple distance deviations of the prediction time series and the multiple cluster centers, multiple maximum similar point numbers and multiple maximum deviation point numbers are determined. The prediction time series are composed of multiple data points. The maximum similar point number and the maximum deviation point number are obtained by calculating the data points corresponding to the two prediction time series.
[0030] First, the target distance deviation in the multiple distance deviations, the target maximum similar point number in the multiple maximum similar point numbers and the target maximum deviation point number in the multiple maximum deviation point numbers are determined, wherein the target distance deviation is the minimum value in the multiple distance deviations, the target maximum similar point number is the maximum value in the multiple maximum similar point numbers, and the target maximum deviation point number is the minimum value in the multiple maximum deviation point numbers. In the case that the distance deviation of the prediction time series and the cluster center, the multiple maximum similar point numbers and the multiple maximum deviation point numbers are the target distance deviation, the target maximum similar point number and the target maximum deviation point number respectively, it is determined that the prediction bandwidth data corresponding to the prediction time series belongs to the clustering result corresponding to the cluster center. In the case that the distance deviation of the prediction time series and the first cluster center and the maximum similar point number of the prediction time series and the second cluster center are in the second target interval, it is determined that the prediction bandwidth data corresponding to the prediction time series belongs to the clustering result corresponding to the second cluster center.
[0031] In step S106, the network bandwidth of the multiple prediction bandwidth data is predicted by using the trained neural network model according to the clustering result to which each of the multiple prediction bandwidth data belongs, to obtain a prediction result of the network bandwidth.
[0032] The related art generally uses a traditional BP neural network algorithm when predicting network bandwidth. The algorithm has problems such as local minimum point, slow convergence speed, low prediction accuracy, long training time, and the like in the calculation process. The application selects similar data to the prediction data through an improved clustering algorithm, and reduces the training time of the neural network.
[0033] According to the above steps, the same category of clustering results is selected from the standard bandwidth data by clustering and comparing the Euclidean distance. The network bandwidth of the multiple prediction bandwidth data is predicted by using the trained neural network model according to the respective clustering results to which the prediction bandwidth data belongs. The purpose of accurately predicting the network bandwidth is achieved, and the technical effect of improving the network bandwidth utilization is achieved.
[0034] According to an optional embodiment of the application, the multiple standard bandwidth data are clustered according to the multiple clustering centers corresponding to the multiple standard bandwidth data, and multiple clustering results are obtained, including the following steps: normalizing the multiple standard time series corresponding to the multiple standard bandwidth data to obtain multiple target time series; determining any target time series with a quantity of n in the multiple target time series as the multiple clustering centers, where n is a positive integer greater than 1; determining the target time series other than the multiple clustering centers in the multiple target time series as first target time series; clustering the first target time series according to the distance deviation of the first target time series and the clustering centers to obtain the multiple clustering results.
[0035] According to another optional embodiment of the application, the standard time series corresponding to the standard bandwidth data are normalized, for example, 1000 target time series are obtained, and 10 target time series are randomly selected from the 1000 target time series as clustering centers. The distance deviation of the remaining 990 target time series and the 10 clustering centers is calculated, where the formula for calculating the distance deviation Loss is as follows:
[0036]
[0037] wherein, is the clustering center, is the target time series.
[0038] In some optional embodiments of the present application, the clustering of the first target time series according to the distance deviation of the first target time series from the cluster center can be achieved by the following method: determining a first target time series set composed of a plurality of first target time series with distance deviation from the cluster center within a first target interval; determining the maximum number of similar points between each first target time series in the first target time series set and the cluster center; and assigning the first target time series with maximum number of similar points greater than a preset value to the cluster center to obtain a plurality of clustering results.
[0039] As an optional embodiment of the present application, a first target time series set composed of a plurality of first target time series with distance deviation from the cluster center within a preset interval is determined. The maximum number of similar points between each first target time series in the first target time series set and the cluster center is determined and the maximum number of deviated points whether the preset condition is met, and the judgment method is as follows:
[0040]
[0041]
[0042] wherein u is the dimension of the time series, is the Euclidean distance of the corresponding dimensions of two time series, is the maximum deviation distance, is the initial time.
[0043] The first target time series satisfying the preset condition is assigned to the cluster center to obtain a plurality of clustering results.
[0044] In some optional embodiments of the present application, the cluster result to which each of the plurality of prediction bandwidth data belongs is determined according to the relationship between the plurality of prediction time series corresponding to the plurality of prediction bandwidth data and the plurality of cluster centers, by the following method: determining a plurality of distance deviations of the prediction time series from the plurality of cluster centers, a plurality of maximum similar point numbers, and a plurality of maximum deviating point numbers; determining a target distance deviation from the plurality of distance deviations, a target maximum similar point number from the plurality of maximum similar point numbers, and a target maximum deviating point number from the plurality of maximum deviating point numbers, wherein the target distance deviation is the minimum value among the plurality of distance deviations, the target maximum similar point number is the maximum value among the plurality of maximum similar point numbers, and the target maximum deviating point number is the minimum value among the plurality of maximum deviating point numbers; determining that the prediction bandwidth data corresponding to the prediction time series belongs to the cluster result corresponding to the cluster center, when the distance deviation of the prediction time series from the cluster center, the maximum similar point number, and the maximum deviating point number are the target distance deviation, the target maximum similar point number, and the target maximum deviating point number, respectively; and determining that the prediction bandwidth data corresponding to the prediction time series belongs to the cluster result corresponding to the second cluster center, when the distance deviation of the prediction time series from the first cluster center and the maximum similar point number of the prediction time series from the second cluster center are in a second target interval.
[0045] As another optional embodiment of the present application, the distance deviation, the maximum similar point number, and the maximum deviating point number of the prediction time series from each cluster center are calculated, and the prediction time series is determined to be the cluster result corresponding to the cluster center if one of the following criteria is met: criterion 1: when the minimum distance deviation, the maximum maximum similar point number, and the minimum maximum deviating point number are met simultaneously, the cluster result is selected; criterion 2: when the maximum similar point number and the distance deviation are close, the cluster result with the maximum similar point number is selected.
[0046] In an optional embodiment, the neural network model is trained by the following method: performing chaotic processing on initial genes of a deep belief neural network model; restoring the initial genes after chaotic processing to a solution range by a mapping formula to obtain an initialization matrix corresponding to an improved genetic algorithm; determining a fitness function value, an individual optimal value, and a population optimal value of the improved genetic algorithm according to the initialization matrix; performing selection operation, mutation operation, and vertical-horizontal crossover operation on the initialization matrix to obtain a target matrix and a target gene corresponding to the target matrix; taking the target gene as the initial weight of the deep belief neural network model; and determining the trained deep belief neural network model according to the initial weight.
[0047] According to an optional embodiment of the present application, in step S1, the deep belief neural network and the improved genetic algorithm parameters are initialized.
[0048] Step S2, chaotic processing is performed on the initial genes. Next, the initial genes are reduced to a solution range through a mapping formula to form an improved genetic algorithm initialization matrix, which is represented by matrix B:
[0049]
[0050] wherein, represents the jth dimension value of the ith gene; i = 1,..., n; j = 1,..., d.
[0051] Step S3, the fitness function value of the improved genetic algorithm, the individual optimal value and the population optimal value are calculated. The fitness calculation formula of the improved genetic algorithm is as follows:
[0052]
[0053] wherein, the error value of the neural network calculated in this iteration, the error value of the globally optimal neural network.
[0054] Step S4, the population optimal value is updated.
[0055] Step S5, the population fitness value is calculated.
[0056] Step S6, selection operation.
[0057] The roulette wheel method is selected in this embodiment, and the selection strategy based on the fitness ratio is used, and the selection probability of each individual i is is:
[0058]
[0059] wherein, fi is the selected probability, Fi is the fitness value of individual i, k is a coefficient, and N is the number of population individuals.
[0060] Step S7, mutation operation.
[0061] Specifically, the mutation operation adopts the formula:
[0062]
[0063] wherein, amax is the upper bound of gene aij; amin is the lower bound of gene aij; f(g) = r2(1-g / Gmax)2; g is the current iteration number; Gmax is the maximum evolution number; and r is a random number in [0, 1].
[0064] Step S8, vertical and horizontal crossover operation.
[0065] Specifically, the vertical and horizontal crossover operation includes horizontal crossover operation and vertical crossover operation.
[0066] Horizontal crossover. The formula is used:
[0067]
[0068] wherein, is a random number on [-1, 1]; is a random number on [-1, 1]; are the parent genes of the d-th dimension, respectively; are the offspring genes of the d-th dimension generated by the horizontal crossover of X(i, d), X(j, d), respectively.
[0069] Vertical crossover. The formula is used:
[0070]
[0071] wherein, r is a random number on [0, 1]; are the parent genes i and of the d-th dimension generated by the vertical crossover.
[0072] Step S9, iteration ends, and the optimal gene is taken as the initial weight of the deep belief neural network.
[0073] Step S10, the deep belief neural network is trained and adjusted reversely to obtain a trained deep belief neural network model.
[0074] According to another optional embodiment of the present application, the selection operation, the mutation operation and the vertical-horizontal crossover operation are performed on the initialization matrix to obtain the target matrix and the target gene corresponding to the target matrix, and the method comprises the following steps: performing the selection operation on the initialization matrix according to the fitness function value and the population quantity to obtain a first matrix; performing the mutation operation on the first matrix according to the upper bound of the gene, the lower bound of the gene and the maximum evolution number to obtain a second matrix; and performing the vertical-horizontal crossover operation on the second matrix according to the dimension of the parent gene and the dimension of the offspring gene to obtain the target matrix and the target gene corresponding to the target matrix.
[0075] As an optional embodiment of the present application, before the clustering of the plurality of standard bandwidth data according to the plurality of clustering centers corresponding to the plurality of standard bandwidth data to obtain the plurality of clustering results, it is further required to: acquire historical bandwidth data, wherein the historical bandwidth data comprises at least one of the following: average used network bandwidth, maximum used network bandwidth and minimum used network bandwidth in a target time range; acquire basic data, wherein the basic data comprises at least one of the following: environmental temperature, environmental humidity, holiday condition and weather condition; and determine a standard bandwidth data set according to the historical bandwidth data and the basic data, wherein the standard bandwidth data set comprises the plurality of standard bandwidth data.
[0076] Figure 2 is a flow chart of another network bandwidth prediction method according to an embodiment of the present application, as shown in the figure, the method comprises the following steps: Figure 2
[0077] Step S202, constructing an application long-term usage bandwidth data set considering passenger flow, that is, a standard bandwidth data set corresponding to a plurality of standard bandwidth data.
[0078] According to an optional embodiment of the present application, when constructing the application long-term usage bandwidth data set, a clustering data set and a prediction day data set are constructed by historical application usage bandwidth. The historical application usage bandwidth data includes average application usage bandwidth , maximum application usage bandwidth , minimum application usage bandwidth , daily application usage bandwidth , environmental temperature , environmental humidity , holiday situation , weather condition , early morning peak passenger flow ; the clustering data set includes other historical application usage bandwidth data except the prediction day data; and the prediction day data set includes the prediction day data to be predicted.
[0079] Specifically, the historical application usage bandwidth data is obtained from the application telecommunication node database, and the environmental temperature, environmental humidity, holiday situation and weather condition are obtained from the local weather forecast website. The time resolution of the application usage bandwidth data is set to 5 minutes, forming an application usage bandwidth time series curve with a time interval of 5 minutes, the holiday situation is divided into ordinary double holidays, major holidays and the day after a holiday, and the weather condition is divided into sunny, rainy and cloudy; therefore, the application usage bandwidth data curve (standard time series) of a day is composed of 293 data points, wherein each data point includes a time point and the application usage bandwidth corresponding to the time point.
[0080] Step S204, constructing an application long-term usage bandwidth data clustering model considering passenger flow.
[0081] Step S2041, normalizing the application long-term usage bandwidth time series considering passenger flow.
[0082] Step S2042, calculating the distance deviation Loss between the normalized application long-term usage bandwidth time series considering passenger flow. The calculation formula is as follows:
[0083]
[0084] in, As cluster center, The target time series.
[0085] Step S2043: Cluster different time series based on the maximum deviation similarity criterion.
[0086] Step S20431: Determine the maximum number of similar points between each first target time series and the cluster center in the first target time series set. and the maximum number of deviation points The method for determining whether the preset conditions are met is as follows:
[0087]
[0088]
[0089] Where u is the dimension of the time series, Let Euclidean distance be the corresponding dimension of the two time series. The maximum deviation distance, This is the initial time.
[0090] Step S20432: After calculating the maximum deviation similarity between the cluster centers and the j-th application's long-term bandwidth time series considering passenger flow, if the conditions are met, then... Assigned to S ( ), where S ( ) is the cluster center. They are similar time series.
[0091] Step S20433: The long-term bandwidth usage time series of the application, considering passenger flow, that has met the conditions is obtained. Remove from the original set U of long-term bandwidth usage time series of applications considering passenger flow until the set U of long-term bandwidth usage time series of applications considering passenger flow is empty; otherwise, return to step S20431.
[0092] Step S206: Construct a long-term bandwidth data attribution model for applications that takes into account passenger flow.
[0093] Step S2061: Calculate the distance deviation Loss and the maximum number of similar points between the application's long-term bandwidth data (predicted bandwidth data) considering passenger flow and each cluster center. and the maximum number of deviation points .
[0094] Step S2062, if one of the following criteria is met, the predicted time curve is identified as the corresponding category (clustering result), and the time series of the category is used as the training data set:
[0095] Criterion 1: When the minimum distance deviation, the maximum number of similar points, and the minimum number of maximum deviation points are met at the same time, select the clustering result;
[0096] Criterion 2: When the maximum number of similar points and the deviation distance are close, select the clustering result with the maximum number of similar points.
[0097] Step S208, construct an improved genetic algorithm to optimize a deep belief neural network to obtain a prediction model.
[0098] Step S2081, initialize the deep belief neural network and the improved genetic algorithm parameters.
[0099] Step S2082, perform chaos processing on the initial genes. Next, the initial genes are restored to the solution range through a mapping formula to form an improved genetic algorithm initialization matrix. The initialization matrix is represented by matrix B:
[0100]
[0101] wherein, represents the jth dimension value of the ith gene; i = 1, …, n; j = 1, …, d.
[0102] Step S2083, calculate the fitness function value, individual optimal value, and population optimal value of the improved genetic algorithm. The fitness calculation formula of the improved genetic algorithm is as follows:
[0103]
[0104] wherein, the error value of the neural network calculated in this iteration, the error value of the globally optimal neural network.
[0105] Step S2084, update the population optimal value.
[0106] Step S2085, calculate the population fitness value.
[0107] Step S2086, selection operation.
[0108] In an optional embodiment, the roulette wheel method is selected, and the selection strategy based on the fitness ratio. The selection probability of each individual i is is:
[0109]
[0110] Wherein, fi is the selected probability, Fi is the fitness value of individual i, k is the coefficient, N is the number of population individuals.
[0111] Step S2087, mutation operation.
[0112] Specifically, the mutation operation adopts the formula:
[0113]
[0114] Wherein, amax is the upper bound of gene aij; amin is the lower bound of gene aij; f(g) = r2(1-g / Gmax)2; g is the current iteration number; Gmax is the maximum evolution number; r is a random number in the interval [0, 1].
[0115] Step S2088, vertical and horizontal crossover operation.
[0116] Specifically, the vertical and horizontal crossover operation includes horizontal crossover operation and vertical crossover operation.
[0117] Horizontal crossover. Adopt the formula:
[0118]
[0119] Wherein, is a random number in [-1, 1]; is a random number in [-1, 1]; are the d-th dimensions of the parent genes respectively. are the d-th dimensions of the offspring generated by horizontal crossover of X(i, d), X(j, d) respectively.
[0120] Vertical crossover. Adopt the formula:
[0121]
[0122] Wherein, r is a random number in [0, 1]; are the d-th dimensions of the parent genes i and are the offspring genes generated by vertical crossover of the d-th dimensions.
[0123] Step S2089, iteration ends, and the optimal gene is taken as the initial weight of the deep belief neural network.
[0124] Step S20810, the deep belief neural network is trained and adjusted reversely to obtain a trained deep belief neural network model.
[0125] Step S210, output the long-term bandwidth prediction result of the application program considering the passenger flow.
[0126] Through the above steps, the application bandwidth can be quickly and accurately predicted to assist application operation and maintenance personnel to regulate before the application peak, to adjust the bandwidth according to the application use condition in different periods, and to avoid the application peak congestion. At the same time, accurately predicting the application bandwidth can greatly improve the use perception of the application, effectively avoid the peak congestion, and the application bandwidth prediction can also enable the operation and maintenance personnel to perceive the current state of the device, make a prediction in advance, reduce the failure rate of the device, and thus improve the normal use rate of the application.
[0127] Figure 3 is a structural diagram of a network bandwidth prediction device according to an embodiment of the present application, as shown in the figure, the device comprises: Figure 3
[0128] The clustering module 30 is configured to cluster the multiple standard bandwidth data according to the multiple cluster centers corresponding to the multiple standard bandwidth data, and obtain multiple clustering results.
[0129] The first determination module 32 is configured to determine the clustering result to which each of the multiple prediction bandwidth data belongs according to the relationship between the multiple prediction time series corresponding to the multiple prediction bandwidth data and the multiple cluster centers.
[0130] The second determination module 34 is configured to predict the network bandwidth of the multiple prediction bandwidth data by using the trained neural network model according to the clustering result to which each of the multiple prediction bandwidth data belongs, and obtain the prediction result of the network bandwidth.
[0131] It should be noted that each of the above Figure 3 modules can be a program module (for example, a program instruction set for implementing a certain specific function) or a hardware module, and for the latter, it can be in the following form, but not limited to: the form of each of the above modules is a processor, or the functions of each of the above modules are realized by a processor.
[0132] It should be noted that the preferred embodiments of the embodiments shown in Figure 3 can refer to the related description of the embodiments shown in Figure 1 , which will not be repeated here.
[0133] Figure 4 is a structural diagram of another network bandwidth prediction device according to an embodiment of the present application, as shown in the figure, the device comprises: Figure 4
[0134] The constructing unit 40 is configured to construct an application long-term usage bandwidth data set considering the passenger flow, construct an application long-term usage bandwidth data clustering model considering the passenger flow, construct an application long-term usage bandwidth data attribution model considering the passenger flow, and construct a prediction model by improving a genetic algorithm to optimize a deep belief neural network.
[0135] The predicting unit 42 is configured to output an application long-term usage bandwidth prediction result considering the passenger flow.
[0136] Figure 5 A hardware structure block diagram of a computer terminal (or a mobile device) for implementing the prediction method of the network bandwidth is shown. As shown in the figure, Figure 5 the computer terminal 50 (or the mobile device 50) can include one or more processors 502 (the processor 502 can include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 504 for storing data, and a transmission module 506 for communication functions. In addition, it can also include a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which can be included as one of the ports of the BUS bus), a network interface, a power supply and / or a camera. Those skilled in the art can understand, Figure 5 that the structure shown in the figure is only schematic, and does not limit the structure of the above-mentioned electronic device. For example, the computer terminal 50 can include more or fewer components than those shown in the figure, or have a different configuration from that shown in the figure. Figure 5 Figure 5
[0137] It should be noted that the one or more processors 502 and / or other data processing circuits described above can be referred to as "data processing circuits" herein. The data processing circuit can be embodied in whole or in part as software, hardware, firmware or any other combination. In addition, the data processing circuit can be a single independent processing module, or any one of the other elements combined into the computer terminal 50 (or mobile device) in whole or in part. As referred to in the embodiments of the present application, the data processing circuit serves as a processor control (for example, selection of a variable resistance terminal path connected to an interface).
[0138] The memory 504 can be used to store software programs of application software and modules, such as program instructions / data storage means corresponding to the network bandwidth prediction method in the embodiments of the present application. The processor 502 executes various functional applications and data processing, i.e. implements the network bandwidth prediction method described above, by running the software programs and modules stored in the memory 504. The memory 504 can include a high-speed random access memory, and can also include a non-volatile memory, such as one or more magnetic storage devices, flash memories, or other non-volatile solid-state memories. In some examples, the memory 504 can further include memories remotely arranged with respect to the processor 502, which can be connected to the computer terminal 50 through a network. Examples of the network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.
[0139] The transmission module 506 is configured to receive or send data via a network. The specific examples of the network can include a wireless network provided by a communication provider of the computer terminal 50. In one example, the transmission module 506 includes a network interface controller (NIC) which can be connected to other network devices through a base station so as to communicate with the Internet. In one example, the transmission module 506 can be a radio frequency (RF) module configured to communicate with the Internet in a wireless manner.
[0140] The display can be, for example, a touch screen type liquid crystal display (LCD) which can enable a user to interact with a user interface of the computer terminal 50 (or a mobile device).
[0141] It should be noted that, in some optional embodiments, the above Figure 5 The computer device (or electronic device) shown can include hardware elements (including circuitry), software elements (including computer code stored on a computer readable medium), or a combination of both hardware and software elements. It should be noted that Figure 5 is only one example of a particular implementation and is intended to illustrate the types of components that can be present in the computer device (or electronic device) described above.
[0142] It should be noted that Figure 1 The electronic device shown is configured to execute The network bandwidth prediction method shown, and the related explanations in the execution method of the above commands also apply to the electronic device, which will not be described here.
[0143] The embodiment of the present application further provides a nonvolatile storage medium, which comprises a stored program, wherein the program controls a device where the storage medium is located to perform the network bandwidth prediction method.
[0144] The nonvolatile storage medium executes a program performing the following functions: clustering a plurality of standard bandwidth data according to a plurality of clustering centers corresponding to the plurality of standard bandwidth data to obtain a plurality of clustering results; determining a clustering result to which each of a plurality of prediction bandwidth data belongs according to a relationship between a plurality of prediction time series corresponding to the plurality of prediction bandwidth data and the plurality of clustering centers; and predicting network bandwidths of the plurality of prediction bandwidth data by using a trained neural network model according to the clustering result to which each of the plurality of prediction bandwidth data belongs to obtain a prediction result of the network bandwidths.
[0145] The embodiment of the present application further provides an electronic device, comprising a memory and a processor, wherein the processor is configured to execute a program stored in the memory, and the program is configured to perform the network bandwidth prediction method.
[0146] The processor is configured to execute a program performing the following functions: clustering a plurality of standard bandwidth data according to a plurality of clustering centers corresponding to the plurality of standard bandwidth data to obtain a plurality of clustering results; determining a clustering result to which each of a plurality of prediction bandwidth data belongs according to a relationship between a plurality of prediction time series corresponding to the plurality of prediction bandwidth data and the plurality of clustering centers; and predicting network bandwidths of the plurality of prediction bandwidth data by using a trained neural network model according to the clustering result to which each of the plurality of prediction bandwidth data belongs to obtain a prediction result of the network bandwidths.
[0147] The above sequence numbers of the embodiments of the present application are only for description, and do not represent advantages or disadvantages of the embodiments.
[0148] In the above embodiments of the present application, the description of each embodiment has its own focus, and the parts not described in detail in a certain embodiment can be referred to the related description of other embodiments.
[0149] In the several embodiments provided by the present application, it should be understood that the disclosed technology can be implemented in other ways. Of course, the unit division in the above- described device embodiment is only a logical function division, and there can be another division manner during actual implementation. 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 displayed or discussed mutual couplings or direct couplings or communication connections between the units can be indirect couplings or communication connections through some interfaces, and can be electrical or other forms.
[0150] The units described as separate components may or may not be physically separate, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple units. Part or all of the units can be selected according to actual needs to achieve the purpose of the embodiment scheme.
[0151] In addition, the functional units in each embodiment of the present application can be integrated in one processing unit, or each unit can be physically present alone, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware or in the form of a software functional unit.
[0152] The integrated unit, if realized in the form of a software functional unit and sold or used as an independent product, can be stored in a computer readable storage medium. Based on this understanding, the technical solutions of the present application or the part that contributes to the related art or the whole or part of the technical solutions can be embodied in the form of a software product. 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 each embodiment of the present application. The foregoing storage medium includes: a U disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a mobile hard disk, a magnetic disk or an optical disk, and various program code storage media.
[0153] The above is only the preferred embodiment of the present application, and it should be pointed out that for those skilled in the art, without departing from the principles of the present application, a number of improvements and refinements can be made, and these improvements and refinements should be considered as the protection scope of the present application.
Claims
1. A method of predicting network bandwidth, characterized by, The method comprises the following steps: According to the relationship between the plurality of prediction bandwidth data corresponding to the plurality of prediction time series and the plurality of clustering centers, the clustering result to which the plurality of prediction bandwidth data respectively belongs is determined; According to the clustering result to which the plurality of prediction bandwidth data respectively belongs, the network bandwidth of the plurality of prediction bandwidth data is predicted by using the trained neural network model to obtain the prediction result of the network bandwidth, wherein the neural network model comprises a deep belief neural network model. According to the plurality of clustering centers corresponding to the plurality of standard bandwidth data, the plurality of standard bandwidth data are clustered to obtain a plurality of clustering results, comprising:
2. The method of claim 1, wherein, The plurality of standard time series corresponding to the plurality of standard bandwidth data are normalized to obtain a plurality of target time series; Any target time series with a quantity of n in the plurality of target time series is determined as a plurality of clustering centers, wherein n is a positive integer greater than 1; The target time series other than the plurality of clustering centers in the plurality of target time series are determined as first target time series; According to the distance deviation of the first target time series and the clustering center, the first target time series are clustered to obtain a plurality of clustering results. According to the distance deviation of the first target time series and the clustering center, the first target time series are clustered to obtain a plurality of clustering results, comprising:
3. The method of claim 2, wherein, A first target time series set composed of a plurality of first target time series with distance deviation of the clustering center in a first target interval is determined; The maximum number of similar points between each first target time series in the first target time series set and the clustering center is determined; The first target time series with the maximum number of similar points greater than a preset value are assigned to the clustering center to obtain a plurality of clustering results. According to the relationship between the plurality of prediction bandwidth data corresponding to the plurality of prediction time series and the plurality of clustering centers, the clustering result to which the plurality of prediction bandwidth data respectively belongs is determined, comprising:
4. The method of claim 1, wherein, A plurality of distance deviations, a plurality of maximum numbers of similar points and a plurality of maximum numbers of deviating points between the prediction time series and the plurality of clustering centers are determined; determining a target distance deviation in the plurality of distance deviations, a target maximum number of similar points in the plurality of maximum numbers of similar points, and a target maximum number of deviating points in the plurality of maximum numbers of deviating points, wherein the target distance deviation is a minimum value in the plurality of distance deviations, the target maximum number of similar points is a maximum value in the plurality of maximum numbers of similar points, and the target maximum number of deviating points is a minimum value in the plurality of maximum numbers of deviating points; determining that the predicted time series belongs to the clustering result corresponding to the clustering center when the distance deviation between the predicted time series and the clustering center, the maximum number of similar points, and the maximum number of deviating points are the target distance deviation, the target maximum number of similar points, and the target maximum number of deviating points, respectively; determining that the predicted time series belongs to the clustering result corresponding to the second clustering center when the distance deviation between the predicted time series and the first clustering center and the maximum number of similar points between the predicted time series and the second clustering center are in a second target interval.
5. The method of claim 1, wherein, The neural network model is obtained by the following method: chaotic processing is performed on an initial gene of a deep belief neural network model; an initialization matrix corresponding to an improved genetic algorithm is obtained by restoring the initial gene after chaotic processing to a solution range through a mapping formula; an adaptive function value, an individual optimal value, and a population optimal value of the improved genetic algorithm are determined according to the initialization matrix; a target matrix and a target gene corresponding to the target matrix are obtained by performing selection operation, mutation operation, and vertical-horizontal crossover operation on the initialization matrix; the target gene is used as an initial weight of the deep belief neural network model; the deep belief neural network model is trained according to the initial weight.
6. The method of claim 5, wherein, The selection operation, the mutation operation, and the vertical-horizontal crossover operation are performed on the initialization matrix to obtain a target matrix and a target gene corresponding to the target matrix, including: the initialization matrix is subjected to selection operation to obtain a first matrix according to the adaptive function value and the population quantity; the first matrix is subjected to mutation operation to obtain a second matrix according to the upper bound of the gene, the lower bound of the gene, and the maximum evolution number; the second matrix is subjected to vertical-horizontal crossover operation to obtain a target matrix and a target gene corresponding to the target matrix according to the dimension of the parent gene and the dimension of the child gene.
7. A network bandwidth prediction device, characterized by comprising: including: The clustering module is configured to cluster the plurality of standard bandwidth data according to a plurality of clustering centers corresponding to the plurality of standard bandwidth data, to obtain a plurality of clustering results. Before clustering the plurality of standard bandwidth data according to a plurality of clustering centers corresponding to the plurality of standard bandwidth data, to obtain a plurality of clustering results, the method further includes: obtaining historical bandwidth data, wherein the historical bandwidth data includes at least one of the following: average used network bandwidth, maximum used network bandwidth and minimum used network bandwidth in a target time range; obtaining basic data, wherein the basic data includes at least one of the following: environmental temperature, environmental humidity, holiday condition and weather condition; determining a standard bandwidth data set according to the historical bandwidth data and the basic data, wherein the standard bandwidth data set includes a plurality of standard bandwidth data. The first determining module is configured to determine the clustering result to which each of the plurality of prediction bandwidth data belongs according to a relationship between a plurality of prediction time series corresponding to the plurality of prediction bandwidth data and the plurality of clustering centers. The second determining module is configured to predict network bandwidth of the plurality of prediction bandwidth data by using a trained neural network model according to the clustering result to which each of the plurality of prediction bandwidth data belongs, to obtain a prediction result of the network bandwidth, wherein the neural network model includes a deep belief neural network model.
8. A non-volatile storage medium, comprising: The non-volatile storage medium includes a stored program, wherein the program controls the device in which the non-volatile storage medium is located to perform the network bandwidth prediction method of any one of claims 1 to 6 when the program is running.
9. An electronic device, comprising: The program is stored in the memory and includes the following steps: The memory and the processor are configured to run the program stored in the memory, wherein the program performs the network bandwidth prediction method of any one of claims 1 to 6 when the program is running.
Citation Information
Patent Citations
Flow prediction method and device
CN110474808A
Bandwidth predictor setting method, service adjusting method and related device
CN113114540A