Patent Publication Number: US-7725340-B2

Title: Ranking-based method for evaluating customer prediction models

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of and claims priority to pending U.S. application Ser. No. 11/456,663, filed Jul. 11, 2006. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention generally relates to evaluation of scoring models and, more particularly, to the use of ranking-based measures to evaluate the performance of regression models. The invention has particular application to evaluation of prediction models with regard to the ranking of customers and/or potential customers according to their potential to spend for goods and services. 
     2. Background Description 
     Evaluating prediction models of customers according to their potential to spend has been done through residual-based measures; i.e., the difference between the predicted and actual spending by some known customers. This approach suffers from two main drawbacks: (1) it is non-robust to outliers (for example, gross errors in the data used for evaluation), and (2) it is not the appropriate measure if the goal is just to identify the best prospective customers. 
     The standard approach to evaluating regression models on holdout data is through additive, residual-based loss functions, such as squared error loss or absolute loss. These measures are attractive from a statistical perspective as they have likelihood interpretations and because, from an engineering or scientific perspective, they often represent the “true” cost of the prediction errors. 
     Other approaches to regression model evaluation include Regression Error Curves, where the model is evaluated according to its error rate at different levels of “error tolerance”; and using medians of the absolute deviations (MAD), rather than their mean, as the error measure:
 
