bee4333 intelligent control

59
Copyright of Hamzah Ahmad FKEE, UMP BEE4333 Intelligent Control Hamzah Ahmad Ext: 2055/2141 Artificial Intelligence: Artificial Neural Network (ANN)

Upload: clove

Post on 23-Feb-2016

47 views

Category:

Documents


0 download

DESCRIPTION

BEE4333 Intelligent Control. Artificial Intelligence: Artificial Neural Network (ANN). Hamzah Ahmad Ext: 2055/2141. Activities : Recognize below. puɾ ˈkwɐ̃tɐs kwaliˈdadʒiz ˈviɐ ˈnɛlɐ. Todays Lesson. 4.1 Basic Concept 4.2 ANN Applications - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

BEE4333 Intelligent Control

Hamzah AhmadExt: 2055/2141

Artificial Intelligence: Artificial Neural Network (ANN)

Page 2: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Activities : Recognize below

• puɾ ˈkw tɐs kwaliˈdadʒiz ˈviɐ ˈnɛlɐɐ̃2 ۲ Do Dü

Page 3: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Todays Lesson

• 4.1 Basic Concept• 4.2 ANN Applications

• LO1 : Able to understand the concept of Artificial Neural Network and its applications

Page 4: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Basic Concept

• ANN born from the demand of machine learning; computer learns from experience, examples and analogy.

• Simple concept : computer attempts to model the human brain.

• Also known as parallel distributed processors.• Why we need an intelligent processor or

computer to replace current technology? – To decide intelligently and interact accordingly.

Page 5: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Human Brain; biological NN

SOMA

SOMA

Synapses; connection between neutrons

Dendrites;Received information

Axon;sends information

NEURONPlasticity : Neurons heading to right answer are strengthen and for the wrong answer is weakened.

Learning from experience!

Page 6: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

LearningIN

PUT

SIGN

ALS

OU

TPU

T SI

GNAL

S

INPUT LAYER OUTPUT LAYERMIDDLE LAYER

ANN Architecture

Page 7: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Learning

• Synapses has their own weight to express the importance of input.

• ANN learns through iterated adjustment from synapses weight.

• Weight is adjusted to cope with the output environment regarding about its network input/output behavior.

• Each neutron computes its activation level based on the I/O numerical weights.

• The output of a neuron might be the final solution or the input to other networks.

Page 8: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

How to design ANN?

• Decide how many neurons to be used.• How the connections between neurons are

constructed? How many layers needed?• Which learning algorithm to be apply?• Train the ANN by initialize the weight and

update the weights from training sets.

Page 9: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

ANN characteristicsAdvantages:• A neural network can perform tasks that a linear program can not.• When an element of the neural network fails, it can continue without any

problem by their parallel nature.• A neural network learns and does not need to be reprogrammed.• It can be implemented in any application.• It can be implemented without any problem.

Disadvantages:• The neural network needs training to operate.• The architecture of a neural network is different from the architecture of

microprocessors therefore needs to be emulated.• Requires high processing time for large neural networks.

Page 10: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Todays Lesson

• 4.3 ANN Model• 4.4 ANN Learning• 4.5 Simple ANN

• LO1 : LAble to understand basic concept of biases, thresholds and linear separability

• LO2 : Able to analyze simple ANN (Perceptrons)

Page 11: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Examples of ANN

Page 12: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Categorization

Feedforward• All signals flow in one direction only, i.e. from lower • layers (input) to upper layers (output)Feedback• Signals from neurons in upper layers are fed back • to either its own or to neurons in lower layers.Cellular• Connected in a cellular manner.

Page 13: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Exercise• Construct 4 artificial neurons

– 2 neurons on the input and 2 neurons on the output• Each arrow has its own weight.• Those weight is multiplied to each value going through each arrow - what this

process define?• If there is only ONE (1) input and a weight, so the output will be the multiplication of

both. For more than ONE (1) input and weights, then the neuron will sum up the values.

• Consider the weight is ONE (1) for each arrow and set the input to be (0,0), (0,1), (1,1), (1,-1), (-1,1).

• What happens? • Change the weight randomly and differently between -0.5 to 0.5 to each arrows.

What happens? • Try changing the weight again other than above weights. • Observed what happen.

