|Rosella Machine Intelligence & Data Mining|
| Home | DataMining & Machine Learning | Products & Downloads | Site Map | Contact |
<!- menu column -->
Neural Network Predictive Modeling / Machine Learning
Artificial Neural Network (ANN) is a very powerful predictive modeling technique. Neural network is derived from animal nerve systems (e.g., human brains). The heart of the technique is neural network (or network for short). Neural networks can learn to perform variety of predictive tasks. For example, it can be trained to predict numerical values, say, future stock prices, probability, expected values, etc. In addition, it can be used in tasks that involve classification, for example, car, truck, bus, bird, horse, etc.
Neurons in Biological Neural Network
The core of neural network is (network-) nodes. Neural network nodes correspond to neurons of nerve systems. Anatomy of neurons (or neuro cells) is shown at the left figure. Nucleus contains DNA of neuro cells. Axons connect neurons and deliver neuro signals to other neurons. Dendrites receive signals passed through synapses. Synapse is the narrow gap between axon terminals and dendrites.
Neurons receive signals from other neurons and combine them. Combined signals are delivered to other neurons which may receive different level of signals as strength of connected axons will differ. The right figure illustrates this.
Artificial Neural Network - Machine Learning Method
The main function of neurons is simple. That is, neurons combine input signals and pass to other neurons. When this simple function is organized into a network, it renders a very powerful system. Artificial (or computer) version of neurons are referred to as nodes. Artificial neural networks consist of layers of nodes and links between neighboring layers' nodes. The following figure is an example of artificial neural network. (You may consider it as a credit scoring or insurance scoring predictive model which predicts score for credit/insurance applicants.) The first layer is input layer. Nodes of input layer represent input fields or values of categorical input fields. The last layer is output layer. Nodes of output layer represent either prediction values or predicted class names. In the figure, there is a single node for "RiskScore". The rest of layers are called hidden layers (or middle or internal layers). There may be zero or more hidden layers, normally a single hidden layer. The figure has ten hidden nodes in a single hidden layer.
How Neural Network Predicts?
Neural Network Training - The Trial and Error Correction Method
Weights of networks represented by links. Weights are computed by a method known as back-propagation. Computation of weights is called network training. Neural Networks are trained by "showing exemplary data and making corrections for errors repeatedly", until networks fully learn patterns hidden inside data and are able to predict accurately. Basically it's a "Learning from Mistakes or Errors" approach. Network training is performed by repeating the following procedure. For each input training data record;
Training data records are applied many times before network is actually used. Normally dozens or hundreds of times. Network training is a repetitive process. In the beginning, networks are trained coarsely. Then, they are refined by repeated application of input data. After networks reach a certain maturity level, they are used or deployed for value prediction. Note that testing also involves validation with unseen data to evaluate generality of models.
Time-series Forecasting Using Neural Network
As an alternative approach to regression, neural network can be used to capture time-series trends and seasonal patterns. Neural network is a robust modeling tool. It can capture time-series trends along with seasonal patterns. Moreover neural network time-series models can capture patterns hidden with other variables. Details are discussed in the following link;
Deep Learning and Neural Network
Neural networks are very versatile. They can be combined into a larger model seamlessly. Deep Learning refers multi-layer networks and multiple neural networks organized into a single robust model. Normally neural networks are organized into a hierarchical structure. It can work as very powerful decision support systems. For more on Deep Learning, read Rule Engine for Deep Learning.
For more on how neural networks are used in risk management, please read the following links;
Further applications include;
Computer Vision and Convolutional Neural Networks
Convolutional Neural Network (CNN) is a very powerful computer vision techniques. It can classify images, detect objects, and predict values. For example, it can detect skin cancer or wild fires from images as explained in the next;
For information about software used here, please read Machine Learning and Data Mining Software. Software download is available from the page. For information about predictive modeling, please read Predictive Modeling Software Tools.