MAD=Median(| r   1   |, . . . , |r   n |)  (1)
 
     There are many companies with relatively small wallet size and a few companies with very large wallet size. Therefore, evaluation measures such as mean squared error and mean absolute error can be greatly influenced by a small subset of companies that have very large wallets and for which the models are more likely to make larger absolute errors. On the other hand, measures such as median squared error can completely ignore the performance of the model on the companies with large IT wallet size, which are usually the most important customers. An approach that is often used to mitigate the effects of a skewed distribution (especially in modeling) is to transform the numbers to a logarithmic scale. This approach, however, is not adequate for the evaluation of prediction models, since log-dollars is a unit that does not have a clear financial meaning and, therefore, cannot be used in conjunction with other financial variables such as budget and costs. 
     SUMMARY OF THE INVENTION 
     In an exemplary embodiment of the present invention, there is provided a method for identifying target customers and/or potential customers that have the largest spending budgets. 
     In another exemplary embodiment of the present invention, there is provided a method for evaluation that is more robust to gross errors in the data used for evaluation than the residual-based evaluation methods. 
     According to the invention, there is provided a method for evaluating customer prediction models that enables an organization to more accurately target customers and/or potential customers for sales and marketing efforts. This evaluation method considers various models that have generated customer prediction data. By evaluating the models (m 1 , . . . , m k ), the user can have improved confidence in the targeting of the particular customers. Furthermore the evaluation can be done on a single model (ŷ=m(x)) to verify the ranking of customers and/or potential customers according to their potential to spend. The invention is intended to provide the “best” set of target customers through the use of ranking-based measures, which evaluate the performance of the model m(x) by sorting the predicted customer spending from “small” to “large”. “Best” can be defined in many ways but may include those customers that have the largest potential spending budget which is also referred to as “wallet size”. 
     The invention provides a computer-implemented ranking-based method for evaluating regression models by obtaining predictions ŷ from one or more models to be evaluated on a test set of customers for which the true value y of the quantity of interest has been observed. This test set resides in an electronic database. The test set is sorted in increasing order such that “large” corresponds to one of a plurality of customers and/or potential customers with largest perceived spending budget, and “small” corresponds to one of a plurality of customers and/or potential customers with smallest perceived spending budget. All models are applied to the customer data from the test set and predictions for the spending for each model and customer are obtained. The predictions are converted into ranks and stored for each model in one or more electronic databases as a model ranking table. The number of ranking order switches relative to the ranking of the observed customer spending is calculated for each model. Ranking order switches are defined as those changes in ranking position of the prediction relative to the order of the true observations y. A measure of the magnitude of erroneous ranking is calculated from a weighted sum of ranking order switches. The method then transforms the number of ranking switches and weighted sum of ranking order switches into a range of [−1, 1] wherein −1 corresponds to making all possible errors (inverse ranking) and 1 corresponds to a perfect model wherein said number of ranking switches has been transformed to represent a difference between a probability that the ranking of two customers and/or potential customers are in the same order versus the probability that two of the customers and/or potential customers are in different orders from the originally obtained rank. These measures are then normalizing into a range of [0,1] wherein 1 corresponds to perfect ranking and 0 corresponds inverse ranking. At this point, the variance of the measures of order switches is calculated and confidence intervals for each ranking measure are determined. Finally, the model performance table is updated with the ranking measures and their confidence intervals. These findings as well as graphical representations thereof can be provided to a domain expert, who will choose based on this information the best model m* of the one or more models evaluated. The predictions of ŷ=m*(x) are stored in the optimal prediction table. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The foregoing and other objects, aspects and advantages will be better understood from the following detailed description of a preferred embodiment of the invention with reference to the drawings, in which: 
         FIG. 1  is a flow diagram of the steps of the ranking-based method according to the present invention; 
         FIG. 2  is a visualization of a percent of correctly ranked pairs involving a particular prediction; 
         FIG. 3  is a visualization of the Area Under the Curve (AUC) values for the model being evaluated; and 
         FIG. 4  is the approximate lift curve of the cumulative rank. 
     
    
    
     DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT OF THE INVENTION 
     Referring now to the drawings, and more particularly to  FIG. 1 , there is shown a flow diagram of the steps of the invention method for performing ranking-based evaluation of the customer prediction models. 
     The method described here uses several relationships to evaluate the models and related model data. These relationships utilize the following variables:
         n is a size of a set of customers with known value of y,   x is a matrix of customer properties of length n   y is a vector of observations of the response (revenue) of length n   x i  is a matrix of are customer properties of length n after sorting by y   y i  is a vector of observations of the response (revenue) of length n   ŷ is a predicted response of the model y=m(x),   s i  is the predicted rank for customer of said plurality of customers T is a number of rank order switches, and/or potential customers,   i is the integer from between 1 and n indexing sorted customers, also corresponds to the order of observed value y   j is an integer indexing customers   R is a weighted sum of order switches,   {circumflex over (τ)} is a probability of ranking switch,   {circumflex over (ρ)} is a ranking correlation,   Ci is a number of observations that are concordant with observation i,   1−α is the confidence interval.       

     A database  101  contains customer data (x, y) where x are different properties of customers and y is the quantity of interest (e.g., the revenue generated by the customer). It should be noted that y is a vector and x is a matrix of length n and width equal to the number of different customer properties (also called features). The database also contains k models (m 1 , . . . , m k ) that for each customer can predict the quality of interest given x i  where ŷ i =m l (x). 
     In function block  110 , the customer data (x, y) are sorted in increasing order of y and stored in the database  101 . The resulting sorted customer data (x i , y i ) has the property y i &gt;y j  if i&lt;j for i=1, . . . , n customers. 
     In function block  111 , all models are applied to the sorted customer properties x to obtain predictions ŷ li =m l (x i ) for all customers i from all models  1 . In function block  112 , calculations are made for each model l, the respective predicted rank r l  of the predictions ŷ l . Note that each r l  is a vector of length n and that the order of the entries in vector r still reflects the order of the true value y. For example, if there are three customers with ordered revenue values $3, $15, $57 for which the model l prediction revenue values: $5.00, $100 and $0, the predicted ranking would be r=2, 3, and 1. Formally, r i  is the rank of customer and/or potential customer i in this order:
 
 s   i   =|{j≦n|ŷ   i   ≦ŷ   j }|
 
     The invention considers two ranking-based evaluation measures and their interpretations (e.g., ranking order entries in model ranking table, etc.). Function block  113  calculates for each model the number of ranking order switches:
 
T=Σ i&lt;j 1{s i &gt;s j }  (2)
 
and the weighted sum of order switches:
 
 R=Σ   i&lt;j ( j−i )1{ s   i   &gt;s   j }  (3)
 