Page 14: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

ANN Learning

• In all of the neural paradigms, the application of an ANN involves two phases:– (1) Learning phase (pengajaran)– (2) Recall phase (penggunaan)

• In the learning phase (usually offline) the ANN is trained until it has learned its tasks (through the adaptation of its weights)

• The recall phase is used to solve the task.

Page 15: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

ANN Learning• An ANN solves a task when its weights are adapted through a

learning phase.• All neural networks have to be trained before they can be

used.• They are given training patterns and their weights are

adjusted iteratively until an error function is minimized.• Once the ANN has been trained no more training is needed.• Two types of learning prevailed in ANNs:

– Supervised learning:- learning with teacher signals or targets– Unsupervised learning:- learning without the use of teacher signals

Page 16: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Supervised Learning• In supervised learning the training patterns are provided to the

ANN together with a teaching signal or target. • The difference between the ANN output and the target is the

error signal.• Initially the output of the ANN gives a large error during the

learning phase.• The error is then minimized through continuous adaptation of

the weights to solve the problem through a learning algorithm.• In the end when the error becomes very small, the ANN is

assumed to have learned the task and training is stopped.• It can then be used to solve the task in the recall phase.

Page 17: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Supervised Learning

Matching the I/O pattern

Page 18: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Unsupervised Learning• In unsupervised learning, the ANN is trained without teaching signals or

targets.• It is only supplied with examples of the input patterns that it will solve

eventually.• The ANN usually has an auxilliary cost function which needs to be

minimized like an energy function, distance, etc.• Usually a neuron is designated as a “winner” from similarities in the

input patterns through competition.• The weights of the ANN are modified where a cost function is

minimized.• At the end of the learning phase, the weights would have been adapted

in such a manner such that similar patterns are clustered into a particular node.

Page 19: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

ANN paradigm• There are a number of ANN paradigms developed over the past

few decades.• These ANN paradigms are mainly distinguished through their

different learning algorithms rather than their models.• Some ANN paradigms are named after their proposer such as

Hopfield, Kohonen, etc. • Most ANNs are named after their learning algorithm such as

Backpropagation, Competitive learning, Counter propagation, ART, etc. and some are named after their model such as BAM,

• Basically a particular ANN can be divided into either a feedforward or a feedback model and into either a supervised or unsupervised learning mode.

Page 20: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

ANN Classifications

Page 21: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

ANN Performance

• The performance of an ANN is described by the figure of merit, which expresses the number of recalled patterns when input patterns are applied, that could be complete, partially complete, or even noisy.

• A 100% performance in recalled patterns means that for every trained input stimulus signal, the ANN always produces the desired output pattern.

Page 22: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

ANN Performance

Page 23: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Basis of ANN computing idea• Neuron computes the input signals and compares the result

with a threshold value, θ. • If the input is less than θ, then the neuron output is -1,

otherwise +1.• Hence, the following activation function(sign function) is used,

where X is the net weighted input to neuron, xi is the i input value, wi is the weight of input i . n is the number of neuron input and Y is the neuron output.

𝑋=∑𝑖=1

𝑛

𝑥 𝑖𝑤𝑖𝑌={+1𝑖𝑓 𝑋 ≥𝜃

−1 𝑖𝑓 𝑋<𝜃 } 𝑌=𝑠𝑖𝑔𝑛[¿∑𝑖=1

𝑛

𝑥 𝑖𝑤 𝑖  −𝜃 ]

Page 24: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Other types of activation function

Y

X

+1

-10

Y

X

+1

-10

Y

X

+1

-10

Y

X

+1

-10

Stepfunction

Signfunction

Sigmoidfunction

Linearfunction

𝑌 𝑠𝑖𝑔𝑛={+1, 𝑖𝑓 𝑋 ≥ 0−1 , 𝑖𝑓 𝑋<0}

𝑌 𝑠𝑡𝑒𝑝={+1 ,𝑖𝑓 𝑋 ≥ 00 ,𝑖𝑓 𝑋<0 } 𝑌 𝑠𝑖𝑔𝑚𝑜𝑖𝑑=

11+𝑒−𝑋

X

Page 25: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Simple ANN: A Perceptron• Perceptron is used to classify input in

