Title: Artificial Intelligence In the Real World
1Artificial IntelligenceIn the Real World
Computing Science University of Aberdeen
2Artificial IntelligenceIn the Real World
Artificial IntelligenceIn the Movies
3Artificial IntelligenceIn the Real World
Artificial IntelligenceIn the Movies
4Artificial IntelligenceIn the Real World
Artificial IntelligenceIn the Movies
?
5Artificial Intelligence Began in 1956
Machines will be capable, within twenty years,
of doing any work that a man can do. Herbert
Simon, 1965.
6Machines will be capable, within twenty years,
of doing any work that a man can do. Herbert
Simon, 1965.
7Machines will be capable, within twenty years,
of doing any work that a man can do. Herbert
Simon, 1965.
- What Happened?
- Machines cant do everything a man can do
- People thought machines could replace
humansinstead they are usually supporting
humans
8Machines will be capable, within twenty years,
of doing any work that a man can do. Herbert
Simon, 1965.
- What Happened?
- Machines cant do everything a man can do
- People thought machines could replace
humansinstead they are usually supporting
humans - Healthcare, Science, Government, Business,
Military
9Machines will be capable, within twenty years,
of doing any work that a man can do. Herbert
Simon, 1965.
- What Happened?
- Machines cant do everything a man can do
- People thought machines could replace
humansinstead they are usually supporting
humans - Healthcare, Science, Government, Business,
Military - Most difficult problems are solved my
humanmachine - astronomy, nuclear physics, genetics, maths, drug
discovery
10Neural Networks
- Neural Networks are a popular Artificial
Intelligence technique - Used in many applications which help humans
- The idea comes from trying to copy the human
brain
11Fascinating Brain Facts
- 100,000,000,000 1011 neurons
- 100 000 are irretrievably lost each day
- Each neuron connects to 10,000 -150,000 others
- Every person on planet make 200 000 phone calls
- same number of connections as in a single human
brain in a day - Grey part folded to fit - would cover surface of
office desk - The gray cells occupy only 5 of our brains
- 95 is taken up by the communication network
between them - About 2x106km of wiring (to the moon and back
twice) - Pulses travel at more than 400 km/h (250 mph)
- 2 of body weight but consumes 20 of oxygen
- All the time! Even when sleeping
- What about copying neurons in Computers?
12Biological Inspiration
- Artificial Neural Network (ANN)
- loosely based on biological neuron
- Each unit is simple, but many connected in a
complex network - If enough inputs are received
- Neuron gets excited
- Passes on a signal, or fires
- ANN different to biological
- ANN outputs a single value
- Biological neuron sends out a complex series of
spikes - Biological neurons not fully understood
Image from Purves et al., Life The Science of
Biology, 4th Edition, by Sinauer Associates and
WH Freeman
13- Now play with the flash animation to see how
synapses work
http//www.mind.ilstu.edu/curriculum/neurons_intro
/flash_summary.php?modGUI232compGUI1828itemGUI
3160
(Maybe this is a bit too long about 3 or 4
mins)
14The Perceptron
input1
weight1
weight2
add
output
input2
weight3
(threshold)
weight4
input3
input4
15The Perceptron
input1
weight1
weight2
add
output
input2
weight3
(threshold)
weight4
input3
input4
Save Graph and Data
16The Perceptron
student first last year male works hard Lives in halls First this year
1 Richard 1 1 0 1 0
2 Alan 1 1 1 0 1
3 Alison 0 0 1 0 0
4 Jeff 0 1 0 1 0
5 Gail 1 0 1 1 1
6 Simon 0 1 1 1 0
Save Graph and Data
Note example from Alison Cawsey
17The Perceptron
First last year _
0.2
add
0.2
_ output
Male _
0.2
Threshold 0.5
0.2
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
1 Richard 1 1 0 1 0
Note example from Alison Cawsey
18The Perceptron
First last year _
0.15
0.15
add
_ output
Male _
0.2
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
1 Richard 1 1 0 1 0
Note example from Alison Cawsey
19The Perceptron
First last year _
0.15
0.15
add
_ output
Male _
0.2
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
2 Alan 1 1 1 0 1
Note example from Alison Cawsey
20The Perceptron
First last year _
0.2
add
0.2
_ output
Male _
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
2 Alan 1 1 1 0 1
Note example from Alison Cawsey
21The Perceptron
First last year _
0.2
add
0.2
_ output
Male _
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
3 Alison 0 0 1 0 0
Note example from Alison Cawsey
22The Perceptron
First last year _
0.2
add
0.2
_ output
Male _
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
4 Jeff 0 1 0 1 0
Note example from Alison Cawsey
23The Perceptron
First last year _
0.2
add
0.2
_ output
Male _
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
5 Gail 1 0 1 1 1
Note example from Alison Cawsey
24The Perceptron
First last year _
0.2
add
0.2
_ output
Male _
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
6 Simon 0 1 1 1 0
Note example from Alison Cawsey
25The Perceptron
First last year _
0.2
0.15
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
6 Simon 0 1 1 1 0
Note example from Alison Cawsey
26The Perceptron
First last year _
0.2
0.15
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
1 Richard 1 1 0 1 0
Note example from Alison Cawsey
27The Perceptron
First last year _
0.2
0.15
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
2 Alan 1 1 1 0 1
Note example from Alison Cawsey
28The Perceptron
First last year _
0.2
0.15
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
3 Alison 0 0 1 0 0
Note example from Alison Cawsey
29The Perceptron
First last year _
0.2
0.15
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
4 Jeff 0 1 0 1 0
Note example from Alison Cawsey
30The Perceptron
First last year _
0.2
0.15
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
5 Gail 1 0 1 1 1
Note example from Alison Cawsey
31The Perceptron
First last year _
0.25
0.15
add
_ output
Male _
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
5 Gail 1 0 1 1 1
Note example from Alison Cawsey
32The Perceptron
First last year _
0.25
0.15
add
_ output
Male _
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
6 Simon 0 1 1 1 0
Note example from Alison Cawsey
33The Perceptron
First last year _
0.25
0.10
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
6 Simon 0 1 1 1 0
Note example from Alison Cawsey
34The Perceptron
First last year _
0.25
0.10
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
35The Perceptron
First last year _
0.25
0.10
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
- Finished
- Ready to try unseen examples
36The Perceptron
First last year _
0.25
0.10
add
_ output
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
student first last year male works hard Lives in halls First this year
James 0 1 0 1 ?
37The Perceptron
- Simple perceptron works ok for this example
- But sometimes will never find weights that fit
everything - In our example
- Important Getting a first last year, Being
hardworking - Not so important Male, Living in halls
- Suppose there was an exclusive or
- Important (male) OR (live in halls), but not
both - Cant capture this relationship
38Stock Exchange Example
Company Name Company less than 2 years old Paid dividend gt10 last year Share price increases in following year
1 Robot Components Ltd. 1 1 0
2 Silicon Devices 1 0 1
3 Bleeding Edge Software 0 0 0
4 Human Interfaces Inc. 1 1 0
5 Data Management Inc. 0 1 1
6 Intelligent Systems 1 1 0
39Multilayer Networks
- We saw perceptron cant capture relationships
among inputs - Multilayer networks can capture complicated
relationships
40Stock Exchange Example
Hidden Layer
41Neural Net example ALVINN
- Autonomous vehicle controlled by Artificial
Neural Network - Drives up to 70mph on public highways
Note most images are from the online slides for
Tom Mitchells book Machine Learning
42Neural Net example ALVINN
- Autonomous vehicle controlled by Artificial
Neural Network - Drives up to 70mph on public highways
43Neural Net example ALVINN
Sharp left
Sharp right
Straight ahead
30 output units
4 hidden units
1 input pixel
Input is 30x32 pixels 960 values
44Neural Net example ALVINN
Sharp left
Sharp right
Straight ahead
30 output units
4 hidden units
Learning means adjusting weight values
1 input pixel
Input is 30x32 pixels 960 values
45Neural Net example ALVINN
Sharp left
Sharp right
Straight ahead
30 output units
4 hidden units
1 input pixel
Input is 30x32 pixels 960 values
46Neural Net example ALVINN
47Neural Net example ALVINN
- This shows one hidden node
- Input is 30x32 array of pixel values
- 960 values
- Note no special visual processing
- Size/colour corresponds to weight on link
48Neural Net example ALVINN
- Output is array of 30 values
- This corresponds to steering instructions
- E.g. hard left, hard right
- This shows one hidden node
- Input is 30x32 array of pixel values
- 960 values
- Note no special visual processing
- Size/colour corresponds to weight on link
49- Lets try a more complicated example with the
program - In this example well get the program to help us
to build the neural network
50Neural Network Applications
- Particularly good for pattern recognition
51Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
52Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
53Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
- Image recognition (e.g. human faces)
54Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
- Image recognition (e.g. human faces)
- Robot control - hand-arm-block.mpg
55Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
- Image recognition (e.g. human faces)
- Robot control
- ECG pattern had a heart attack?
56Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
- Image recognition (e.g. human faces)
- Robot control
- ECG pattern had a heart attack?
- Application for credit card or mortgage
57Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
- Image recognition (e.g. human faces)
- Robot control
- ECG pattern had a heart attack?
- Application for credit card or mortgage
- Data Mining on Customers
58Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
- Image recognition (e.g. human faces)
- Robot control
- ECG pattern had a heart attack?
- Application for credit card or mortgage
- Data Mining on Customers
- Other types of Data Mining - Science
59Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
- Image recognition (e.g. human faces)
- Robot control
- ECG pattern had a heart attack?
- Application for credit card or mortgage
- Data Mining on Customers
- Other types of Data Mining
- Spam filtering
60Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
- Image recognition (e.g. human faces)
- Robot control
- ECG pattern had a heart attack?
- Application for credit card or mortgage
- Data Mining on Customers
- Other types of Data Mining
- Spam filtering
- Shape in Go
61Neural Network Applications
- Particularly good for pattern recognition
- Sound recognition voice, or medical
- Character recognition (typed or handwritten)
- Image recognition (e.g. human faces)
- Robot control
- ECG pattern had a heart attack?
- Application for credit card or mortgage
- Data Mining on Customers
- Other types of Data Mining
- Spam filtering
- Shape in Go and many more!
62What are Neural Networks Good For?
- When training data is noisy, or inaccurate
- E.g. camera or microphone inputs
- Very fast performance once network is trained
- Can accept input numbers from sensors directly
- Human doesnt need to interpret them first
63What are Neural Networks Good For?
- When training data is noisy, or inaccurate
- E.g. camera or microphone inputs
- Very fast performance once network is trained
- Can accept input numbers from sensors directly
- Human doesnt need to interpret them first
Disadvantages?
- Need a lot of data training examples
- Training time could be very long
- This is the big problem for large networks
- Network is like a black box
- A human cant look inside and understand what has
been learnt - Precise logical rules would be easier to
understand