1. Field of the Invention
The present invention relates generally to the field of computer modeling. More specifically, the present invention relates to a system and method for developing proxy models for use in various applications, such as modeling credit and underwriting risk.
2. Related Art
In various fields of endeavor, computer models are powerful tools that can be used to simulate real-world events. In particular, computer models are often used in the financial sector to model risks of various kinds, such as credit and underwriting risks. Such models can be very computationally complex, and often require numerous input variables.
In the credit and risk modeling field (such as in connection with underwriting), clients often demand high-performance models which satisfy constraints including limited numbers of input variables, explainable scores, and robustness. To satisfy such constraints, it is extremely challenging to build high-performance models with a limited number of input variables. Moreover, in many business areas, high score reason codes are needed for non-linear models (such as neural network models, random forest models, or ensemble models). One example is a loan application where a reason for rejecting a loan must be clear, but some input fields/variables that would ordinarily be provided to a complex computer model are not allowed by law. Another example is insurance pricing where an insurance rate must be explainable.
There are existing ways to boost the performance of computer models, such as adaptive boosting and bagging. There are also existing ways to approximate reason codes using computer models, such as binning methods. However, there exists a need to develop simpler (proxy) models which can be used in place of complex models, can be used reliably with limited input variables, and produce results which approach or even meet the performance standards of complex computer models.
The present disclosure relates to a system and method for developing proxy models for computer systems. The proxy models are computationally less complex than existing models, can operate with a reduced number of input variables, and can be used in place of complex models in a variety of applications, such as for modeling credit and underwriting risks. The system includes a specially-programmed, proxy model development computer system and a plurality of computer models including a complex model, a simple model, and a proxy model each of which are trained and evaluated by the computer system. When performance of the proxy model is determined by the computer system to outperform performance of the simple model, and when performance of the proxy model approximates performance of the complex model, the system declares the proxy model sufficient for use in place of the complex model.
The foregoing features of the present disclosure will be apparent from the following Detailed Description of the Invention, taken in connection with the accompanying drawings, in which:
The present disclosure relates to a system and method for developing proxy models, as discussed in detail below in connection with
The system 10 includes a specially-programmed, proxy model development computer system 12, a plurality of computer models 14-18 including a complex model 14, a simple model 16, and a proxy model 18, and a training data set 20 (e.g., training dataset database). The proxy model 18 is less computationally-complex than the complex model 14, and both the complex model 14 and the simple model 16 are used by the computer system 12 to evaluate performance of the proxy model 18 and suitability for substituting the complex model 14 with the proxy model 18 in future modeling applications. As will be discussed in greater detail below, the computer system 12 trains the models 14-18 using training data in the training data set 20 (which could be stored on the computer system 12 or located remotely therefrom), and evaluates performance of each of the models 14-18. If the computer system 12 determines that the proxy model 18 meets or exceeds pre-defined performance criteria with respect to the complex model 14 and the simple model 16, the computer system 12 declares (e.g., communicates or displays to a user) the proxy model 18 sufficient for use in place of the complex model 14 (and/or automatically substitutes the complex model 14 with the proxy model 18).
In step 44, a determination is made as to whether the proxy model P outperforms the model S. This determination is made using the performance scores associated with models P and S. If a negative determination is made, step 50 occurs, wherein the system declares the proxy model P insufficient for use in place of the complex model C. Alternatively, if a positive determination is made in step 44, a second determination is made in step 46, wherein the system determines whether the proxy model P approximates model C. This determination is made using the performance scores associated with models P and C, and a suitable approximation test algorithm, such as the known Kolmogorov-Smirnoff (KS) test. If a negative determination is made, step 50 occurs, wherein the system declares the proxy model P insufficient for use in place of model C. Otherwise, if a positive determination is made in step 46, the system declares proxy model P sufficient for use in place of the complex model C. Thereafter, processing ends.
Although the foregoing description includes discussion of a simple model S, it is noted such a model is not required by the system. In other words, the proxy model could be developed straight from the complex model, such that the simple model would not be required. In such a circumstance, the complex model and proxy model would be trained, and scores for each calculated, as indicated above. Thereafter, using these scores, the system could determine whether the proxy model is suitable for substitution with the complex model.
It is noted that the proxy models, once developed and tested by the system could be used to discern reason codes (e.g., explanations) for model predictions, and/or for regulatory compliance. A reason code is an analytic code (e.g., numeric indicator) that indicates why a particular action/event occurred. An application of the proxy models developed can be used to generate a reason code. It is noted that the output of each of the models could be a number for each training observation (e.g., predicted probability of default).
It is noted that the system 10 could be used in connection with models of various types, such as ensemble models, random forest models, neural network models, etc. Additionally, both the proxy model P and simple model S discussed above could be simple linear models, and the complex model C could be a complex, non-linear model. Further, the proxy model development processes carried out by the system 10 could be described algorithmically as follows:
1. Assume there is a dataset with N training records and V variables, and there is a need to train a linear (simple) model with at most v variables (v<<V).
2. Train a more complex model that uses all the V variables and has much higher performance compared to the simple model, and call the vector containing the output scores of this model on the training set as T′ (N×1). This complex model can be an ensemble model of a variety of models with different variables. This model usually provides high performance since it has no constraints.
3. Train the simple linear model using only v variables, but replace the original target with T′.
By simply changing the target when training the model, a high-performance model is obtained while satisfying associated production constraints. This is achieved by leveraging the good performance of a complicated model with minor or no constraints, to produce the target for the proxy model.
As discussed above, the system of the present disclosure is useful in connection with credit and risk applications, such as underwriting where a high performance model is needed while satisfying constraints such as limited number of variables and clear reason codes. However, the system can be used in other applications, such as in any data mining problem with constraints on the model complexity and variable counts, or if a reason code is needed for the final predictions of the model. Further, credit card applicants, insurance applicants, loan applicants, market consumers, and collection agencies can utilize the system of the present disclosure to develop proxy models for use in these fields. Indeed, credit card issuers generally require high-performance simple linear models to comply with constraints such as law enforcements, internal rules, and high score reasons. Credit bureaus have similar requirements in production. As such, the system of the present disclosure can provide benefits to these entities by introducing a better model. Further, collection agencies can use the system to create a better policy, and insurance companies can adjust their pricing policies using the system. Moreover, general marketing analysts can utilize the system to generate better-explained models with improved performance.
Having thus described the system of the present disclosure in detail, it is to be understood that the foregoing description is not intended to limit the spirit or scope thereof. It will be understood that the embodiments of the present disclosure described herein are merely exemplary and that a person skilled in the art may make any variations and modification without departing from the spirit and scope of the disclosure. All such variations and modifications, including those discussed above, are intended to be included within the scope of the present disclosure. What is desired to be protected is set forth in the following claims.
This application claims priority to U.S. Provisional Patent Application No. 61/759,682 filed on Feb. 1, 2013, which is incorporated herein in its entirety by reference and made a part hereof.
Number | Date | Country | |
---|---|---|---|
61759682 | Feb 2013 | US |