two classes; e.g class A1 or A2.• A linear separable function is used to

divide the n-dimensional space as follows;

• Say, 2 inputs, then we have a characteristics as shown on left figure. θ is used to shift the bound.

• Three dimensional states is also possible to be view.

∑𝑖=1

𝑛

𝑥 𝑖𝑤𝑖−𝜃=0

x2

x10

2

1

Page 26: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Simple Perceptron

x1

x2

w1

w2θ

Inputs

Output/bias

Hardlimiter

Threshold

LinearCombiner

Must be boolean!

Page 27: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Different training pattern based on weights defined

• Note that p1 and p2 are incorrectly being determined• p1 target is t=1 and p2 target is t=-1

Decisionboundary

Page 28: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Learning: Classification• Learning is done by adjusting the actual output Y to meet

the desired output Yd.• Usually, the initial weight is adjust between -0.5 to 0.5. At

iteration k of the training example, we have the error e as

• If the error is positive, the weight must be decrease and otherwise must be increase.

• Perceptron learning rule also can be obtained where

α is the learning rate and 0< α<1.

𝑒 (𝑘)=𝑌 𝑑(𝑘)−𝑌 (𝑘)

𝑤𝑖 (𝑘+1 )=𝑤𝑖 (𝑘 )+∝×𝑥 𝑖(𝑘)×𝑒 (𝑘)

Page 29: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Training algorithm• Step 1: Initialization

– Set initial weight wi between [-0.5,0.5]and θ.

• Step 2: Activation– Perceptron activation at iteration 1 for each input and a specific Yd. e.g for

a step activation function we have

• Step 3: Weight training– Perceptron weight is updated by

where = α X xi(p) X e(p)

• Step 4: Iteration– Next iteration at time k+1 and go to step 2 again.

Page 30: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Example

• Consider truth table of AND operation

• How ANN of a single perceptron can be trained?• Consider a step activation function in this

example.

Input x1 Input x2 AND (x1 ∩ x2)0 0 00 1 01 0 01 1 1

Threshold, θ = 0.2Learning rate,α = 0.1

Page 31: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Epoch Input x1

Input x2

Desired output

yd

Initial weight

w1

Initial weight

w2

Actual Output

Y

Error, e

Final weight

w1

Final weight

w2

1 0 0 0 0.3 -0.1 0 0 0.3 -0.1

0 1 0 0.3 -0.1 0 0 0.3 -0.1

1 0 0 0.3 -0.1 1 -1 0.2 -0.1

1 1 1 0.2 -0.1 0 1 0.3 0.0

𝑌 (𝑝 )=𝑠𝑡𝑒𝑝[∑𝑖=1

𝑛

𝑥 𝑖 (𝑝 )𝑤 𝑖 (𝑝) −𝜃 ]where = α x xi(p) x e(p)

The epoch continues until the weights are converging to a steady state values.

Page 32: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Now consider this problem

• Design a robot gripper system using the simple perceptron approach.

• There are three inputs; supply voltage, applied force and orientation angle.

• The output will be whether the gripper is open or close.

• Write only two epoch for this problem.

Page 33: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Todays Lesson

• 4.3 ANN Model• 4.4 ANN Learning• 4.5 Simple ANN

• LO1 : Able to understand basic concept of biases, thresholds and linear separability

• LO2 : Able to analyze simple ANN (Perceptrons)

Page 34: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Todays Lesson

• 4.6 Multilayer Neural Networks & Backpropagation Algorithm

• LO1 : Able to understand basic concept of biases, thresholds and linear separability

• LO2 : Able to analyze simple ANN (Perceptrons)

Page 35: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Multilayer neural networks

• Multilayer NN-feedforward neural network with one or more hidden layer.

• Model consists of input layer, middle or hidden layer and an output layer.

• Why hidden layer is important?– Input layer only receives input signal– Output layer only display the output patterns.– Hidden layer process the input signals; weight

represents feature of inputs.

Page 36: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Multilayer NN model

x1

x2

Inputs

x3

1st hidden layer

2nd hidden layer

Output

Page 37: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Multilayer Neural Network learning

• Multilayer NN learns through a learning algorithm; the popular one is BACK-PROPAGATION.

• The computations are similar to a simple perceptron.

• Back-propagation has two phases; – Input layer demonstrates the training input pattern

and then propagates from layer to layer to output.– The calculation for error will notify the system to

modified the weights appropriately.

Page 38: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Back-propagation

• Each neurons must be connected to each other.

• Calculations– Same as a simple perceptron case.

• Typically, sigmoid function is used in Multilayer NN.

Page 39: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Let’s look for a case

i j kinputs output

xiyi

Error signalsInput signals

lmn

wij wjk

Page 40: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Understand more, learns more

• Error propagation starts from output layer back to hidden layer.

• How to calculate error signals at layer k?• How about calculation to update the weights at

layer k?– Weight correction; – or – In sigmoid function, where

Page 41: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Weight correction in hidden layer

• We use the same technique to find the weight in hidden layer.

Page 42: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Step for calculations

• Step 1 : Initialization– Set weights and threshold randomly within a

small range• Step 2 : Activation

– Use sigmoid activation function at hidden layer and output layer

– Hidden layer;

– Output layer;

Page 43: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Step for calculations• Step 3 : Weight training

– Calculating error gradient in output layer

where

Update ; – Calculating error gradient in hidden layer

Update ;

• Step 4 : Iteration– Back to step 2 and repeat process until selected error criterion is satisfied.

Page 44: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

When does the training process stop?

• Training process stop until the sum of squared error for the output y is less than a prescribed value; 0.001.

• Sum of squared error : performance indicator of the system.

• The smaller, the better the system performance.

Page 45: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

More about back-propagation

• Different initial weights and threshold may have different solution, but we still have the solutions.

• The decisions boundaries can be view if we use the sign activation function.

• Drawbacks of back-propagation– Not suitable for biological neurons; to adjust the

neurons weight.– Computational expensive– Slow training

Page 46: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Todays Lesson

• 4.6 Multilayer Neural Networks & Backpropagation Algorithm

• LO1 : Able to understand basic concept of biases, thresholds and linear separability

Page 47: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Sigmoid function characteristics• The sigmoid activation function with different values c.• When c is large, the sigmoid becomes like a threshold function and

when is c small, the sigmoid becomes more like a straight line (linear).

• When c is large learning is much faster but a lot of information is lost, however when c is small, learning is very slow but information is retained.

• Because this function is differentiable, it enables the B.P. algorithm to adapt the lower layers of weights in a multilayer neural network.

• Because this function is differentiable, it enables the B.P. algorithm to adapt the lower layers of weights in a multilayer neural network.

Page 48: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Back-propagation: Learning mode• Before the BP can be used, it requires target patterns or signals as

it a supervised learning algorithm.• Training patterns are obtained from the samples of the types of

inputs to be given to the multilayer neural network and their answers are identified by the researcher.

• Examples of training patterns are samples of handwritten characters, process data, etc. following the tasks to be solved.

• The configuration for training a neural network using the BP algorithm is shown in the figure below in which the training is done offline.

• The objective is to minimize the error between the target and actual output and to find ∆w.

Page 49: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

BP: Learning mode

• The error is calculated at every iteration and is backpropagated through the layers of the ANN to adapt the weights.

• The weights are adapted such that the error is minimized.

• Once the error has reached a justified minimum value, the training is stopped, and the neural network is reconfigured in the recall mode to solve the task.

Page 50: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Error gradient

Page 51: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Examples

Page 52: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Consider other techniqueSigmoid function; f(x) = (1+e-x)-1

f(x) = xThe error signals are as follows.

δk = Lk (1- Lk )( tk - Lk )δj = Lj (1- Lj ) ∑k δk wkj

Adaptions of weights are defined as below.∆wkj( t + 1) = η δk Lj + α∆wkj( t )∆wji( t + 1) = η δj Li + α∆wji( t )

Page 53: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

XOR PROBLEM

Page 54: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

In this example, θ is not available!

Page 55: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Page 56: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Page 57: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Page 58: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

Page 59: BEE4333 Intelligent Control

Copyright ofHamzah AhmadFKEE, UMP

∆Wji(t+1) = 0.1 X (-0.0035) X 0 + (0.9 X 0) = 0

Wj01(t+1) = 0.55 + (0) = 0.55Wj02(t+1) = 0.15 + (0) = 0.15