on-line novelty detection with application to mobile robotics stephen marsland imaging science and...
TRANSCRIPT
On-line Novelty Detection
With Application to Mobile Robotics
Stephen Marsland
Imaging Science and Biomedical Engineering
University of Manchester
Novelty Detection
Highlighting inputs that differ in some way from the ‘normal’ stream of inputs
Novelty Detection in Animals
• Detect unusual stimuli– reduce the amount of
information that needs to be processed
– enables the animal to focus on important information
– helps avoid predators
Novelty Detection in Artificial Learning Systems
• Detect unusual stimuli– reduce the amount of information that needs
to be processed– enables the learner to focus on important
information– helps avoid predators!
…
Novelty Detection in Artificial Learning Systems
• Detect unusual stimuli– Reduce the amount the system has to learn
• Detect anomalies in a datastream
• Detect when class pdfs or mixture ratios change
• Detect when a new class appears
Statistical Outlier Detection
Statistical Outlier Detection
Statistical Outlier Detection
Statistical Outlier Detection
Novelty Detection in Artificial Learning Systems
• Applications include:
– Machine fault monitoring
– Medical diagnosis
– Inspection agent
– Pre-processing for inputs
Approach
• Learn a representation of normality
• Evaluate how well each input fits into the acquired model
• Highlight those inputs that are not well represented by the model
p(x|C1)P(C1)
p(x|C2)P(C2)
Requirements
• Learning algorithm
• Method of evaluating the novelty of a new input
• Some parameter tuning (how much should the learning algorithm generalise)
Possible Approaches:Auto-assocative network
Possible Approaches: Auto-assocative network
• Learn to reproduce inputs at the outputs, so that the bottleneck learns a lower dimensional representation - principal components
• After training, will settle to a trained input, and subtracting the input from the output shows the novelty in the current input
Possible Approaches: Mixtures of Gaussians
• Train a Gaussian Mixture Model to represent the training data (simple using EM)
• Look for input points that are not contained within any of the mixtures
How Do Animals Detect Novelty?
• Habituation• Reduction in synaptic efficacy when a
stimulus is seen repeatedly without ill effect
Habituation
• Simple to model
• Gives a method of deciding how familiar an input is – how frequently has it been seen before
• This is what is needed for novelty detection
Habituation
Novelty Detection Using Habituation
• Some form of clustering algorithm• Learn a model of inputs• Habituate those nodes that fire frequently
and therefore recognise familiar features
• If an input causes an unhabituated node to fire it is novel
• If an input is not represented by the network it is novel
Focus: Inspection
• Train a robot to recognise all of the normal features of some environment, as perceived by the robot’s sensors
• Any features that are not recognised by the system (novelties) are possible faults
Requirements for Novelty Detection Inspection
• On-line learning
• Robustness to some ‘novel’ inputs
• Quantification of the amount of novelty in each input
• Environment specificity
The ‘Grow When Required’ Network
• A self-organising neural network that can operate on-line
• Produces perfectly-topology preserving maps
• Has novelty detection capability built in through habituating synapses
• Is similar to, but derived independently from, FOSART – Baraldi & Alpaydin
The ‘Grow When Required’ Network
The ‘Grow When Required’ Network
The ‘Grow When Required’ Network
The ‘Grow When Required’ Network
Topology Preservation
Topology Preservation
5,000 inputs 15,000 inputs
Topology Preservation
25,000 inputs 35,000 inputs
Using the GWR as a Novelty Filter
Using the GWR as a Novelty Filter
Using the GWR as a Novelty Filter
Training a Filter
• Start with an empty GWR network
• As the robot travels down the corridor, sensory perceptions as taken as inputs to the network
• The network adapts to learn about each new input and assesses them for novelty
• It may take a few runs to learn about an environment
Inspection Using Novelty Detection
16 sonar sensors
16 IR sensors
Bumpers
Monochrome camera
Inspection Using Novelty Detection
Environment A
Inspection Using Novelty Detection
Inspection Using Novelty Detection
Inspection Using Novelty Detection
Inspection Using Novelty Detection
Environment B Environment C
Inspection Using Novelty Detection
Inspection Using Novelty Detection
Forgetting
Why Not Just Use the Self-Organising Map?
Small SOM
Large SOM
GWR
Using Visual Input
• Sonar inputs are fairly low dimensional, and do not provide that much information about the environment
• Can also consider using a camera
• The camera mounted on the robot is a low resolution monochrome camera
The Visual Magnet
• Ensure that the robot faces in the same direction each time that it is one position
• Perform edge detection, generate a histogram and rotate the turret of the robot to centre the largest element of the histogram
• Works approximately 75% of the time
Generating an Input Vector
• Plenty of choice:– Edge detection histograms– Principal component filters– Raw image– ‘Fingerprint’ – subset of image pixels chosen
in some way
• All are essentially hacks
Visual Inspection
Principal Component Filters Spiral ‘Fingerprint’
Visual Inspection
Spiral ‘Fingerprint’
“…the novelty of the wife in the best friend’s bed lies neither in the wife, the friend, nor the bed, but in the conjunction of the three.”
O’Keefe and Nadel, 1978
Requirements for Novelty Detection Inspection
Selecting Different Novelty Filters
• A bank of novelty filters are used, with each one trained in a different environment
• A set of familiarity vectors keep a record of how well each novelty filter recognises the current perceptions
Selecting Different Novelty Filters
• For each input:– For each filter:
• Compute the output of each novelty filter• Reduce the element of the familiarity vector
for the filter proportional to the output• Increase the elements of the familiarity
vector for every other filter so that the sum remains normalised
Selecting a Filter
Adding New Filters
• What if none of the filters represents an environment well?– Total novelty is very high– Several of the filters have similar familiarity
scores
• Can then automatically add a new filter and train it in that environment
Adding New Filters
Other Applications
• Ball-bearings• Medical• Landmark selection
Conclusions• Novelty detection is a useful capability for
learning systems• The GWR network enables on-line novelty
detection and hence, robot inspection• Several filters trained in different
environments provides environment-specific novelty detection, with the system deciding which environment it is currently in
• The system can train new filters as required
On-line Novelty Detection
With Application to Mobile Robotics
Stephen Marsland Imaging Science and Biomedical Engineering
University of [email protected]
http://www.isbe.man.ac.uk/~srm/