manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key...

33
Advanced Perception David R. Thompson manifold learning with applications to object recognition

Transcript of manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key...

Page 1: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Advanced Perception David R. Thompson

manifold learning with applications to object recognition

Page 2: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

1. why learn manifolds?

2. Isomap

3. LLE

4. applications

agenda

Page 3: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

types of manifolds

exhaust manifold

low-D surface embedded in high-D space

Sir Walter Synnot Manifold

1849-1928

Page 4: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Find a low-D basis for describing high-D data. X → X' S.T. dim(X') << dim(X)

uncovers the intrinsic dimensionality (invertible)

manifold learning

Page 5: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

plenoptic function / motion / occlusion

manifolds in vision

Page 6: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

appearance variation

manifolds in vision

images from hormel corp.

Page 7: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

deformation

manifolds in vision

images from www.golfswingphotos.com

Page 8: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

1. data compression

2. “curse of dimensionality”

3. de-noising

4. visualization

5. reasonable distance metrics *

why do manifold learning?

Page 9: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

reasonable distance metrics

Page 10: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

reasonable distance metrics

Page 11: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

reasonable distance metrics

?

Page 12: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

reasonable distance metrics

?

linear interpolation

Page 13: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

reasonable distance metrics

?

manifold interpolation

Page 14: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

1. why learn manifolds?

2. Isomap

3. LLE

4. applications

agenda

Page 15: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Isomap For n data points, and a distance matrix D,

Dij =

...we can construct a m-dimensional space to preserve inter-point distances by using the top eigenvectors of D scaled by their eigenvalues.

yi= [ λ

1v

1i , λ

2v

2i , ... , λ

mv

mi ]

j

i

Page 16: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Infer a distance matrix using distances along the manifold.

Isomap

Page 17: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Isomap 1. Build a sparse graph with K-nearest neighbors

Dg =

(distance matrix issparse)

Page 18: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Isomap 2. Infer other interpoint distances by finding shortest paths on the graph (Dijkstra's algorithm).

Dg =

Page 19: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Isomap 3. Build a low-D embedded space to best preserve the complete distance matrix.

Error function:

Solution – set points Y to top eigenvectors of Dg

L2 norm

inner product distances in new coordinate system

inner product distances in graph

Page 20: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Isomap shortest-distance on a graph is easy to compute

Page 21: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Isomap results: hands

Page 22: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

- preserves global structure

- few free parameters

- sensitive to noise, noise edges

- computationally expensive (dense matrix eigen-reduction)

Isomap: pro and con

Page 23: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Find a mapping to preserve local linear relationships between neighbors

Locally Linear Embedding

Page 24: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Locally Linear Embedding

Page 25: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

1. Find weight matrix W of linear coefficients:

Enforce sum-to-one constraint with the Lagrange Multiplier:

LLE: Two key steps

Page 26: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

2. Find projected vectors Y to minimize reconstruction error

must solve for whole dataset simultaneously

LLE: Two key steps

Page 27: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

We add constraints to prevent multiple / degenerate solutions:

LLE: Two key steps

Page 28: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

cost function becomes:

the optimal embedded coordinates are given by bottom m+1 eigenvectors of the matrix M

LLE: Two key steps

Page 29: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

LLE: Result preserves local topology

PCA

LLE

Page 30: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

- no local minima, one free parameter - incremental & fast

- simple linear algebra operations

- can distort global structure

LLE: pro and con

Page 31: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

● Laplacian Eigenmaps (Belkin 2001)● spectral method similar to LLE● better preserves clusters in data

● Kernel PCA

● Kohonen Self-Organizing Map (Kohonen, 1990)

● iterative algorithm fits a network of pre-defined connectivity

● simple, fast for on-line learning● local minima● lacking theoretical justification

Others you may encounter

Page 32: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

the “curvier” your manifold, the denser your data must be

No Free Lunch

bad OK!

Page 33: manifold learning - People @ EECS at UC Berkeleyefros/courses/AP... · Manifold learning is a key tool in your object recognition toolbox A formal framework for many different ad-hoc

Manifold learning is a key tool in your object recognition toolbox

A formal framework for many different ad-hoc object recognition techniques

conclusions