Background technology
Along with the development of telecommunication market competition, the leeway of customer selecting telecommunication product and telecommunications enterprise is increasing, and the contention to the client between the telecommunications enterprise is also more and more fierce.In the face of the fierce competitive market environment, traditional, the passive type service system of telecommunications enterprise can't satisfy client's needs, reply adversary challenge.Simultaneously, advantages such as traditional network, technology are difficult to draw back gap between telecommunications enterprise, can't form the competitive advantage of differentiation.Therefore, in order to cultivate and create the differential competition advantage that makes new advances under new Market Situation, telecommunications enterprise should be customer-centric, deep understanding client, and the guiding client keeps the client here.
Make up the attrition prediction model by the behavioural characteristic of client before net, prediction is about to the client of loss, the client who is about to run off is done keep; Also can pass through in the existing crm system, business personnel's customer visit behavior makes up forecast model to the influence of the success rate of signing a bill, and improves business personnel's customer visit level; Customer visit expense by sales force in the past makes up forecast model, prediction next stage expense budget; By residing stage of sale funnel and the relation of whether signing a bill, the required input of the marketing activity of prediction markets department etc.
The CN02822042.0 patient data excavates the present invention and provides a kind of data mining framework for excavating the high-quality structured clinical information.This data mining framework comprises data miner (350), and it excavates medical information according to the knowledge of the domain-specific that comprises in the knowledge base (330) from computerized patient record (CPR) (310).Data miner (350) comprises the parts that are used for from the CPR information extraction, makes up the parts (354) of all available evidence in time in the mode that principle is arranged, and the parts (356) of making reasoning from this anabolic process.The medical information that is excavated is stored among the structurized CPR (380), and this CPR can be a data warehouse.Above-mentionedly should not be used for the attrition prediction model that the behavioural characteristic of client before net make up to be stood according to the knowledge base data miner.
The BP NEURAL NETWORK network model is the forecast model of using always, and as scheming: the operation principle of BP network is that training mode is inputed to input layer, and reaches the hidden layer of back, transmits backward by connection weight, until the output that obtains network.In the network each neuron by ask the input weights and with come work through non-linear excited function passes result.
After obtaining the output of output layer, the desired value of itself and corresponding training mode is compared, obtain error amount by predefined network error function.Less than feasible value, then training is finished, otherwise error is adjusted the network connection weight by the gradient descent method as error.
The existing BP algorithm that directly uses is intuitively simple, realizes easily, but has following problem in actual applications:
1. the slow problem of convergence rate has limited the further utilization of this method.
2. the problem of local minimum point causes training error to descend, and can't be used to predict telecom client (loss).
Summary of the invention
The objective of the invention is at two top shortcomings, a kind of fast convergence rate is proposed and after training the little method of error, be used to predict telecom client (loss).
Technical solution of the present invention is: utilize the method after improving to set up model, the error propagation factor adopts: (desired output-reality output) * f (training last time is error in batches), wherein
The weights adjustment algorithm adopts:
In the formula, S (t) and S (t-1) are current time and previous moment
Value.Data are carried out normalized, and normalized formula is:
Above-mentioned model training model, training back error is little, re-uses model, predicts.
A kind of telecom client Forecasting Methodology of improving algorithm based on neural net, utilize the method after improving to set up model, promptly, modeling in conjunction with neural net speed constant model to model, at first adopt the BP neural net method to set up the customer churn model, then adopt the error propagation factor: (desired output-reality output) * f (training last time is error in batches), wherein
(λ is a constant); The weights adjustment algorithm adopts:
In the formula, S (t) and S (t-1) are current time and the previous moment error local derviations to weights, promptly
Value.Data are carried out normalized, and normalized formula is:
(x is an input parameter, x
MinBe minimum input parameter, x
MaxBe maximum input parameter, x ' is the later input parameter of normalization), with above-mentioned model training model; Then above-mentioned model is added correction factor, actual motion and analysis data by industrial reactor adopt optimized Algorithm to try to achieve the correction factor value, finally obtain model.
The present invention adopts neural net to set up model, and chooses connection weights between the neuron as the independent variable of model.
Client properties value after the employing normalization is as the input of model, and the normalization formula is:
(x is an input parameter, x
MinBe minimum input parameter, x
MaxBe maximum input parameter, x ' is the later input parameter of normalization).The present invention adopts the method for second order to adjust weights:
Add correction factor.The error propagation factor that relates in the weights adjustment adopts: (desired output-reality output) * f (training last time is error in batches)
Effect of the present invention is:
Experiment | Frequency of training | Consuming time | Error |
Experiment 1 | 12045 | 4 minutes 8 seconds | 0.000999939 |
Experiment 2 | 1169 | 28 seconds | 0.000992806 |
Experiment 3 | 186 | 4 seconds | 0.000985977 |
Illustrate: experiment 1 is the traditional BP algorithm
Experiment 2 is for adopting the experiment of the new error propagation factor
Experiment 3 is for adopting the experiment of the new error propagation factor and new weights adjustment algorithm
Demonstration:
According to the characteristics of BP algorithm gradient descent method, the correction of weights is directly proportional with the partial differential of error to weights in the BP algorithm, that is:
The weights correction is big more, and convergence rate is fast more, so investigate:
As seen, weights correction amount w
3[i] [j] and ε y[j] (1-y[j]) v[i] be directly proportional.ε y[j] (1-y[j]) also can arrive input layer with the form backpropagation successively of the error propagation factor.Obviously, as ε y[j] (1-y[j]) big more, then the weights correction is big more, and then convergence rate is fast more.Adopt in the BP neural network model, the node number of input layer is all 21, is the association attributes of customer churn, as: customer type, at the net time limit, shut down number of times, average telephone expenses ... etc.The hidden layer node number is l (l=2~20), and output layer node number is all 1.
Analyze:
1. in general, wish that learning rate is relevant with the output error of system, in the bigger early learning process of error, learning algorithm should adopt bigger learning rate to accelerate the convergence of training, and in the less later stage learning process of error, algorithm preferably adopts smaller learning rate to avoid the instability of network.But y[j] (1-y[j]) but do not change with error change, so can not well satisfy this requirement.
2. investigate y[j] (1-y[j] function, the value of y is (0,1), when y was 0.5, function was obtained maximum 0.25, that is to say: the output valve of concentrating when training sample is near 0.5 the time, and weights are adjusted the step-length maximum, and the speed of convergence compares comparatively fast.But the result of in fact most of sample data is near two, promptly 0 and 1, and cause convergence rate slower.
3. at ε y[j] (1-y[j]) in, just with reference to error current, not with reference to the sample batch error of training last time.Can consider with last time in batches sample error also as parameter
Conclusion:
3 factors above comprehensive, then select last time in batches sample error E replace f ' (y as independent variable with the function of f (E) form
o[j] investigates this function of f (E) in addition as the error propagation factor, can know: the codomain of E>0 and f (E) is (0.5,1), monotonic increase, promptly when last time training error big more, then f (E) is big more, the weights adjustment amount is big more indirectly.In addition, this function does not have the 2nd top problem, and whether the error propagation factor becomes 0.5 irrelevant with sample results.
Embodiment
Fig. 2 is input x quantity N
0, input layer is counted N
1, the number of hidden nodes N
2, the output layer node is counted N
3Be input as x[N
0], input layer is output as μ [N
1], hidden layer is output as v[N
2], output layer is output as y[N
3], desired output is d[N
3].
Each node be input as x
0[N
0], u
o[N
1], v
o[N
2], y
o[N
3]
Weights between the layer are: w
1[N
0] [N
1], w
2[N
1] [N
2], w
3[N
2] [N
3]
Embodiment
The first step: utilize the method after improving to set up model,
Second step: data are prepared, because the needs of neural network model carry out normalized to data, normalized formula is:
The 3rd step: training pattern
By 231 training, the training error of model is 0.000934405 can satisfy the error precision requirement.
The 4th step: use a model, predict.The 5th step: interpretation of result (seeing the following form)
| Do not run off at (family) | Run off at (family) |
Actual | 2628 | 195 |
Prediction | 2125 | 698 |
Predict successfully | 2109 | 179 |
Success rate prediction:
Not=(not attrition prediction successfully count+attrition prediction successfully counts)/client's sum
=(2109+179)/2823
=81%
Customer revenue prediction coverage rate:
=customer revenue number/total client's number
=698/2823
=24.7%
Table: