CROSS REFERENCE TO RELATED APPLICATIONSThe current application is a continuation application of co-pending U.S. patent application Ser. No. 10/720,792 (Attorney Docket RSW920030187US1), filed on Nov. 24, 2003, which is hereby incorporated by reference.
BACKGROUND OF THE INVENTION1. Field of the Invention
In general, the present invention provides a computerized data mining system, method and program product. Specifically, the present invention provides a network-based system for obtaining and executing a data mining model to provide business analytics.
2. Related Art
As businesses increasingly rely upon computer technology to perform essential functions, data mining is rapidly becoming vital to business success. Specifically, many businesses gather various types of data about the business and/or its customers so that operations can be gauged and optimized. Typically, a business will gather data into a database or the like and then utilize a data mining model to analyze the data.
Unfortunately, many companies are unable to flexibly integrate data analytics into business processes because of the complexity, expense, and incomprehensibility often involved. For example, in terms of infrastructure, companies often must invest substantial resources to build data warehouses, implement servers, hire “mining experts” and IT staff to use mining software, etc. In terms of processes, companies must then spend considerable time mapping and tuning between data and mining functions. To this extent, business analysts are typically required to possess the mining domain knowledge to choose the best mining algorithm and select appropriate data. In general, there can be more than twenty technically oriented parameters to tune and map. However, in reality, business analysts might know their data and business objectives well, but might not have an in-depth knowledge of the mining algorithm and/or the tuning parameters.
In fact, very few segments in industry have the resources (human and financial) to deploy sophisticated data analytics solutions such as data mining and scoring. Basically to deploy data mining techniques, companies have two choices: (1) acquire data mining tools and hire an industry specialist to prepare the environment and set up the tool to be used; or (2) hire external consultants to avoid the lack of skills, and large investments in infrastructure companies. Both cases are an extremely expensive proposition for most companies due to the complexity of data integration and the tight binding of complex models to the analytics process.
Heretofore, attempts have been made at automating the data mining process. No existing system, however, allows data mining models to be iteratively generated and/or executed in parallel. That is, any existing systems that provide for the generation or execution of data mining models do so one data mining model at a time.
In view of the foregoing, there exists a need for a computerized data mining system, method and program product. Specifically, a need exists for a system that can iteratively generate customized data mining models in parallel based on permutations of user data, user-provided business parameters and/or a set of model generation algorithms. A further need exists for a system that allows a user to select existing data mining models from a library of existing data mining models that is assembled based on the business parameters. Still yet, another need exists for a system that can execute multiple customized or existing data mining models in parallel.
SUMMARY OF THE INVENTIONIn general, the present invention provides a computerized data mining system, method and program product. Specifically, under the present invention, a data exploration system, a customized model system and an existing model system are provided. The data exploration system analyzes user data to identify statistical information such as data distribution, data relationships, data outliners and invalid or missing data values. The customized model center iteratively generates customized data mining models in parallel based on user data, user-provided business parameters and/or a set of model generation algorithms. The existing model system provides users with a library of existing data mining models, assembled based on the business parameters, from which they can chose one or more. In any event, any customized or existing data mining models selected can be run against the user data in parallel.
A first aspect of the present invention provides a computerized data mining system, comprising: a data exploration system for receiving and analyzing user data to provide statistical information about the user data; a customized model system for generating and ranking customized data mining models, and for executing a selected customized data mining model on the user data, wherein the customized data mining models are iteratively generated in parallel based on permutations of at least one of the user data, business parameters and a set of model generation algorithms; and an existing model system for selecting at least one existing data mining model from a library of existing data mining models, and for executing the selected at least one existing data mining model in parallel on the user data
A second aspect of the present invention provides a computerized system for generating and executing customized data mining models, comprising: a model generation system for iteratively generating the customized data mining models in parallel based on the permutations of at least one of user data, business parameters and a set of model generation algorithms; a model ranking system for ranking the customized data mining models based on the business parameters, for identifying a predetermined quantity of the ranked customized data mining models, and for providing comparative data corresponding to the predetermined quantity of the ranked customized data mining models; a customized model selection system for selecting at least one customized mining model from the predetermined quantity; and a customized model execution system for executing the selected at least one customized data mining model on the user data.
A third aspect of the present invention provides a computerized system for selecting and executing existing data mining models: a model library system for assembling a library of existing data mining models based on a business parameters, and for displaying the library of existing data mining models and comparative data corresponding to the library of existing data models; an existing model selection system for selecting at least one existing data mining model from the library of existing data mining models; an existing model execution system for executing the at least one existing data mining model on the user data in parallel; and a model comparison system for comparing results of the execution of the at least one existing data mining model.
A fourth aspect of the present invention provides a computer-implemented method for generating customized data mining models, comprising: providing user data and business parameters; iteratively generating a plurality of customized data mining models in parallel based on permutations of at least one of the user data, the business parameters and a set of model generation algorithms; ranking the plurality of customized data mining models based on the business parameters; selecting at least one customized data mining model from the ranked plurality of customized data mining models; and executing the selected at least one customized data mining model on the user data.
A fifth aspect of the present invention provides a computer-implemented method for selecting existing data mining models, comprising: providing user data and business parameters; assembling a library of existing data mining models based on the business parameters; displaying the library of existing data mining models and comparative data corresponding to the library of data mining models; selecting at least one existing data mining model from the library of existing data mining models; executing the at least one existing data mining model on the user data in parallel; and comparing results of the execution of the at least one existing data mining model.
A sixth aspect of the present invention provides a data mining computer program product stored on a recordable medium, which when executed, comprises: program code for receiving and analyzing user data to provide statistical information about the user data; program code for generating and ranking customized data mining models, and for executing a selected customized data mining model on the user data, wherein the customized data mining models are iteratively generated in parallel based on permutations of at least one of the user data, business parameters and a set of model generation algorithms; and program code for selecting at least one existing data mining model from a library of existing data mining models, and for executing the selected at least one existing data mining model in parallel on the user data
A seventh aspect of the present invention provides a program product stored on a recordable medium for generating and executing customized data mining models, which when executed comprises: program code for iteratively generating the customized data mining models in parallel based on the permutations of at least one of user data, business parameters and a set of model generation algorithms; program code for ranking the customized data mining models based on the business parameters, for identifying a predetermined quantity of the ranked customized data mining models, and for providing comparative data corresponding to the predetermined quantity of the ranked customized data mining models; program code for selecting at least one customized mining model the predetermined quantity; and program code for executing the selected at least one customized data mining model on the user data.
An eighth aspect of the present invention provides a program product stored on a recordable medium for selecting and executing existing data mining models, which when executed comprises: program code for assembling a library of existing data mining models based on a business parameters, and for displaying the library of existing data mining models and comparative data corresponding to the library of existing data models; program code for selecting at least one existing data mining model from the library of existing data mining models; program code for executing the at least one existing data mining model on the user data in parallel; and program code for comparing results of the execution of the at least one existing data mining model.
Therefore, the present invention provides a computerized data mining system, method and program product.
BRIEF DESCRIPTION OF THE DRAWINGSThese and other features of this invention will be more readily understood from the following detailed description of the various aspects of the invention taken in conjunction with the accompanying drawings in which:
FIG. 1 depicts a computerized data mining system according to the present invention.
FIG. 2 depicts an illustrative business problem interface.
FIG. 3 depicts an illustrative model goal interface.
FIG. 4 depicts the customized model system ofFIG. 1.
FIG. 5 depicts a method flow diagram for generating and executing customized data mining models according to the present invention.
FIG. 6 depicts the existing model system ofFIG. 1.
FIG. 7 depicts a method flow diagram for selecting and executing existing data mining models according to the present invention.
The drawings are merely schematic representations, not intended to portray specific parameters of the invention. The drawings are intended to depict only typical embodiments of the invention, and therefore should not be considered as limiting the scope of the invention. In the drawings, like numbering represents like elements.
DETAILED DESCRIPTION OF THE INVENTIONAs indicated above, the present invention provides a computerized data mining system, method and program product. Specifically, under the present invention, a data exploration system, a customized model system and an existing model system are provided. The data exploration system analyzes user data to identify statistical information such as data distribution, data relationships, data outliners and invalid or missing data values. The customized model center iteratively generates customized data mining models in parallel based on user data, user-provided business parameters and/or a set of model generation algorithms. The existing model system provides users with a library of existing data mining models, assembled based on the business parameters, from which they can chose one or more. In any event, any customized or existing data mining models selected can be run against the user data in parallel.
It should be understood in advance that the present invention could be implemented as a “business method” such that it is provided as a subscription or profit-based system. For example, businesses wishing to generate their own customized data mining models, or to select from existing data mining models, could be charged a one time fee or a periodic subscription fee.
Referring now toFIG. 1, a computerized data mining system according to the present invention is shown. In general, the system ofFIG. 1 allows users such asuser24 to obtain a data mining model (e.g., create a customized data mining model or select an existing data mining model), and then execute that data mining model against its user data. In general, the present invention is implemented in a network environment such as over the Internet, a local area network (LAN), a wide area network (WAN), a virtual private network (VPN), etc. Accordingly,user24 operates aclient26 to interact withserver10. To this extent,client26 is intended to represent any type of computerized device that is capable of communicating withserver10. For example,client26 could be a personal computer, workstation, a laptop, a hand-held device, etc. In addition, communication betweenserver10 andclient26 could occur via a direct hardwired connection (e.g., serial port), or via an addressable connection that may utilize any combination of wireline and/or wireless transmission methods.Server10 andclient26 may utilize conventional network connectivity, such as Token Ring, Ethernet, WiFi or other conventional communications standards. Moreover, connectivity could be provided by conventional TCP/IP sockets-based protocol. In this instance,client26 could use an Internet service provider to establish connectivity toserver10.
As shown,server10 comprises central processing unit (CPU)12,memory14,bus16, input/output (I/O) interfaces18, external devices/resources20 andstorage unit22.CPU12 may comprise a single processing unit, or be distributed across one or more processing units in one or more locations.Memory14 may comprise any known type of data storage medium including magnetic storage medium, optical storage medium, random access memory (RAM), read-only memory (ROM), and a data cache memory. Moreover, similar toCPU12,memory14 may reside at a single physical location, comprising one or more types of data storage, or be distributed across a plurality of physical systems in various forms.
I/O interfaces18 may comprise any system for exchanging information to/from an external source. External devices/resources20 may comprise any known type of external device, including speakers, a CRT, LCD screen, handheld device, keyboard, mouse, voice recognition system, speech output system, printer, monitor/display, facsimile, pager, etc.Bus16 provides a communication link between each of the components inserver10 and likewise may comprise any known type of transmission link, including electrical, optical, wireless, etc.
Storage unit22 can be any system (e.g., database) capable of providing storage for data under the present invention such as user data, designated business parameters, model generation algorithms, etc. As such,storage unit22 could include one or more storage devices, such as a magnetic disk drive or an optical disk drive. In another embodiment,storage unit22 includes data distributed across, for example, a local area network (LAN), wide area network (WAN) or a storage area network (SAN) (not shown). Further, although not shown, additional components, such as cache memory, communication systems, system software, etc., may be incorporated intoserver10. Moreover, it should be understood thatclient26 will include computer components similar toserver10, such components have not been shown for brevity purposes.
Shown in memory ofserver10 isanalysis system30, which includesdata submission system32,parameter designation system34,data exploration system36, customizedmodel system38 and existingmodel system40. It should be understood that the depiction ofanalysis system30 shown inFIG. 1 is intended to be illustrative only and that other variations could be implemented. For example,data submission system32 and parameter designation system could be implemented as a single “input” system. In any event,user24 can gain access toanalytics system30 viaweb browser28 onclient26. Once access is gained,user24 will submit user data that is desired to be analyzed/mined viadata submission system32. The user data can be submitted in a flat file or through any other known means. Once the user data has been provided,user24 can utilizedata exploration system36 to learn more “statistical” information about the user data. For example, once the user data is submitted,data exploration system36 will analyze the data to informuser24 of information such as data distributions, data relationships, data outliners, missing and/or invalid data values, etc. This information is extremely helpful in aidinguser24's understanding of his/her user data.
Under the present invention,user24 will then designate business parameters viaparameter designation system34. In designating business parameters,user24 will use a series of interfaces provided byparameter designation system34 to designate a business field/taxonomy (e.g., financial, banking, etc.), business problems (e.g., determining whether transactions are fraudulent, etc.) and goals for the eventual mining model (e.g., a misclassification cost). Referring toFIG. 2, an illustrativebusiness problem interface42 is shown. As depicted,interface42 lists several problem “choices”44 from whichuser24 can select. Referring toFIG. 3, an illustrativemodel goal interface46 is shown foruser24 to designate the mining model goal(s). In a typical embodiment, the mining model goal is quantified intonumeric values48 for ranking the models (which will be further described below). It should be understood thatinterfaces42 and46 are illustrative only and that other variations could be implemented.
Once user data and the business parameters have been provided,user24 can create a customized and/or select an existing data mining model. Ifuser24 wishes to generate a customized data mining model,user24 will implement customized model system38 (FIG. 1). Referring toFIG. 4, customizedmodel system38 is shown and described in greater detail. As depicted, customizedmodel system38 includesmodel generation system50,model ranking system52, customizedmodel selection system54 and customizedmodel execution system56. Using theuser data58,business parameters60 and predetermined model generation algorithms,model generation system50 will iteratively generate a plurality of data mining models in parallel. Specifically, an “iterator” withinmodel generation system50 will develop various permutations of theuser data58,business parameters60 and/or the model generation algorithms (collectively referred to as model generation details), and iteratively generate multiple data mining models based thereupon. For example,model generation system50 can perform permutations such as shuffling data, changing model generation algorithms, etc. Regardless,model generation system50 will generate the data mining models in parallel (e.g., in a grid-like fashion) such that all data mining models are generated at the same time/simultaneously. This avoids the inefficiencies with having to generate each data mining model one at a time. To this extent, although not shown inFIG. 1, multiple computerized “machines” could be provided in communication withserver10 that each generates one or more data mining models.
Once the customized data mining models have been generated as described, model rankingsystem52 will rank the generated models based on how they would address the business parameters60 (e.g., mining model goals). Once ranked, a predetermined quantity of the ranked data mining models will be provided touser24. For example, ifmodel generation system50 generated ten data mining models,model ranking system52 might rank all ten, but only display the top five to user24 (although all ten could be presented if so desired). In viewing the presented rankings,user24 can then use customizedmodel selection system54 to select one or more of the generated data mining models. After selecting the desired data mining model(s),user24 will use customizedmodel execution system56 to execute each selected data mining models against theuser data58. Similar to the generation of the data mining models, the execution of multiple data mining models can be performed in parallel (e.g., in a grid fashion) by multiple machines (not shown) in communication withserver10. In any event, the results of each such execution could be collated and be provided to user asoutput64 for comparison.
Referring toFIG. 5, a method flow diagram68 depicting the model generation process provided by customizedmodel system38 is shown. First step C1 ofmethod68 is to submit user data and designate business parameters. Second step C2 is to iteratively generate customized data mining models in parallel by making permutations of model generation details (e.g., the user data, business parameters and/or model generation algorithms). Third step C3 is to rank the generated customized data mining models, a predetermined quantity of which are identified to the user in step C4. In step C5, the user will select at least one customized data model from the ranking, and then execute the selected data mining model(s) in parallel against the data in step C6.
As indicated above, the present invention provides a user with the capability to generate customized data mining models, and/or select existing data mining models. Referring now toFIG. 6, the existingmodel system40 by which existing data mining models are selected is shown. As depicted, existingmodel system40 includesmodel library system70, existingmodel selection system72, existingmodel execution system74 and existingmodel comparison system76. Similar to generating a customized data mining model, user24 (FIG. 1) will submituser data58 andbusiness parameters60. Once submitted,model library system70 will access all existing data mining models. Based on thebusiness parameters60,model library system70 will then provideuser24 with a library of applicabledata mining models78 as well as comparative data corresponding thereto. For example, if based onuser24's identified mining model goals,model library system70 identified ten possible existing mining models that would be most applicable touser24, those ten data mining models would be identified touser24 in an interface or the like. Along with identifying the data mining models,model library system70 could display comparative data/statistics about how the mining models performed historically (e.g., number of observations, correct hits, false alarms, false dismissals, correct dismissals, etc.). This type of information could helpuser24 in selecting the one or more existing data mining models that are the most appropriate and accurate.
Using existingmodel selection system72,user24 can then select one or more data mining models from the library. Upon such a selection, existingmodel execution system74 will execute each selected data mining model on theuser data58 in parallel (e.g. in a grid fashion). After being executed the results from each data mining model can be output touser24 as output/results64. At this point,user24 can compare the analytics across all selected data mining models and make a long term decision to implement one or more of such models.
Referring now toFIG. 7, a method flow diagram80 depicting the existing model selection process provided by existingmodel system40 is shown. First step E1 is to submit user data and designate business parameters. Second step E2 is to assemble the library of existing data mining models, which is displayed along with comparative data in step E3. Next, the user can select at least one of the existing data mining models in step E4. Each selected data mining model will be executed against the user data in parallel in step E5, and the result will be outputted for comparison in step E6.
It should be understood that the present invention can be realized in hardware, software, or a combination of hardware and software. Any kind of computer system(s)—or other apparatus adapted for carrying out the methods described herein—is suited. A typical combination of hardware and software could be a general purpose computer system with a computer program that, when loaded and executed, carries out the respective methods described herein. Alternatively, a specific use computer, containing specialized hardware for carrying out one or more of the functional tasks of the invention, could be utilized. The present invention can also be embedded in a computer program product, which comprises all the respective features enabling the implementation of the methods described herein, and which—when loaded in a computer system—is able to carry out these methods. Computer program, software program, program, or software, in the present context mean any expression, in any language, code or notation, of a set of instructions intended to cause a system having an information processing capability to perform a particular function either directly or after either or both of the following: (a) conversion to another language, code or notation; and/or (b) reproduction in a different material form.
The foregoing description of the preferred embodiments of this invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed, and obviously, many modifications and variations are possible. Such modifications and variations that may be apparent to a person skilled in the art are intended to be included within the scope of this invention as defined by the accompanying claims. For example, although not shown, an authentication/verification system could be provided foruser24 to log and be authenticated/verified before usinganalysis system30. This could especially be the case if the present invention is implemented under a fee-based structure.