The first measure simply counts how many of the pairs in the test data are ordered incorrectly by the model m(x). The second measure also considers these incorrect orderings, but weighs them by the difference in their model ranks, that is, a measure of the magnitude of error being committed. The results of each of these steps are stored electronically in the system database  101 .
 
     In function block  114 , the ranks are transformed using resealing equations to put them into the range [−1, 1], where 1 corresponds to perfect model performance (T,R=0) and −1 corresponds to making all possible errors, thus attaining perfect reverse ranking. It is easy to verify that max(T)=n(n−1)=2, max(R)=n(n−1)(n+1)=6. The resealing equations are: 
     
       
         
           
             
               
                 
                   
                     τ 
                     ^ 
                   
                   = 
                   
                     1 
                     - 
                     
                       
                         4 
                         ⁢ 
                         T 
                       
                       
                         n 
                         ⁡ 
                         
                           ( 
                           
                             n 
                             - 
                             1 
                           
                           ) 
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   4 
                   ) 
                 
               
             
             
               
                 
                   
                     ρ 
                     ^ 
                   
                   = 
                   
                     1 
                     - 
                     
                       
                         12 
                         ⁢ 
                         R 
                       
                       
                         
                           n 
                           ⁡ 
                           
                             ( 
                             
                               n 
                               - 
                               1 
                             
                             ) 
                           
                         
                         ⁢ 
                         
                           ( 
                           
                             n 
                             + 
                             1 
                           
                           ) 
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   5 
                   ) 
                 
               
             
           
         
       
     
     These values are similar to Kendall&#39;s τ which measures the strength of the relationship between two variables and Spearman&#39;s rank correlation. The moments of {circumflex over (τ)} and {circumflex over (ρ)} under the relevant null assumptions (τ=0 and ρ=0, respectively) are calculated and a normal approximation gives a hypothesis testing methodology for the assumption of no correlation. For residual based measures, it is typically not possible to build confidence intervals without parametric assumptions and/or variance estimation. The non-parametric nature of {circumflex over (τ)} allows a general expression for its variance to be written as: 
                 Var   ⁡     (     τ   ^     )       =       8     n   ⁡     (     n   -   1     )         ⁢     (         π   c     ⁡     (     1   -     π   c       )       +     2   ⁢     (     n   -   2     )     ⁢     (       π   cc     -     π   c   2       )         )         ,         
where π c =E({circumflex over (τ)})=½+½τ and π cc  are two properties of the ranking function. This is then replaced with the sample means to obtain:
 
                     V   ⁢     a   ^     ⁢     r   ⁡     (     τ   ^     )         =         (     2     n   ⁡     (       n   _     -   1     )         )     2     ·   2   ·     (       2   ⁢       ∑   i     ⁢           ⁢     C   i   2         -       ∑   i     ⁢           ⁢     C   i       -         (       2   ⁢   n     -   3     )       n   ⁡     (     n   -   1     )         ·       (       ∑   i     ⁢           ⁢     C   i       )     2         )               (   6   )               
where
 
               C   i     =         ∑     j   &lt;   i       ⁢           ⁢     1   ⁢     {       y   i     &gt;     y   j       }         +       ∑     j   &gt;   i       ⁢           ⁢     1   ⁢     {       y   i     &lt;     y   j       }                 
