|NeuroSolutions Home | Products | Downloads | Resources | Support | Order||NeuroDimension Home|
NeuroSolutions for Excel
Custom Solution Wizard
NS for MATLAB
Source Code License
Neural Network Course
Free Evaluation Copy
Intro to Neural Networks
News and Reviews
Licensed User Center
Order Online Now
ND Corporate Website
PC AI Product Review
Originally published in the May/June 1996 issue of PC AI Magazine (Volume 10, Number 3, pp. 40-41)
Review of NeuroSolutions
by Jeff Rapaport and Seymour Rapaport
NeuroSolutions is a comprehensive environment that covers each stage of neural network solution development. This package enables you to build, simulate, evaluate, extend, export, and deploy a workable neural network.
Graphical User Interface
NeuroSolutions offers a unique GUI. You construct neural networks by interconnecting neural components on a virtual "breadboard." Simulations are "live"- real-time displays present data flowing in the network, network response, weight adaptation, learning curves, and anything else that you could possibly want to see. The simulations run very quickly on a 486PC, which says a lot for the code's efficiency.
A NeuroSolutions breadboard is analogous to an electronic circuit breadboard. The user drags neural components (represented by icons) from palettes to the breadboard and interconnects them to construct almost any type of neural network. This "neural CAD" approach uses a component-level design to provide an unconstrained environment that allows great flexibility.
Object Oriented Core
The NeuroSolutions object oriented core sits behind the scenes of all this flexibility. The core offers iconic representation of neural networks at the component level, bringing the art of building neural networks back into play. You are never limited to a set of predefined network types. This design methodology allowed us to design advanced systems, including a dynamic network trained with backpropagation through time, and a hybrid model that mixed supervised and unsupervised learning within the same network. We could also train and evaluate different sections of the network separately.
The flexibility of this package is immense, and could have been overwhelming, if not for the NeuralWizard that walked us through the design process. The NeuralWizard supports an impressive set of common neural models. After building each network with the NeuralWizard, we still have access to the breadboard at the component level. This allowed us to add components and make changes, maintaining the flexibility of the NeuroSolutions environment. The NeuralWizard-in effect, a second user interface-enables you to design a solution based on data rather than on the details of a particular model.
Prototyping: Sculpting, Not Squeezing
Anyone who has worked with neural networks understands that the design process is more art than science. The NeuroSolutions environment promotes design-by-prototyping, a process that involves tweaking the model while observing the consequences in real-time. One gets the impression of "sculpting" a model rather than squeezing it to fit a problem.
NeuroSolutions supports prototyping through an extensive set of probing tools. Probing tools differ from standard graphical reports in that they are dynamic and "alive" with the simulation. They let you watch models evolve. You can stop the simulation, change model parameters, and continue. Probes display, in real-time, all internal network variables: inputs/outputs, hidden states, gradients, errors, sensitivities, and weights. The displays add up to a complete picture of the training process.
Any solutions-based environment must be user-extensible, and NeuroSolutions seems to be a completely open environment. The user's manual tells how to modify every component's functionality to fit particular needs. The flexibility doesn't stop here. You can create your own components from scratch-probes, nonlinearity functions, gradient search procedures, pre- and post- processors, customized I/O devices, error criteria, and more.
NeuroDimension is exploiting the open environment idea very aggressively. They're adding a customer corner to their Web site, enabling developers to share their own customized components. This leverages expertise, catalyzes knowledge sharing, and grows the industry. The benefit is obvious: Imagine owning a neural-network environment that grows every day.
An Application: Housing Valuation Network
To fuel our NeuroSolutions test-drive, we found a dataset on the World-Wide Web. the data are housing prices in the Boston area. We built a simple standalone application that realtors could use to predict housing costs. As the dataset was from Boston, the trained network represents only that area. Our solution, however, can retrain itself for other regions given the appropriate data.
Model Selection and Training
The dataset consists of 506 exemplars with 13 indicators per exemplar, such as per capita crime rate, proportion of non-retail business acres per town, average number of rooms per dwelling and pupil-teach ration by town. The goal was to predict median value (in thousands of dollars) of owner-occupied homes. The NeuralWizard utility easily imported the data from a ASCII file and trained four different models. From a list of supported models, we selected the the models we wanted to try (multilayer preceptron, modular neural network, radial basis function network, and time-lagged recurrent network) and filled in the parameters for each model on a NeuralWizard sequence of panels. These parameters included number of layers, learning rule, learning rates, stop criteria, probe points, and test set extraction method. Fortunately for novice model builders (and for us), the NeuralWizard provides default values based on the data you provide. We then selected thirty percent of the downloaded data for cross-validation.
Exporting the Solution
After obtaining a satisfactory model and weight set, the next step is to deploy the model. To embed the model in a standalone application where the neural model could retrain itself, we generated source code for two breadboard configurations: one with a network that trains and one with a network that recalls. NeuroSolutions exported the source code for each of these breadboards with the press of a button. Exporting the code generates an ANSI-compatible shell application without an interface. NeuroSolutions wrote all the neural network code for us. We were able to build the interface (in Microsoft Visual C++) and connect it to the network.
NeuroSolutions offers a uniquely comprehensive package. If you're a neural net neophyte, read through the tutorials and practice using the NeuralWizard before you try to create your own networks from scratch. A great way to familiarize yourself with this package and its features is to run the demonstration. Available on the NeuroDimension Web site (http://www.nd.com), the demonstration illustrates the powerful and unique graphical user interface (GUI) by walking you through several applications of different types of neural models. You can see the package interact with a variety of datasets. These models range from plain vanilla multilayer perceptrons to very sophisticated temporal, mixture and hybrid architectures. This demo has excellent education value. We highly recommend it.
Neural net vendors now ship packages that address the many needs of the consultant. Building a model is just one step in the successful deployment of a solution. Today's net development environments must take you through all the other steps, too. NeuroSolutions does this seamlessly and flawlessly. We commend NeuroDimension for bringing out such a comprehensive and complete product.
Jeff Rapaport is the Director of Information Systems for SolveTech Corporation in Sunnyvale, California. He designs and deploys intelligent applications in the marketing field and in medical quality control cost containment. You can reach him at (408) 720-8000 or at email@example.com.
Seymour Rapaport, M.D. graduated from Caltech with a B.S. in physics-mathematics and from Johns Hopkins Medical School. He is Medical Director for Spectrum Health Services at Moffett Field, California and also works at Lockheed-Martin Corporation in statistical and failure analysis.
You can reach NeuroDimension at (352) 377-5144.