bstev@pnet12.cts.com (Barry Stevens) (10/05/88)
Two weeks ago, I posted a message that I had done a survey of companies looking for applications that were suitable for neural networks, and asking if there was any interest. Since that time, the responses have been coming back by Email almost daily, just over 30 of them so far. Accordingly, I have prepared a summary of that study for posting in comp.neural-nets. The summary appears as a comment to this message, and is approximately 200 lines in length. The original report can't be released, since it contains some proprietary material. The summary, however, contains material that is available from numerous public sources, if one knew where and when to look. To keep the post down, I had to exclude all of the technical detail that usually accompanies discussion about neural networks. I describe the applications that were identified, and what, if anything, has been done about them. Period. Barry Stevens UUCP: {crash ncr-sd}!pnet12!bstev ARPA: crash!pnet12!bstev@nosc.mil INET: bstev@pnet12.cts.com
bstev@pnet12.cts.com (Barry Stevens) (10/05/88)
COMMERCIAL APPLICATIONS OF NEURAL NETWORKS Barry A. Stevens Copyright 1988 Applied AI Systems, Inc. We recently completed a survey of a number of organizations looking for commercial applications for neural networks. The study was done for a vendor of neural network hardware and software. (See the notices at the end of this article.) Information in this summary is from that study and also in the public domain, from literature, press releases, and demonstrations describing neurocomputer applications. THE SURVEY Forty companies were contacted, and after locating the correct contact, the characteristics of neurocomputer operation were discussed in some detail. Operational activities of each company were then briefly reviewed, to identify those non-engineering applications where neural networks could either perform better than methods currently in use, or provide a capability that did not currently exist. For four applications, data were obtained from interested companies for test implementation by vendor technical personnel. Information from this study, together with available information about engineering-oriented uses of neural networks, were used to produce the following list of viable commercial applications for neural networks. Most, if not all, of the following data are available in the public domain, either in written form, or as demonstrations of capability used at trade shows. This is a summary report, devoid of significant technical detail. It is meant only as an overview of applications. Providing adequate detail for even one of these applications would create a file too large to comfortably transfer via USENET. THE APPLICATIONS EKG Processing -------------- In normal EKG processing, digital filters are used to remove unwanted signals from muscle groups other than the heart as well as background noise from power lines and other instruments. The filters operate in the frequency domain, and distort the signal in the process of removing the noise. A neural network, trained to recognize both normal and abnormal EKG patterns, identifies the features of those signals found in the noise in the time domain. The result is better signal to noise ratio and less signal distortion than with conventional techniques. Process Control --------------- A neural network was trained to solve a classic control problem -- balancing a broom mounted on a servo-controlled cart. Standard approaches to solving process control problems involve development of a control law, one or more functional relationships describing the process being controlled. The control law is then tested through simulation. The approach is time-consuming, and doesn't work well when complicated non-linear functions are involved, or when there is no apparent functional relationship in the process. A neural network has the capability to observe data from a process and, given a goal of controlling a variable in that process, of learning the requisite control law. In the case of the broom-balancing application, a television camera was used as a position sensor for the broom. A neural network processed the image position data, and velocity and acceleration information derived from them. By observing these data during attempts to balance the broom, the network eventually learned a control law to balance it, using a learning algorithm proprietary to the vendor. The neural network approach works particularly well in complicated, non- linear situations or where there appears to be no functional relationships to use in development of a control law. Reading Hand Printed Numbers ---------------------------- A neural network has been successfully trained to recognize handprinted characters by exposing a network to video or graphic tablet samples of numerics printed by a number of people. The trained network has been able to successfully identify wide variations in characters, including superimposed characters such as an "8" written inside a "0", distorted characters, or characters composed of broken or dotted lines. Inspection and Quality Control ------------------------------ Neural networks have been trained to recognize the positioning of labels on bottles of food, beers, soda, or medicines. Video input is used, and the network is trained to recognize the labels being viewed. Neural networks are also ideally suited to assembly line testing, where automated test equipment gathers information about an assembly, such as a car, or an electronic device, on a periodic basis. The data can be gathered, and displayed on a PC for a human quality control expert. The data, and the resulting judgment of the human expert, can be captured and used as training data for a neural network. When enough training data become available, the network will be capable of making judgments as the human expert did. Recognition of a Face in a Video Image --------------------------------------- A neural network has been successfully used to recognize the fourier transformation of a facial image within the fourier transformation of a video image containing that face. The resulting identification of faces has proven to be somewhat insensitive to facial position, presence or absence of a smile, or presence or absence of eyeglasses. Consumer Loan Credit Screening ------------------------------ Data from 17,000 completed consumer loans have been used to train and test a neural network as a loan officer. The network was trained using the information on 10,000 of the consumer loan application together with a grade for the payment history on them. Tests on 7,000 of the loans not used during training indicate that if the network was used to screen loans, instead of the expert system currently used, a 27% increase in profitability would have been experienced. The rule-based expert system took two man years to build. The neural network was trained in three weeks. Mortgage Processing ------------------- Banks have identified mortgage screening as another fruitful area for neural networks. This is essentially the same as consumer loan credit screening, except that significantly more information from more sources is used in the process. Neural networks have the ability to learn from the judgment of human loan officers. The application, credit report, and character check may be combined and presented to the network, together with the judgment of those items made by the loan officer. As more cases are captured and used to train the network, it gradually learns to make the decisions in the same manner as the loan officer, even if such decisions are subjective, even irrational. Insurance Claims Processing --------------------------- Insurance companies need to process historical claim data and determine if: current claims submitted may be fraudulent; or how much money should be held in reserve to pay submitted claims. By using historical claim information, together with information on the disposition of the claims as well as the amounts actually paid, the required network training can be accomplished. Stock or Commodity Trading -------------------------- Neural networks have been successfully used to learn features present in commodity price data over time, and to identify those features when confronted with real-time data containing those features. Thirty-three features were learned including such classics as head-and-shoulders, double tops, flags, and s-curves, among others. It was not necessary to know the nature of the features ahead of time; the network learned whatever features were present. Once features were learned, information on the sequence of features was determined statistically, and used to develop a trading strategy. Inventory Control ----------------- A Fortune-500 company uses a large computer-based inventory control system to process order, inventory, and shipment data for 40,000 customers, 2,000 vendors, and 1,000,000 SKU items. Approximately 100 parameters control every aspect of the operation of the inventory system. It is desired to use those parameters to minimize the amount of inventory remaining on hand. No one has been able to solve the resulting minimization problem using conventional inventory management techniques. The inventory system contains a simulation model. The model, using an audit trail of all inventory activity, is capable of simulating many months' business under the control of the same parameters that control the main inventory system. A neural network can be used together with a rule- based expert system to perform a global search for a minimum value of inventory, following these steps: systematically change the parameters; run the simulation; observe the remaining inventory; decide if the change is good; continue searching in the same "direction" if it was a good change; change directions if the change was bad. The neural network quickly learns the relationship between the control parameters and the objective of minimizing the amount of inventory. Reading Text ------------ Neural networks can be used to recognize text, rather than parse it, saving considerable amounts of processing time. In a large datacenter, as one example, with multiple IBM mainframe CPUs, operator console and telecommunications console messages must be responded to by human operators. The messages are generated at a rate of from 5 to 50 *per second*. This is well beyond the rate at which human operators can function. One solution is to identify the messages automatically, and allow an expert system to take automatic action where possible. This will reduce the workload for human operators. Identification of the messages using conventional techniques requires a significant amount of processing time. IBM sells a product which performs the function but, wouldn't you know it, requires a small mainframe to run. A neural network can be taught to classify console messages for a companion expert system. Once a network is trained, classification occurs in one pass through the neural network, providing very fast response. The companion expert system then uses the classification to extract and act on information found in the message. THE NETWORKS USED In almost all cases where networks were implemented to test the applications described above, the back propagation network was used. In a few cases, a vendor-proprietary learning algorithm and network were used. Test applications were implemented on an IBM/AT class machine with the ANZA neural network co-processor board sold by HNC, Inc. THE SURVEY PROJECT The project was paid for by HNC, Inc., of San Diego, CA. Personnel from both firms worked on the various stages of the applications that were tested. CONTACT Barry A. Stevens may be reached at: Applied AI Systems, Inc. PO Box 2747 Del Mar, CA 92014 619-755-7231 UUCP: {crash ncr-sd}!pnet12!bstev ARPA: crash!pnet12!bstev@nosc.mil INET: bstev@pnet12.cts.com