is the number of observations that are “concordant” with observation i, that is, that their ranking relative to i in the model data agrees with the ranking by model scores (as plotted in  FIG. 3 ). Function block  114  also calculates the confidence intervals for the values of evaluation measure given its sample value (the non-null case), as they represent the uncertainty in the model evaluation based on a single test set. Since {circumflex over (τ)} is asymptomatically normal, a 1−α confidence interval for {circumflex over (τ)} is:
 {circumflex over (τ)}±Z 1−α/2 ·√{square root over (Vâr({circumflex over (τ)}))} 
     In function block  115 , three graphical representations of the ordered switches are constructed: (1) percent of correctly ranked pairs involving a particular prediction, (2) AUC as a function of cutoff position, and (3) Lift-curve of the cumulative rank. Examples of these graphical representations are shown respectively in  FIGS. 2 ,  3 , and  4 , respectively. 
     Starting from the largest model prediction m(x n ), function block  115  calculates in decreasing order for each observation x i  the percentage of correctly ranked pairs (y i , y j ) over all j≠i. The percentage of correct pairings as a function of the inverse rank is shown in  FIG. 2 . The area above the curve is the sum of the percent incorrectly ranked pairs, which is equal to 2 T/n(n−1). Therefore, the area under the curve equals {tilde over (τ)}. The dashed line corresponds to a locally optimal performance. A perfect model would show a constant performance of 100% correctly ranked pairs. But given that the model is not perfect and makes predictions that are sometimes too large or too small, even a perfect prediction for a particular observation with m(x i )=y i  will have a number of inversely ranked pairs due to errors of the other predictions. The upper limit of the performance for a given prediction, keeping everything else constant, is therefore not 100% but determined by the model performance of predictions around it. The interpretation of the locally optimal performance is the highest achievable percentage of correctly ranked pairs if m (x i ) could be placed arbitrarily, given all other model predictions. 
     The performance in a particular region of the graph is characterized by two properties of the plot, 1) the distance of the local optimum from the 100% line, and 2) the distance of the actual performance from the local optimum. A particular region with a performance that on average remains very close to the local optimum has a nearly perfect ranking and is only disturbed by bad predictions that were either larger or smaller than the predictions of the region. 
     For  FIG. 3 , the original regression results are transformed into n−1 classification results, where the observations are discretized into a binary class variable c (i) (y j )=1 iff y j ≧y i  for all possible cutoffs 1&lt;i&lt;n. 
     For each classification c (i)  the model performance is evaluated using the area under the ROC curve (AUC,) ( FIG. 3 ). The probabilistic interpretation of the AUC is the probability that a pair of observations with opposite class labels is ranked correctly. Since AUCi only considers pairs with different class labels under cutoff i, the number of pairs used to calculate AUCi is equal to i·(n−i) and the number of incorrectly ranked pairs under this cutoff is therefore:
 
(1−AUCi)i·(n−i).
 
     In function block  115  of  FIG. 1 , the total number of times a pair of observations will be assigned opposite class labels across all cutoffs is equal to the rank difference; i.e., a neighboring pair (k, k+1) receives opposite class labels only if the cutoff is equal to k whereas the extreme pair (1, n) will have opposite classes for all n−1 cutoffs. Given the definition in Equation (3) this implies that:
 
Σ i (1−AUC i )· i ·( n− 1)= R  
 
     Since each AUCi is rescaled by a different factor i·(n−i), a graph of the AUCi as a function of the cutoff i would not have an area equal to {tilde over (ρ)}. In order to achieve a direct correspondence with {tilde over (ρ)}, i·(n−i) units are allocated to AUCi by rescaling the x-axis accordingly.  FIG. 3  shows such a transformation of the x-axis and has an area under the curve of {tilde over (ρ)}. 
     The plot in  FIG. 4  is very close in spirit to a lift curve. After sorting the model predictions in decreasing order, the cumulative inverse rank of:
 
 p   i =Σ j=1   i ( n−s   j +1)
 
is plotted for increasing cutoffs i in percent. Using the inverse rank emphasizes the model performance on the largest predictions that is shown in the bottom left of the graph. The model performance is bounded above by the optimal ranks
 
 p   i =Σ j=1   i ( n−j+ 1)
 
and below by the cumulative worst (inverse) ranking w i =Σ j=1   i j.
 
The area under the model curve is given as Σ j=   n (n−i)(n−s i ) and can be shown to be equal to n 3 −n 2 −n−R+Σ i=1   n i 2 .
 
     Once all models have been evaluated through function blocks  111 - 115 , function block  116  stores the results and graphical representations in the system database  101 . This information is then displayed for the analyst at display block  117 . This display can be provided in any format (e.g., printed report, electronic display on a computer monitor, etc.) specified by the user. The analyst then evaluates the model based on the provided information in function block  118  and selects the model that can provide the suggested “best” list of potential customers for targeted sales and marketing efforts. The database is updated with these recommendations at function block  119  and a final report containing the optimal model and customer rankings is provided as the output  102  to be used by company personnel for targeted sales and marketing efforts. 
     While the invention has been described in terms of its preferred embodiment, those skilled in the art will recognize that the invention can be practiced with modification within the spirit and scope of the appended claims.