CN102073586A - Gray generalized regression neural network-based small sample software reliability prediction method - Google Patents
Gray generalized regression neural network-based small sample software reliability prediction method Download PDFInfo
- Publication number
- CN102073586A CN102073586A CN 201010602453 CN201010602453A CN102073586A CN 102073586 A CN102073586 A CN 102073586A CN 201010602453 CN201010602453 CN 201010602453 CN 201010602453 A CN201010602453 A CN 201010602453A CN 102073586 A CN102073586 A CN 102073586A
- Authority
- CN
- China
- Prior art keywords
- data
- test
- network
- neural network
- service time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The invention discloses a gray generalized regression neural network-based small sample software reliability prediction method. The method comprises the following steps of: first, respectively emulating and expanding failure time data and test coverage rate data in collected small sample software reliability test data by using an improved Bootstrap method to form expanded reliability data which has the same failure statistical rule as small sample reliability data; then, obtaining a three-dimensional curve of the failure time, the test coverage rate and the unreliability of the expanded reliability data; next, establishing a gray generalized regression neural network; later on, training the gray generalized regression neural network by adopting the expanded reliability data and establishing a small sample software reliability prediction model; and finally, predicting by using the model to obtain software reliability prediction information. The method avoids solving a complex multivariate likelihood equation, and solves the problem that an available prediction model can be obtained only by training a large number of models in artificial neural network modeling in software reliability prediction.
Description
Technical field
The present invention relates to the software reliability method for predicting in a kind of software reliability test, be specifically related to a kind of small sample software reliability method for predicting, belong to software reliability and estimate technical field based on the grey generalized regression nerve networks.
Background technology
Along with fast development of computer technology, people strengthen day by day to the dependence of computer software, and are also more and more higher to the reliability requirement of software.Software reliability estimates to be faced with the problem that will estimate modeling to reliability requirement height, software that the test data number is few.In addition, if estimate also to exist the data number few, be difficult to satisfy the problem of traditional method for predicting to sample size requirements in the software reliability of carrying out in early days of software reliability test.If according to the conventional method, the later stage of test is carried out the modeling that software reliability is estimated after collecting enough data more by the time, and then the time of Deng Daiing can be difficult to bear, and the while also exists the few risk of sample data number that is used to estimate.
The research of software reliability method for predicting mainly refers to the software reliability growth Study of model, is to utilize the fail data that obtains in the software reliability growth test to come the model that software reliability is estimated and estimated.The modeling thinking of traditional software reliability growth model is: at first certain hypothesis is carried out in the failure mode or the behavior of software, the utilization statistical theory is set up mathematical model on the basis of these hypothesis then.The explicit definition that in these models, has comprised model parameter, and these model parameters often have clear physical meaning.At last, come match fail data curve with this model, thereby determine model parameter, the estimation of acquisition software reliability is also estimated.
At present, software reliability estimates that the ubiquitous insoluble problem of modeling is: many software reliability growth models can provide some fail data estimates the result preferably, but it is barely satisfactory to the expectation result that other fail datas provide, this is called the problem of inconsistency in the Research of reliability model, and it has seriously hindered the popularization of software reliability technology.The reason that causes this problem mainly is that the hypothesis that proposes when setting up model may not conform to the actual conditions.
In addition, this software reliability modeling method only depends on software failure data, and is comprehensive inadequately to the excavation of software information, caused the accuracy deficiency of estimating.Therefore, how to take all factors into consideration fail data and Software Delivery affirmation some historical informations before that software reliability test obtains, wait as the change frequency of programmer's technical ability, test attempts degree, test coverage and program specification book and to set up unified model, the modeling that the various information of trying hard to comprehensively to consider influence software reliability are carried out software reliability becomes a kind of new thinking with assessing.Yet these information or factor be height correlation and be nonlinear relationship with reliability each other usually.This just makes the existing statistical modeling method based on mutual independence and linearity have significant limitation to these data modeling the time.
Therefore, the neural network modeling approach that can handle multiple factor and can be in theory approach any Nonlinear Mapping with arbitrary accuracy has attracted people's attention in recent years and has obtained some achievements in research.
Artificial neural network carries out the algorithm mathematics model of distributed parallel information processing as a kind of human brain neural network's of imitation behavioural characteristic, can be from known data learn and extract inherent law in these data, have very strong non-linear mapping capability by adjusting interconnected relationship between a large amount of nodes of network internal.Artificial neural network has following outstanding advantage: 1. Gao Du concurrency; 2. the non-linear overall situation effect of height; 3. good fault-tolerance and function of associate memory; 4. ten fens strong self-adaptations, self-learning function.
Generalized regression nerve networks (General Regression Neural Network, be called for short GRNN) is that the Donald Specht by The LockheedPalo Alto research laboratory proposed in 1991, is a kind of Extended forms of probabilistic neural network.Generalized regression nerve networks is based upon on the mathematical statistics basis, can approach wherein implicit mapping relations according to sample data, even sample data rareness, the output result of network also can converge on the optimum regression surface, and the learning algorithm of network is simple, also has the concurrency of height in configuration aspects.
Generalized regression nerve networks is as radial basis function neural network (Radius Basic Function Neural Network, abbreviation RBFNN) a kind of improved form, have fast convergence rate and be difficult for being absorbed in advantage such as local minimum than present widely used reverse transmittance nerve network (Back PropagationNeural Network, be called for short BPNN).In addition, than common RBFNN, GRNN also has the fault-tolerance and the robustness of stronger Nonlinear Mapping approximation capability and pace of learning, flexible network structure and height, and in sample data more after a little while, estimate that effect is also relatively good, can also handle unsettled data.
Artificial neural network is a kind of black box method in fact, require few to the experimental knowledge that is modeled object when it is modeling with respect to the advantage of classic method, generally needn't know knowledge in advance about the aspects such as structure, parameter and dynamic perfromance that are modeled object, only need provide the I/O data of object, the mapping relations that just can be imported and export by the learning functionality of network itself.
Yet, the same with software reliability modeling based on statistical theory, need the sample data of some based on the software reliability modeling of neural network, when the capacity of sample seldom the time, be difficult to set up available model, the precision of expectation may be very poor.
Gray system theory is that the famous scholar Deng Julong of China teaches in the eighties foundation in last century, known with partial information, the small sample of partial information the unknown, poor information and probabilistic system are research object, mainly by to the regenerating of part Given information, develop, means such as analysis, therefrom extract valuable or regular information, realize the correct description of system's moving law and effectively control.Its main research contents comprises gray system analysis, modeling, expectation, decision-making and control, it extends to abstract systems such as society, economy, ecology to general system theory, information theory, cybernatic viewpoint and method, in conjunction with the utilization mathematical method, having developed the incomplete system of a cover solution information is the theory and the method for gray system, has formed complete theoretical system.
Be provided with original data sequence X
(0)=[x
(0)(1), x
(0)(2), x
(0)(3) ..., x
(0)(n)], symbol x wherein
(i)(k) expression belongs to sequence X
(i)K element, definition level ratio:
σ(k)=x
(0)(k-1)/x
(0)(k)
The data sequence of a n dimension, its level than coverage is
If to exceed coverage than sequence bigger for level, then should make conversion process to former data, make the level of the sequence after its conversion can hold covering than falling within, conversion process commonly used has: translation transformation, log-transformation, root conversion.
Gray theory thinks, although one group meet level than the objective data of coverage condition show at random, a discrete presentation, excavate its inherent law through suitable mode, the randomness that weakens surely strengthens regularity.Grey generating run (AGO) a kind of processing mode that comes to this that adds up.If
K=1,2 ..., n,
Then claim X
(1)=[x
(1)(1), x
(1)(2), x
(1)(3) ..., x
(1)(n)] be original series X
(0)1 AGO formation sequence (with original series X
(0)R AGO formation sequence be designated as X
(r)).Otherwise, by X
(1)Obtain X
(0)Process be called IAGO.Gray system theory estimates that the step of modeling is as follows:
To grey formation sequence X
(1)Set up the single order differential albefaction equation of Grey models GM (1,1):
Model parameter-a is the development coefficient, and u is the grey action, the model parameter of utilization least squares identification equation:
Wherein, B and y
NComputing formula be:
y
N=[x
(0)(2),x
(0)(3),…,x
(0)(n)]
T
Single order differential albefaction equation separate for:
This is separated and is also referred to as time response function, is then calculated by this time response function
Be called Model Calculation value or match value.Reduce at last
Obtain
Be model predication value.
In order to solve the problem of sample size deficiency, need make full use of the information that the small sample data are provided.At present, the common method of solution small sample problem has Bayes's (Bayes) method and double sampling (Resampling) method.The Bayes method has obtained using widely owing to can merge prior imformations such as historical information, expertise in recent years, but its prior imformation source is different, and the selection of distribution form also has very big subjectivity, so usually controversial.The double sampling method is fully excavated the information of former sample data itself by duplicate sampling from former sample with the exptended sample capacity, has solved the problem that can't obtain great amount of samples in practice to a certain extent.In the double sampling method, that be subjected to most at present that people pay close attention to is bootstrap (Bootstrap).The Bootstrap method be by U.S. statistician Efron in list of references [1] (Efron B.Bootstrap Methods:Another Look at the Jackknife[J] .The Annals of Statistics, 1979,7 (1): a kind of nonparametric statistical method that systematically proposes first 1-26.).Since the eighties in 20th century, this method is widely used in fields such as medical science, military affairs, finance, economics having obtained continuous development aspect theoretical and the applied research, carries out interval estimation, test of hypothesis, parameter estimation, statistic check.The Bootstrap method is on the basis of original sample, generates the statistical nature that self-service sample is estimated certain statistic of unknown distribution by double sampling.The Bootstrap method does not need supposition is made in overall distribution, directly utilizes the information of original sample, thereby is a kind of method that quite has cogency.But, have research to show that also there is certain limitation in the utilization of Bootstrap method under the small sample situation.For example at list of references [2] (Duan Xiaojun, Wang Zhengming. the Bootstrap method [J] under the System in Small Sample Situation. the trajectory journal, 2003,15 (3)) point out in: under the large sample advantage of Bootstrap method clearly, but the deviation that the Bootstrap method is approached true distribution under the System in Small Sample Situation can not be ignored.The reason that produces this problem is that the Bootstrap method is that empirical distribution function according to original sample carries out double sampling in essence, difference between sample empirical distribution function under the large sample situation and population distribution function is not obvious, but on statistical significance, can not ignore in the difference between them under the small sample situation, the self-service sample that the double sampling that carries out according to the empirical distribution function of small sample this moment produces is relatively concentrated, and its randomness can not satisfy statistical requirement.Produce unreasonable part aspect the self-service sample at Bootstrap method double sampling under the small sample situation, list of references [3] (Fan Lei, Lei FAN. is based on the no inefficacy small sample reliability assessment [J] of bootstrap. microcomputer information, 2008, first employing method for parameter estimation has been proposed 24 (33)), construct the distribution that it is obeyed according to primary data sample, for example Weibull distribution, normal distribution etc., replace empirical distribution function, and then construct self-service sample according to the distribution of being constructed; List of references [4] (Huang Wei, Feng Yunwen, Lv Zhenzhou etc. based on the System in Small Sample Situation test assessment method research [J] of Bootstrap method. machine science and technology, 2006,25 (1)) studied the feasibility of using exponential distribution function, Boltzmann function and cubic polynomial function match correction sample empirical distribution function, and discuss with the empirical distribution function in the sample empirical distribution function replacement traditional B ootstrap method of revising, the System in Small Sample Situation test assessment method based on the Bootstrap method has been proposed.Yet list of references [3] and list of references [4] produce aspect the self-service sample in irrational problem solving Bootstrap method double sampling under the small sample situation, all artificial hypothesis has been carried out in overall distribution, lost the part prior imformation, thereby brought systematic error for institute's established model, lost the cogency stronger advantage of Bootstrap method because of not needing overall work hypothesis is brought.
Summary of the invention
The objective of the invention is low even can't set up the problem of available model for the expectation precision that solves the expectation model that the traditional software method for predicting reliability sets up under the small sample situation, draw that gray system theory and generalized regression nerve networks are dealt with information separately and the basis of the advantage estimated on, in model, add test coverage information and adopt improved Bootstrap method that the small sample data are expanded, reach the effect of under condition of small sample, software reliability being carried out the modeling and the expectation of degree of precision, formed the software reliability method for predicting of considering test coverage under the small sample data based on the grey generalized regression nerve networks.
The present invention proposes a kind of improved Bootstrap method, at first adopt probability graph method to obtain the information of overall distribution.Probability graph method only need be judged the degree of quantile track deviation from linearity, can not cause information dropout to observation data.Determine that with the least square method match probability distribution function of sample revises the sample empirical distribution function then,, under the prerequisite of overall distribution artificially not being supposed, solve Bootstrap method double sampling under the small sample situation and produce irrational problem aspect the self-service sample with this; Thereby construct at last the out-of-service time-unreliable write music line and test coverage-unreliable line of writing music is incorporated into test coverage and estimates in the model.
Small sample software reliability method for predicting based on the grey generalized regression nerve networks of the present invention comprises following step:
Step 1: collect test data;
By the software reliability growth test, collect test data
t
iBe the out-of-service time, C
iBe test coverage, N
iBe the accumulative total failure number, i=1 ..., N, N are the number of the test data collected;
Step 2: determine the distribution of out-of-service time data and test coverage data;
Regard out-of-service time in the test data and test coverage as the one-dimensional random sequence respectively, at first determine the probability distribution type of each one-dimensional random sequence with probability graph method, after determining the probability distribution type, use least square method to determine that each one-dimensional random sequence obeys the distribution parameter of distribution separately;
Step 3: use and improve Bootstrap method expanding data;
The concrete probability distribution of being obeyed separately according to out-of-service time that step 2 obtained and test coverage, random sampling produces has the emulation out-of-service time data and the emulation testing coverage data of identical statistical law with former data, emulation out-of-service time data and emulation testing coverage data expand out-of-service time data and expansion test coverage data with original out-of-service time and test coverage data merging back acquisition respectively, and the out-of-service time data are after expanding
Expanding back test coverage data is
Wherein M is sample size after expanding, M 〉=N,
Then, adopt that the method construct of empirical distribution function expands the out-of-service time-test coverage-unreliable line of writing music of unreliable write music line and expansion, at last, according to these two curves, earlier unreliable degree be multiply by total accumulative total failure number and be converted into corresponding accumulative total failure number, the accumulative total failure number data that obtain expanding
The three-dimensional curve of the out-of-service time that structure expands, test coverage and accumulative total failure number, the data point set on the three-dimensional curve
Be the test data of expansion;
Step 4: use Grey models GM (1,1) that data are handled;
Use Grey models GM (1,1) that the accumulative total failure number of the expansion of step 3 gained is handled, the gray model that obtains accumulative total failure number data is estimated sequence
Obtain the expansion test data of rule
Step 5: set up the generalized regression artificial neural network;
At first determine the input and output of network, with out-of-service time t
iWith test coverage C
iAs the input vector of network, add up failure number N accordingly
iAs object vector, set up the generalized regression nerve networks of 2 input blocks, an output unit, rule of thumb determine the initial parameter value of network;
Step 6: training generalized regression nerve networks;
The expansion test data of laws of use
The neural network of being set up is trained, and the input vector set is
Corresponding object vector set is
Input vector and object vector are carried out normalized, and fan-in network is trained it then, adopts and stays a cross validation method neural network training, need carry out the training of M wheel altogether;
Step 7: utilize the neural network that trains to estimate;
The out-of-service time t at the some place that needs are estimated
0With test coverage C
0As the input vector fan-in network, network output valve N
0Be the predicted value of corresponding accumulative total failure number.
The invention has the advantages that:
(1) the inventive method estimates that in software reliability adding test coverage information makes that the expectation model is more reasonable in the model;
(2) the inventive method does not need to set up the physical model of describing complex relationship between out-of-service time, test coverage and the accumulative total failure number, has avoided setting up the difficulty of physical model;
(3) the inventive method needn't be done in advance to simplify hypothesis to the failure behaviour of system, has avoided the introducing of systematic error;
(4) the inventive method does not need to find the solution complicated pluralism likelihood equation group;
(5) the inventive method has solved and has been difficult to set up under condition of small sample effectively and the difficult problem of accurate software reliability expectation model;
(6) compare with common software reliability method for predicting, significantly improved the expectation precision.
Description of drawings
Fig. 1 is a process flow diagram of the present invention;
Fig. 2 is the comparison diagram of six kinds of distribution pattern probability graphs of out-of-service time data;
Fig. 3 is the comparison diagram of six kinds of distribution pattern probability graphs of piece test coverage data;
Fig. 4 is the comparison diagram of six kinds of distribution pattern probability graphs of branch testing coverage data;
Fig. 5 is the comparison diagram of six kinds of distribution pattern probability graphs of c-use coverage data;
Fig. 6 is the comparison diagram of six kinds of distribution pattern probability graphs of p-use coverage data;
Fig. 7 for expand the out-of-service time-the unreliable line of writing music;
Test coverage-unreliable the write music line of Fig. 8 for expanding;
Fig. 9 is out-of-service time, test coverage that expands and the three-dimensional curve that adds up failure number;
Figure 10 predicts the outcome for grey forecasting model;
Figure 11 is the expectation result of the embodiment of the invention.
Embodiment
The present invention is described in further detail below in conjunction with drawings and Examples.
No matter be based on the expectation model that statistical theory also is based on neural network, its main thought all is by the analysis to given data, finds the relation of interdependence of data inherence, thereby obtains the expectation ability to unknown data.But traditional statistics all is to be based under the abundant prerequisite of number of samples, the various method for predicting that proposed only when sample number is tending towards infinity its performance theoretic assurance is just arranged, so its accuracy has bigger relation with the capacity that is used for the sample data of modeling.For neural network model also is like this, when between the input of model and the output concern more complicated the time, if lack the sample data that is used to train, neural network is not trained up so, make neural network can not grasp the rule of data well probably, thereby can't carry out effective and accurate estimate.Yet in most actual conditions, number of samples all is limited usually, even seldom, so a lot of methods all are difficult to obtain desirable effect.
The software reliability method for predicting based on the grey generalized regression nerve networks that the present invention proposes is a kind of nonparametric technique, and this method considers that test coverage information makes that the expectation model is more reasonable; Use neural network to carry out modeling, utilize artificial neural network can make network obtain getting in touch and can rebuild the characteristic of non-linear Continuous Mappings arbitrarily between the inherent law of data sequence and each influence factor and the data sequence by this generalization procedure of study to data with existing, thereby needn't make to simplify hypothesis in advance to the failure behaviour of system, avoided the introducing of systematic error, do not need to set up the physical model of describing complex relationship between out-of-service time, test coverage and the accumulative total failure number yet, do not need to find the solution complicated polynary likelihood equation group.In addition, in order to solve small sample problem, this method uses improved Bootstrap method emulation acquisition to have the expansion reliability data of identical inefficacy statistical law with the small sample reliability data from small sample data itself.Utilize the expansion reliability data that the required sample number of Grey models GM (1,1) is few, characteristics that need not consider its regularity of distribution and variation tendency are handled gained, strengthen the regularity of data.And then use has strengthened regular expansion reliability data training also can have better effects under unstable small sample situation generalized regression nerve networks, obtain the inherent law of sample data by the self study of artificial neural network, obtain estimating model, make that also can carry out high-precision software reliability under the small sample situation estimates.
Suppose software is carried out the software reliability growth test, the test data of collecting is
Wherein each item number certificate is a tlv triple (t
i, C
i, N
i), i=1 ..., N, and t
iBe the out-of-service time, C
iBe test coverage, N
iBe the accumulative total failure number, N is the number of the test data collected.The problem that the inventive method will solve be exactly when data sample capacity N hour, on the basis of generalized regression nerve networks, utilize fail data and test coverage information to set up available software reliability expectation model by merging improved Bootstrap method and gray system theory, and reach higher expectation precision.
The present invention is a kind of small sample software reliability method for predicting based on the grey generalized regression nerve networks, and flow process comprises following step as shown in Figure 1:
Step 1: collect test data.
By the software reliability growth test, collect test data
t
iBe the out-of-service time, C
iBe test coverage, N
iBe the accumulative total failure number, i=1 ..., N, N are the number of the test data collected.
Step 2: determine the distribution of out-of-service time data and test coverage data.
Regard out-of-service time in the test data and test coverage as the one-dimensional random sequence respectively, this step will be determined the distribution that the one-dimensional random sequence of gained is obeyed separately exactly.The distribution of determining random series comprises the distribution pattern of determining this random series and distribution parameter two parts content of determining this distribution on this basis.At first determine the probability distribution type of each random series with probability graph method.Probability graph method only need be judged the degree of quantile track deviation from linearity, can not cause information dropout to test data.After determining distribution pattern, use least square method to determine that each sequence obeys the distribution parameter of distribution separately.
Step 3: use improved Bootstrap method expanding data.
Expand test data, need to increase the test data of some emulation in original test data.But for a software, common one corresponding test data that lost efficacy, and the value of accumulative total failure number can only be the positive integer value that disperses is so when total accumulative total failure number of this software seldom the time, the test data of collecting also must be seldom.Therefore, expand test data, at first will be converted into the accumulative total failure number of the value that can only disperse continuously the unreliable degree of value.Expand after the test data, more unreliable degree is converted to the accumulative total failure number.The situation that this moment, decimal may appear getting in the accumulative total failure number, but as can be known by the definition of unreliable degree, the accumulative total failure number of this moment refers to the mean value of the accumulative total failure number of a plurality of softwares when testing simultaneously, also is rational so the accumulative total failure number of non integer value occurs getting.
Among the present invention, for the out-of-service time data, the problem of asking in this step is for to ask the change curve of unreliable degree with the out-of-service time according to the out-of-service time data.For this reason, the structure scheme is to make M identical software carry out software reliability test simultaneously, and the failure behaviour of each software all failure behaviour with the actual software of testing is identical.So, the method of Fen Buing (being the definition of unreliable degree function) rule of thumb, the ratio that the software number that lost efficacy and M take place during to t constantly is unreliable degree at this moment, just can obtain unreliable degree thus with the change curve of out-of-service time, and it is defined as sample statistic.For the test coverage data, principle is the same.Concrete steps are as follows:
The concrete probability distribution of being obeyed separately according to the out-of-service time that is obtained in the step 2 and test coverage, random sampling produces has the emulation out-of-service time data and the emulation testing coverage data of identical statistical law with former data, merge back acquisition expansion out-of-service time data and expand the test coverage data with original out-of-service time and test coverage data, the out-of-service time data are after expanding
Expanding back test coverage data is
Wherein M is sample size after expanding, M 〉=N,
Then, adopt that the method construct of empirical distribution function expands the out-of-service time-test coverage-unreliable line of writing music of unreliable write music line and expansion.At last, according to these two curves, earlier unreliable degree be multiply by total accumulative total failure number and be converted into corresponding accumulative total failure number, the accumulative total failure number data that obtain expanding
Can construct the three-dimensional curve of out-of-service time, test coverage and the accumulative total failure number of expansion, the data point set on this curve
Be the test data of expansion.
Step 4: use Grey models GM (1,1) that data are handled.
Handle the advantage of small sample data in order to utilize gray system theory, and speed of convergence and the expectation precision of the regularity of enhancing data to improve neural network, use Grey models GM (1,1) the accumulative total failure number data of the expansion of step 3 gained is handled, obtained the expectation sequence of accumulative total failure number data
So just can obtain the expansion test data of rule
Step 5: set up the generalized regression artificial neural network.
At first determine the input and output of network.With out-of-service time t
iWith test coverage C
iAs the input vector of network, add up failure number N accordingly
iAs object vector, set up the generalized regression nerve networks of 2 input blocks, 1 output unit, determine that rule of thumb the initial parameter value of network is (when training network, to adjust the value of network parameter as required, the initial parameter value of general networking is got the acquiescence initial value and is got final product, and for example the initial value of the network parameter SPREAD of GRNN can be taken as 0.01).
Step 6: training generalized regression nerve networks.
The expansion test data of laws of use
The neural network of being set up is trained.At this moment, the input vector set is
Corresponding object vector set is
In order to reject the singular value in the training sample, accelerate the speed of convergence of network, input vector and object vector are carried out normalized, fan-in network is trained it then.Generalized regression nerve networks has only a network parameter SPREAD (expansion rate), in order to make the network mapping principle of learning data better, a cross validation (Leave-One-Out Cross Validation) method training network is stayed in employing, need carry out the training of M wheel altogether.At first in the cross-training process that each is taken turns, use the round-robin method according to network convergence speed and error precision requirement in the training, in the empirical solution space, constantly adjust the value of network parameter SPREAD, up to the neural network that obtains optimal effectiveness, promptly this moment, network reached minimum in predicted value on the verification msg collection and the square error between the expectation value.Then, in M neural network of this M wheel cross-training gained, be chosen at the network of predicted value on the verification msg collection and the square error minimum between the expectation value as resulting optimal network of this step.At last, judge that the precision of prediction whether this optimal network reaches expection (for example requires, in the predicted value on the verification msg collection and the relative error between the expectation value less than 5%), if the accuracy requirement that reaches expection then with this optimal network as the neural network that trains; Otherwise the structure of needs adjustment neural network or the scope in parameter empirical solution space also rebulid and neural network training.
Step 7: utilize the neural network that trains to estimate.
The out-of-service time t at the some place that needs are estimated
0With test coverage C
0As the input vector fan-in network, network output valve N
0Be the predicted value of corresponding accumulative total failure number.
Embodiment:
Two data sets collecting in the sensor management project in the inertial guidance system of publishing of subsidizing by NASA of embodiment.Each data item of each data centralization is estimated (being piece test coverage, branch testing coverage rate, c-use coverage rate and p-use coverage rate) by implementation of test cases number, accumulative total failure number and four kinds of coverage rates and is formed.Wherein data set 1 is as shown in table 1:
Table 1 test data statistical form
For the precision of research model, preceding 13 data of this data set are set up model as the known sample data, last data is as the expected sample data of the expectation extrapolability of investigating model.
1, collects test data.
With preceding 13 data in the table 1 as the test data collected in the test.
2, determine the distribution of out-of-service time and test coverage data.
Regard out-of-service time in the test data and test coverage data as the one-dimensional random sequence respectively, at first determine the distribution pattern of each random series with probability graph method.The probability graph of six kinds of possible distribution patterns of each data sequence such as Fig. 2-shown in Figure 6, described six kinds of possible distribution patterns are exponential distribution, The extreme value distribution, lognormal distribution, normal distribution, rayleigh distributed, Weibull distribution.In Fig. 2, be followed successively by exponential distribution, The extreme value distribution, lognormal distribution, normal distribution, the rayleigh distributed of out-of-service time sequence, the probability graph of Weibull distribution from subgraph (a) to subgraph (f).(when the accurate out-of-service time is not easy to determine, in this area, generally can use the test case number of execution to substitute, in embodiment, use the test case number sequence of carrying out to be listed as to substitute the out-of-service time sequence.) as shown in Figure 2, the degree minimum of the quantile track deviation from linearity of out-of-service time sequence in the lognormal distribution probability graph is so by probability graph method, what can think out-of-service time sequence obedience is lognormal distribution.In like manner, four kinds of test coverage sequences make to use the same method determines its distribution pattern by these four figure of Fig. 3~Fig. 6 respectively, and what can obtain four kinds of test coverage sequences obediences all is The extreme value distribution.After determining these two kinds of distribution patterns, use least square method to determine the distribution parameter of distribution that each sequence is obeyed, obtain the distribution parameter μ of out-of-service time and being estimated as of σ (μ being a location parameter, the σ scale parameter):
Wherein μ and σ are respectively the location parameter and the scale parameter of lognormal distribution, and promptly its probability density function is:
The distribution parameter μ of piece test coverage, branch testing coverage rate, c-use coverage rate and p-use coverage rate
I1And σ
I1Estimated value be respectively:
μ wherein
I1And σ
I1Be respectively the location parameter and the scale parameter of each The extreme value distribution.The probability density function that is piece test coverage, branch testing coverage rate, c-use coverage rate and p-use coverage rate is respectively:
3, use improved Bootstrap method expanding data.
Concrete probability density function according to out-of-service time that is obtained and test coverage
Carry out the random sampling generation respectively and have the emulation out-of-service time data and the test coverage data of identical statistical law, merge the back with raw data and obtain the out-of-service time data of expansion and the test coverage data of expansion with former data:
Wherein M for expand the back sample size (M according to circumstances sets, and usually greater than 20, and satisfies M 〉=N),
Each
Comprise four kinds of test coverages and estimate, promptly
Here M is taken as 50.
Then, adopt the method for empirical distribution function construct respectively expansion the out-of-service time-unreliable line and the test coverage-unreliable line of writing music of writing music.Empirical distribution function is:
Wherein, F (t) is an empirical distribution function (also can be regarded as unreliable degree function in this embodiment), the software number of n (t) for losing efficacy constantly to t.The out-of-service time-unreliablely write music line as shown in Figure 7, test coverage-unreliable is write music line as shown in Figure 8.For the two-dimentional relation curve of draw test coverage and unreliable degree, the mean value of getting four kinds of test coverages is as the value on the test coverage dimension in Fig. 8, and the value on the corresponding unreliable degree dimension is constant.
At last, according to expand the out-of-service time-test coverage-unreliable line of writing music of unreliable write music line and expansion, can construct the three-dimensional curve of out-of-service time, test coverage and the accumulative total failure number of expansion.The mean value of getting four kinds of test coverages as shown in Figure 9 is as the value on the test coverage dimension.
4, use Grey models GM (1,1) that data are handled.
Use Grey models GM (1,1) that the data of the accumulative total failure number of the expansion of gained are handled, obtain the predicted value sequence of the gray model of accumulative total fail data:
As shown in figure 10.Can see gray model
The original formed curve of expansion accumulative total failure number sequence of the formed curve ratio of predicted value sequence will smoothly present
Clear regularity, this helps the study and the convergence of neural network model, thereby improves precision of prediction.5, set up the generalized regression artificial neural network.
With out-of-service time t
iWith test coverage C
i=(c
I1, c
I2, c
I3, c
I4) as the input vector of network, add up failure number N accordingly
iAs object vector,,, rule of thumb determine the initial parameter value (being taken as 0.01 herein) of network so what set up is the generalized regression nerve networks of 5 input blocks, 1 output unit because test coverage comprises four kinds of coverage rates and estimates among the embodiment.
6, training generalized regression nerve networks.
With input vector C
iWith object vector N
iCarry out normalized, fan-in network is trained it then.Adopt the method training network of cross validation, and with the round-robin method according to the training in network convergence speed and error precision requirement, the value of constantly adjusting network parameter SPREAD in the empirical solution space is (among the embodiment in empirical solution space (0,10) adjust the value of SPREAD in), up to the neural network that obtains optimal effectiveness, promptly this moment, network reached minimum in predicted value on the verification msg collection and the square error between the expectation value.Herein, the value that obtains the expansion rate SPREAD of network is 0.1210.
7, utilize the neural network that trains to estimate.
The out-of-service time t at the some place that needs are estimated
0With test coverage C
0, promptly the out-of-service time of last data item of data centralization and test coverage be as the input vector fan-in network, network output valve N
0Be the predicted value of corresponding accumulative total failure number.Total expectation result as shown in figure 11.
Fetch data and concentrate the true accumulative total failure number of preceding 13 data be used to set up model and the square error MSE between the model predicted value accordingly as the index of evaluation model the capability of fitting of given data:
Wherein, n is the number of known sample data, y
iBe the actual value of data,
Match value for model.Get the index of the true accumulative total failure number of last data and the average relative error E ability that extrapolation is estimated as evaluation model between the corresponding model predicted value,
Wherein, m is the number of expected sample data, y
iBe the actual value of data, y
iPredicted value for model.
The inventive method is expanding data or do not add test coverage information or be not combined the method for gray theory not with using GRNN, simultaneously expanding data or do not add test coverage or be not combined the expectation effect of method under this data set of gray theory as shown in table 2 with common use BPNN and not:
Table 2 expectation result's error ratio
The every of table 2 can find out, what the present invention proposed has successfully utilized the advantage of GRNN based on the small sample Software-Reliability Prediction Method of grey generalized regression nerve networks, fully gathered test coverage information, avoided problem that small sample brings aspect the match of sample data and expectation, all obtaining good effect:
(1) the match mean square error MSE to the known sample data is 0.0627, the average relative error E that estimates of extrapolating is 0 (because the accumulative total failure number of last two data of this data set all is 9, rule is simpler, neutral net can be grasped its rule with comparalive ease, thereby can obtain higher expectation precision. ), keeping high-precision extrapolation to estimate that other several methods of match MSER hang down one to two order of magnitude on the basis of ability.
(2) the match mean square error MSE that calculates behind the improved Bootstrap method expanding data that uses the present invention to propose is 0.0627, to improve its match mean square error of Bootstrap method expanding data MSE be 0.1169 and do not use, and fitting effect has promoted 46.36%.
(3) method proposed by the invention does not consider that the match mean square error MSE of test coverage information calculations then increases to 0.3473 owing to considered that its match mean square error of test coverage information MSE only is 0.0627.
(4) the BP neutral net is all bigger to the match mean square error MSE of this data set, and the average relative error E that extrapolation is estimated is more than 10%, further illustrate the BP neutral net and itself have defective when processing the small sample data, the availability of the model that obtains with the BP neutral net is all very undesirable.
Claims (3)
1. based on the small sample software reliability method for predicting of grey generalized regression nerve networks, it is characterized in that, comprise following step:
Step 1: collect test data;
By the software reliability growth test, collect test data
t
iBe the out-of-service time, C
iBe test coverage, N
iBe the accumulative total failure number, i=1 ..., N, N are the number of the test data collected;
Step 2: determine the distribution of out-of-service time data and test coverage data;
Regard out-of-service time in the test data and test coverage as the one-dimensional random sequence respectively, at first determine the probability distribution type of each one-dimensional random sequence with probability graph method, after determining the probability distribution type, use least square method to determine that each one-dimensional random sequence obeys the distribution parameter of distribution separately;
Step 3: use improved Bootstrap method expanding data;
The concrete probability distribution of being obeyed separately according to out-of-service time that step 2 obtained and test coverage, random sampling produces has the emulation out-of-service time data and the emulation testing coverage data of identical statistical law with former data, emulation out-of-service time data and emulation testing coverage data expand out-of-service time data and expansion test coverage data with original out-of-service time and test coverage data merging back acquisition respectively, and the out-of-service time data are after expanding
Expanding back test coverage data is
Wherein M is sample size after expanding, M 〉=N,
Then, adopt that the method construct of empirical distribution function expands the out-of-service time-test coverage-unreliable line of writing music of unreliable write music line and expansion, at last, according to these two curves, earlier unreliable degree be multiply by total accumulative total failure number and be converted into corresponding accumulative total failure number, the accumulative total failure number data that obtain expanding
The three-dimensional curve of the out-of-service time that structure expands, test coverage and accumulative total failure number, the data point set on the three-dimensional curve
Be the test data of expansion;
Step 4: use Grey models GM (1,1) that data are handled;
Use Grey models GM (1,1) that the accumulative total failure number data of the expansion of step 3 gained are handled, the gray model that obtains accumulative total failure number data is estimated sequence
Obtain the expansion test data of rule
Step 5: set up the generalized regression artificial neural network;
At first determine the input and output of network, with out-of-service time t
iWith test coverage C
iAs the input vector of network, add up failure number N accordingly
iAs object vector, set up the generalized regression nerve networks of 2 input blocks, 1 output unit, rule of thumb determine the initial parameter value of network;
Step 6: training generalized regression nerve networks;
The expansion test data of laws of use
The neural network of being set up is trained, and the input vector set is
Corresponding object vector set is
Input vector and object vector are carried out normalized, and fan-in network is trained it then, adopts and stays a cross validation method neural network training, need carry out the training of M wheel altogether;
Step 7: utilize the neural network that trains to estimate;
The out-of-service time t at the some place that needs are estimated
0With test coverage C
0As the input vector fan-in network, network output valve N
0Be the predicted value of corresponding accumulative total failure number.
2. the small sample software reliability method for predicting based on the grey generalized regression nerve networks according to claim 1 is characterized in that, in the described step 6, the initial parameter value of neural network is the acquiescence initial value.
3. the small sample software reliability method for predicting based on the grey generalized regression nerve networks according to claim 1, it is characterized in that, stay a cross validation method neural network training to be specially in the described step 6, at first in the cross-training process that each is taken turns, use the round-robin method according to network convergence speed and error precision requirement in the training, in the empirical solution space, constantly adjust the value of network parameter expansion rate, up to the neural network that obtains optimal effectiveness, promptly this moment, network approached 0 in predicted value on the verification msg collection and the square error between the expectation value; Then, be chosen at the network of predicted value on the verification msg collection and the square error minimum between the expectation value in M the neural network of M wheel cross-training gained as resulting optimal network; At last, judge whether this optimal network reaches the precision of prediction requirement of expection, if the accuracy requirement that reaches expection then with this optimal network as the neural network that trains; Otherwise the structure of needs adjustment neural network or the scope in parameter empirical solution space also rebulid and neural network training.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106024533A CN102073586B (en) | 2010-12-23 | 2010-12-23 | Gray generalized regression neural network-based small sample software reliability prediction method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106024533A CN102073586B (en) | 2010-12-23 | 2010-12-23 | Gray generalized regression neural network-based small sample software reliability prediction method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102073586A true CN102073586A (en) | 2011-05-25 |
CN102073586B CN102073586B (en) | 2012-05-16 |
Family
ID=44032132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010106024533A Expired - Fee Related CN102073586B (en) | 2010-12-23 | 2010-12-23 | Gray generalized regression neural network-based small sample software reliability prediction method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102073586B (en) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294601A (en) * | 2013-07-03 | 2013-09-11 | 中国石油大学(华东) | Software reliability forecasting method based on selective dynamic weight neural network integration |
CN103678855A (en) * | 2012-09-26 | 2014-03-26 | 无锡南理工科技发展有限公司 | Model evaluation method based on multiple-index-dimension composite distance |
CN104679636A (en) * | 2013-11-28 | 2015-06-03 | 中国移动通信集团公司 | System reliability test method and device |
CN105653871A (en) * | 2016-01-06 | 2016-06-08 | 电子科技大学 | Symbolic multi-quality-characteristic analysis method based on relative entropy and grey relational degree |
CN106125714A (en) * | 2016-06-20 | 2016-11-16 | 南京工业大学 | Failure rate prediction method combining BP neural network and two-parameter Weibull distribution |
CN107329402A (en) * | 2017-07-03 | 2017-11-07 | 湖南工业大学 | The control method that a kind of combined integral link is combined with PPI controller algorithm |
CN108647186A (en) * | 2018-04-17 | 2018-10-12 | 大连理工大学 | Based on the self-service small sample estimation of test data method with Uncertainty number of ash |
CN108734304A (en) * | 2018-05-31 | 2018-11-02 | 阿里巴巴集团控股有限公司 | A kind of training method of data model, device and computer equipment |
CN108763828A (en) * | 2018-06-21 | 2018-11-06 | 哈尔滨工业大学 | A kind of Small Sample Database model verification method based on statistical analysis |
CN109272344A (en) * | 2018-08-07 | 2019-01-25 | 阿里巴巴集团控股有限公司 | Model training method and device, data predication method and device, server |
CN109583039A (en) * | 2018-11-07 | 2019-04-05 | 中国航空工业集团公司西安飞机设计研究所 | A kind of extreme small sample reliability growth test design method |
CN109635766A (en) * | 2018-12-20 | 2019-04-16 | 中国地质大学(武汉) | The face of convolutional neural networks based on small sample is taken pictures Work attendance method and system |
CN109800866A (en) * | 2017-11-16 | 2019-05-24 | 北京航空航天大学 | A kind of reliability growth forecast method based on GA-Elman neural network |
CN110532723A (en) * | 2019-09-06 | 2019-12-03 | 北京航空航天大学 | A kind of turbine disk multi-invalidation mode reliability optimization method based on EGRA |
CN112035338A (en) * | 2020-07-10 | 2020-12-04 | 河海大学 | Stateful deep neural network coverage rate calculation method |
CN112712163A (en) * | 2020-12-25 | 2021-04-27 | 中国科学院软件研究所 | Coverage rate-based neural network effective data enhancement method |
WO2024125564A1 (en) * | 2022-12-14 | 2024-06-20 | 赛箔(上海)智能科技有限公司 | Method, apparatus and device for constructing drug sensitivity prediction model sample |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1420344A2 (en) * | 2002-11-13 | 2004-05-19 | Imbus Ag | Method and device for prediction of the reliability of software programs |
CN1667587A (en) * | 2005-04-11 | 2005-09-14 | 北京航空航天大学 | Software reliability estimation method based on expanded Markov-Bayesian network |
-
2010
- 2010-12-23 CN CN2010106024533A patent/CN102073586B/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1420344A2 (en) * | 2002-11-13 | 2004-05-19 | Imbus Ag | Method and device for prediction of the reliability of software programs |
CN1667587A (en) * | 2005-04-11 | 2005-09-14 | 北京航空航天大学 | Software reliability estimation method based on expanded Markov-Bayesian network |
Non-Patent Citations (2)
Title |
---|
《北京航空航天大学学报》 20081130 李海峰等 基于灰色系统理论的软件可靠性综合评价框架 1261-1265 1-3 第34卷, 第11期 2 * |
《计算机工程与应用》 20091231 付剑平等 基于模糊综合评价的软件测试性度量 69-71,122 1-3 第45卷, 第27期 2 * |
Cited By (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103678855A (en) * | 2012-09-26 | 2014-03-26 | 无锡南理工科技发展有限公司 | Model evaluation method based on multiple-index-dimension composite distance |
CN103294601A (en) * | 2013-07-03 | 2013-09-11 | 中国石油大学(华东) | Software reliability forecasting method based on selective dynamic weight neural network integration |
CN103294601B (en) * | 2013-07-03 | 2016-05-04 | 中国石油大学(华东) | A kind of based on the integrated software reliability prediction method of selective changeable weight neutral net |
CN104679636A (en) * | 2013-11-28 | 2015-06-03 | 中国移动通信集团公司 | System reliability test method and device |
CN105653871A (en) * | 2016-01-06 | 2016-06-08 | 电子科技大学 | Symbolic multi-quality-characteristic analysis method based on relative entropy and grey relational degree |
CN105653871B (en) * | 2016-01-06 | 2018-09-04 | 电子科技大学 | Symbolism multimass characteristic analysis method based on relative entropy and grey relational grade |
CN106125714A (en) * | 2016-06-20 | 2016-11-16 | 南京工业大学 | Failure rate prediction method combining BP neural network and two-parameter Weibull distribution |
CN107329402A (en) * | 2017-07-03 | 2017-11-07 | 湖南工业大学 | The control method that a kind of combined integral link is combined with PPI controller algorithm |
CN109800866B (en) * | 2017-11-16 | 2020-12-29 | 北京航空航天大学 | Reliability increase prediction method based on GA-Elman neural network |
CN109800866A (en) * | 2017-11-16 | 2019-05-24 | 北京航空航天大学 | A kind of reliability growth forecast method based on GA-Elman neural network |
CN108647186A (en) * | 2018-04-17 | 2018-10-12 | 大连理工大学 | Based on the self-service small sample estimation of test data method with Uncertainty number of ash |
CN108647186B (en) * | 2018-04-17 | 2021-05-28 | 大连理工大学 | Small sample test data estimation method based on grey self-help and unknown rational number |
CN108734304A (en) * | 2018-05-31 | 2018-11-02 | 阿里巴巴集团控股有限公司 | A kind of training method of data model, device and computer equipment |
CN108734304B (en) * | 2018-05-31 | 2022-04-19 | 创新先进技术有限公司 | Training method and device of data model and computer equipment |
CN108763828A (en) * | 2018-06-21 | 2018-11-06 | 哈尔滨工业大学 | A kind of Small Sample Database model verification method based on statistical analysis |
CN108763828B (en) * | 2018-06-21 | 2022-07-08 | 哈尔滨工业大学 | Small sample data model verification method based on statistical analysis |
CN109272344A (en) * | 2018-08-07 | 2019-01-25 | 阿里巴巴集团控股有限公司 | Model training method and device, data predication method and device, server |
CN109583039A (en) * | 2018-11-07 | 2019-04-05 | 中国航空工业集团公司西安飞机设计研究所 | A kind of extreme small sample reliability growth test design method |
CN109635766A (en) * | 2018-12-20 | 2019-04-16 | 中国地质大学(武汉) | The face of convolutional neural networks based on small sample is taken pictures Work attendance method and system |
CN110532723A (en) * | 2019-09-06 | 2019-12-03 | 北京航空航天大学 | A kind of turbine disk multi-invalidation mode reliability optimization method based on EGRA |
CN112035338A (en) * | 2020-07-10 | 2020-12-04 | 河海大学 | Stateful deep neural network coverage rate calculation method |
CN112035338B (en) * | 2020-07-10 | 2022-01-28 | 河海大学 | Coverage rate calculation method of stateful deep neural network |
CN112712163A (en) * | 2020-12-25 | 2021-04-27 | 中国科学院软件研究所 | Coverage rate-based neural network effective data enhancement method |
WO2024125564A1 (en) * | 2022-12-14 | 2024-06-20 | 赛箔(上海)智能科技有限公司 | Method, apparatus and device for constructing drug sensitivity prediction model sample |
Also Published As
Publication number | Publication date |
---|---|
CN102073586B (en) | 2012-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102073586B (en) | Gray generalized regression neural network-based small sample software reliability prediction method | |
Zhong et al. | Super efficiency SBM-DEA and neural network for performance evaluation | |
Karasu et al. | A new forecasting model with wrapper-based feature selection approach using multi-objective optimization technique for chaotic crude oil time series | |
Xu et al. | Composite quantile regression neural network with applications | |
Yu et al. | Data mining-assisted short-term wind speed forecasting by wavelet packet decomposition and Elman neural network | |
Zhu et al. | Gaussian mixture model coupled recurrent neural networks for wind speed interval forecast | |
Zhang et al. | Forecasting of turbine heat rate with online least squares support vector machine based on gravitational search algorithm | |
Lee et al. | Forecasting nonlinear time series of energy consumption using a hybrid dynamic model | |
Westermann et al. | Using a deep temporal convolutional network as a building energy surrogate model that spans multiple climate zones | |
Chen et al. | A meta-model-based optimization approach for fast and reliable calibration of building energy models | |
Toro et al. | A hybrid artificial intelligence model for river flow forecasting | |
Wang et al. | Chaotic time series method combined with particle swarm optimization and trend adjustment for electricity demand forecasting | |
Yang et al. | A joint optimization method on parameter and structure for belief-rule-based systems | |
CN110481536B (en) | Control method and device applied to hybrid electric vehicle | |
CN102063550A (en) | Intelligent design system of cold extrusion piece with machine intelligence involved design decision | |
Graening et al. | Shape mining: A holistic data mining approach for engineering design | |
Cheng et al. | Cash flow prediction for construction project using a novel adaptive time-dependent least squares support vector machine inference model | |
Zhang et al. | A rough set-based multiple criteria linear programming approach for the medical diagnosis and prognosis | |
CN102663495B (en) | Neural net data generation method for nonlinear device modeling | |
CN102222313A (en) | Urban evolution simulation structure cell model processing method based on kernel principal component analysis (KPCA) | |
CN104158840A (en) | Method for calculating node similarity of chart in distributing manner | |
Sangireddy et al. | Development of a surrogate model by extracting top characteristic feature vectors for building energy prediction | |
Sapnken et al. | Modeling energy-efficient building loads using machine-learning algorithms for the design phase | |
Efendi et al. | Maximum-minimum temperature prediction using fuzzy random auto-regression time series model | |
Kim et al. | Knowledge extraction and representation using quantum mechanics and intelligent models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120516 Termination date: 20121223 |