NeuroSolutions Home | Products | Downloads | Resources | Support | Order NeuroDimension Home
   Products
     NeuroSolutions
     NeuroSolutions for Excel
     Custom Solution Wizard
     NeuroSolutions CUDA
     NS for MATLAB
     Source Code License
     Interactive Book
     Neural Network Course
     Other Products
   Downloads
     Free Evaluation Copy
     Product Updates
     Documentation
     Drivers
   Resources
     Intro to Neural Networks
     Video Library
     Customer Quotes
     Customer Interviews
     News and Reviews
     Newsletters
     Application Summaries
   Support
     FAQ
     Licensed User Center
     Maintenance Service
     Contact NeuroDimension
   Order
     Product Pricing
     Level Summary
     Ordering Information
     Order Online Now
   ND Corporate Website
   TradingSolutions.com
   Trader68.com

What is a Neural Network?

A neural network is a powerful data modeling tool that is able to capture and represent complex input/output relationships. The motivation for the development of neural network technology stemmed from the desire to develop an artificial system that could perform "intelligent" tasks similar to those performed by the human brain. Neural networks resemble the human brain in the following two ways:

  1. A neural network acquires knowledge through learning.
  2. A neural network's knowledge is stored within inter-neuron connection strengths known as synaptic weights.

The true power and advantage of neural networks lies in their ability to represent both linear and non-linear relationships and in their ability to learn these relationships directly from the data being modeled. Traditional linear models are simply inadequate when it comes to modeling data that contains non-linear characteristics.

The most common neural network model is the multilayer perceptron (MLP). This type of neural network is known as a supervised network because it requires a desired output in order to learn. The goal of this type of network is to create a model that correctly maps the input to the output using historical data so that the model can then be used to produce the output when the desired output is unknown. A graphical representation of an MLP is shown below.


Block diagram of a two hidden layer multiplayer perceptron (MLP). The inputs are fed into the input layer and get multiplied by interconnection weights as they are passed from the input layer to the first hidden layer. Within the first hidden layer, they get summed then processed by a nonlinear function (usually the hyperbolic tangent). As the processed data leaves the first hidden layer, again it gets multiplied by interconnection weights, then summed and processed by the second hidden layer. Finally the data is multiplied by interconnection weights then processed one last time within the output layer to produce the neural network output.

The MLP and many other neural networks learn using an algorithm called backpropagation. With backpropagation, the input data is repeatedly presented to the neural network. With each presentation the output of the neural network is compared to the desired output and an error is computed. This error is then fed back (backpropagated) to the neural network and used to adjust the weights such that the error decreases with each iteration and the neural model gets closer and closer to producing the desired output. This process is known as "training".


Demonstration of a neural network learning to model the exclusive-or (Xor) data. The Xor data is repeatedly presented to the neural network. With each presentation, the error between the network output and the desired output is computed and fed back to the neural network. The neural network uses this error to adjust its weights such that the error will be decreased. This sequence of events is usually repeated until an acceptable error has been reached or until the network no longer appears to be learning.

A good way to introduce the topic is to take a look at a typical application of neural networks. Many of today's document scanners for the PC come with software that performs a task known as optical character recognition (OCR). OCR software allows you to scan in a printed document and then convert the scanned image into to an electronic text format such as a Word document, enabling you to manipulate the text. In order to perform this conversion the software must analyze each group of pixels (0's and 1's) that form a letter and produce a value that corresponds to that letter. Some of the OCR software on the market use a neural network as the classification engine.


Demonstration of a neural network used within an optical character recognition (OCR) application. The original document is scanned into the computer and saved as an image. The OCR software breaks the image into sub-images, each containing a single character. The sub-images are then translated from an image format into a binary format, where each 0 and 1 represents an individual pixel of the sub-image. The binary data is then fed into a neural network that has been trained to make the association between the character image data and a numeric value that corresponds to the character. The output from the neural network is then translated into ASCII text and saved as a file.

Of course character recognition is not the only problem that neural networks can solve. Neural networks have been successfully applied to broad spectrum of data-intensive applications, such as:

  • Process Modeling and Control - Creating a neural network model for a physical plant then using that model to determine the best control settings for the plant.
  • Machine Diagnostics - Detect when a machine has failed so that the system can automatically shut down the machine when this occurs.
  • Portfolio Management - Allocate the assets in a portfolio in a way that maximizes return and minimizes risk.
  • Target Recognition - Military application which uses video and/or infrared image data to determine if an enemy target is present.
  • Medical Diagnosis - Assisting doctors with their diagnosis by analyzing the reported symptoms and/or image data such as MRIs or X-rays.
  • Credit Rating - Automatically assigning a company's or individuals credit rating based on their financial condition.
  • Targeted Marketing - Finding the set of demographics which have the highest response rate for a particular marketing campaign.
  • Voice Recognition - Transcribing spoken words into ASCII text.
  • Financial Forecasting - Using the historical data of a security to predict the future movement of that security.
  • Quality Control - Attaching a camera or sensor to the end of a production process to automatically inspect for defects.
  • Intelligent Searching - An internet search engine that provides the most relevant content and banner ads based on the users' past behavior.
  • Fraud Detection - Detect fraudulent credit card transactions and automatically decline the charge.

NeuroSolutions Home  |  Products  |  Downloads  |  Resources  |  Support  |  Order

Contact NeuroDimension | Privacy Policy
Interested in selling our software? Become a reseller!
Web Site Design and Implementation Copyright 2011 NeuroDimension, Inc.

NeuroSolutions overview in Chinese.