ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Anomoly Detection
Using Hierarchical Temporal Memory and Grid Cells
The Problem
? The circle on the right is
revolving in a circle.
? Detect any anomaly in the path
the circle takes
Hierarchical Temporal Memory
? For our purpose.
? An algorithm learns to predict xt+1 from xt
? Accepts sparse binary tensors as input
? a.k.a Sparse Distributed Representation (SDR)
SDR and Encoders
? So, a SDR looks like this
SDR and Encoders
? So, a SDR looks like this
? How do we construct one
SDR and Encoders
? So, a SDR looks like this
? How do we convert
integer/numbers into one
ScalarEncoder
? The simplest encoder
? Example: Encode scalars between 0 and 100
with 400 bits.
? SDR on the right represents 54
ScalarEncoder
? The simplest encoder
? Example: Encode scalars between 0 and 100
with 400 bits.
? SDR on the right represents 54
? One SDR can represent may values
? What happens if > 100 or < 0
? Encode as 0 or 100
ScalarEncoder
? We are NOT using it here
Grid Cells
? State of the art (for real)
? ScalarEncoder suc*s
? GeoSpatialEncoder is old
Grid Cells
? A grid cell fires in a grid like pattern
? With multiple grid cell units. A unique location can be represented
Grid Cells
? Implementation:
? ~50 lines of C++
? And 2D vector math
? Won't board you with the details
? Encoding a 2D coord using such
algorithm
Grid Cells
Demo
? The circle is the target
? Location encoded with grid cells
? Shows anomaly signal when moved
out of ordinary path

More Related Content

Path anomaly detection using Hierarchical Temporal Memory