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.
What Happened?
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 by
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?
12- 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
14The Perceptron
input1
weight1
input2
weight2
add
output
weight3
(threshold)
weight4
input3
input4
15The Perceptron
input1
weight1
input2
weight2
add
output
weight3
(threshold)
weight4
input3
Save Graph and Data
input4
16The Perceptron
Save Graph and Data
Note example from Alison Cawsey
17The Perceptron
First last year _
0.2
add
_ output
Male _
0.2
Threshold 0.5
0.2
0.2
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
18The Perceptron
First last year _
0.15
add
_ output
0.15
Male _
Threshold 0.5
0.2
0.15
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
19The Perceptron
First last year _
0.15
add
_ output
0.15
Male _
Threshold 0.5
0.2
0.15
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
20The Perceptron
First last year _
0.2
add
_ output
Male _
0.2
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
21The Perceptron
First last year _
0.2
add
_ output
Male _
0.2
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
22The Perceptron
First last year _
0.2
add
_ output
Male _
0.2
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
23The Perceptron
First last year _
0.2
add
_ output
Male _
0.2
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
24The Perceptron
First last year _
0.2
add
_ output
Male _
0.2
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
25The Perceptron
First last year _
0.2
add
_ output
0.15
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
26The Perceptron
First last year _
0.2
add
_ output
0.15
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
27The Perceptron
First last year _
0.2
add
_ output
0.15
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
28The Perceptron
First last year _
0.2
add
_ output
0.15
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
29The Perceptron
First last year _
0.2
add
_ output
0.15
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
30The Perceptron
First last year _
0.2
add
_ output
0.15
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
31The Perceptron
First last year _
0.25
add
_ output
0.15
Male _
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
32The Perceptron
First last year _
0.25
add
_ output
0.15
Male _
0.25
Threshold 0.5
0.15
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
33The Perceptron
First last year _
0.25
add
_ output
0.10
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
34The Perceptron
First last year _
0.25
add
_ output
0.10
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
35The Perceptron
First last year _
0.25
add
_ output
0.10
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
- Finished
- Ready to try unseen examples
Note example from Alison Cawsey
36The Perceptron
First last year _
0.25
add
_ output
0.10
Male _
0.20
Threshold 0.5
0.10
_ hardworking
_ Lives in halls
Note example from Alison Cawsey
37The Perceptron
0.25
_ output
0.10
add
0.20
Threshold 0.5
0.10
- 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
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
- Note most images are from the online slides for
Tom Mitchells book Machine Learning
43ALVINN
Sharp right
Straight ahead
Sharp left
30 output units
4 hidden units
1 input pixel
Input is 30x32 pixels 960 values
44ALVINN
Sharp right
Straight ahead
Sharp left
30 output units
4 hidden units
Learning means adjusting weight values
1 input pixel
Input is 30x32 pixels 960 values
45ALVINN
Sharp right
Straight ahead
Sharp left
30 output units
4 hidden units
1 input pixel
Input is 30x32 pixels 960 values
46ALVINN
47ALVINN
- 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
48ALVINN
- 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
- 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
- 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
- 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
63Disadvantages?
- 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 - Logical rules would be easier to understand