A Bayesian Hierarchical Model for Learning Natural Scene

advertisement
A Bayesian Hierarchical Model
for Learning Natural Scene
Categories
L. Fei-Fei and P. Perona. CVPR 2005
Discovering objects and their
location in images
J. Sivic, B. Russell, A. Efros, A. Zisserman and B. Freeman. ICCV 2005
Tomasz Malisiewicz
tomasz@cmu.edu
Advanced Machine Perception
February 2006
Graphical Models: Recent Trend in
Machine Learning
Describing Visual Scenes using
Transformed Dirichlet Processes.
E. Sudderth, A. Torralba, W. Freeman,
and A. Willsky. NIPS, Dec. 2005.
Outline
Goals of both vision papers
Techniques from statistical text modeling
- pLSA vs LDA
Scene Classification via LDA
Object Discovery via pLSA
Goal: Learn and Recognize Natural
Scene Categories
Classify a scene without first extracting
objects
Other techniques we know of:
-Global frequency (Oliva and Torralba)
-Texton Histogram (Renninger, Malik
et al)
Goal: Discover Object Categories
 Discover what objects are present in a collection
of images in an unsupervised way
 Find those same objects in novel images
 Determine what local image features correspond
to what objects; segmenting the image
Enter the world of Statistical Text Modeling
D. Blei, A. Ng, and M. Jordan. Latent
Dirichlet allocation. Journal of Machine
Learning Research, 3:993–1022, January
2003.
Bag-of-words approaches: the order of
words in a document can be neglected
Graphical Model Fun
Bag-of-words
A document is a collection of M words
A corpus (collection of documents) is
summarized in a term-document matrix
Object
Bag of ‘words’
1990: Latent Semantic Analysis (LSA)
Goal: map high-dimensional count vectors
to a lower dimensional representation to
reveal semantic relations between words
The lower dimensional space is called the
latent semantic space
Dim( latent space ) = K
1990: Latent Semantic Analysis (LSA)
NxM co-occurrence term-document matrix
=
NxK
topics
x
topics
NxM
M words
topics
documents
documents
words
N documents
words
KxK
x
topics
D = {d1,…,dN}
W = {w1,…,wM}
Nij = #(di,wj)
KxM
What did we just do?
Singular Value Decomposition
NxK
x
words
KxK
x
topics
=
topics
topics
NxM
topics
documents
documents
words
KxM
LSA summary
SVD on term-document matrix
Approximate N by thresholding all but the
largest K singular values in W to zero
Produces rank-K optimal approximation to
N in the L2-matrix or Frobenius norm
sense
LSA and Polysemy
According to this superposition
Polysemy:
theLSA
ambiguity
of toancapture
individual
principle,
is unable
multiplethat
senses
word (in
word or phrase
canofbea used
different contexts) to express two or more
different meanings
Under the LSA model, the coordinates of a
word in latent space can be written as a
linear superposition of the coordinates of
the documents that contain the word
Problems with LSA
LSA does not define a properly normalized
probability distribution
No obvious interpretation of the directions
in the latent space
From statistics, the utilization of L2 norm in
LSA corresponds to a Gaussian Error
assumption which is hard to justify in the
context of count variables
Polysemy problem
pLSA to the rescue
Probabilistic Latent Semantic Analysis
pLSA relies on the likelihood function of
multinomial sampling and aims at an
explicit maximization of the predictive
power of the model
pLSA to the rescue
Decomposition into Probabilities!
K
p( wi | d j )   p( wi | zk ) p( z k | d j )
k 1
Observed word
distributions
word distributions
per topic
Topic distributions
per document
Slide credit: Josef Sivic
Learning the pLSA parameters
Observed counts of
word i in document j
Unlike LSA, pLSA does not minimize any type of ‘squared deviation.’
The parameters are estimated in a probabilistically sound way.
Maximize likelihood of data using EM.
Minimize KL divergence between empirical
distribution and model
Slide credit: Josef Sivic
EM for pLSA (training on a corpus)
E-step: compute posterior probabilities for
the latent variables
M-step: maximize the expected complete
data log-likelihood
Graphical View of pLSA
pLSA is a generative model
d
Latent variables
z
Observed variables
w
Plates
Select a document di with prob P(di)
Pick latent class zk with prob P(zk|di)
Generate word wj with prob P(wj|zk)
How does pLSA deal with previously
unseen documents?
“Folding-in” Heuristic
First train on Corpus to obtain
Now re-run same training EM algorithm,
but don’t re-estimate
and let
D={dunseen}
Problems with pLSA
Not a well-defined generative model of
documents; d is a dummy index into the
list of documents in the training set (as
many values as documents)
No natural way to assign probability to a
previously unseen document
Number of parameters to be estimated
grows with size of training set
LDA to the rescue
 Latent Dirichlet Allocation treats the topic mixture
weights as a k-parameter hidden random
variable and places a Dirichlet prior on the
multinomial mixing weights
 Dirichlet distribution is conjugate to the
multinomial distribution (most natural prior to
choose: the posterior distribution is also a
Dirichlet!)
pLSA
LDA
Corpus-Level parameters in LDA
 Alpha and beta are corpus-level documents that
are sampled once in the corpus creating
generative model (outside of the plates!)
 Alpha and beta must be estimated before we
can find the topic mixing proportions belonging
to a previously unseen document
LDA
Getting rid of plates

1
z1
z2
2
z2
K
z3
zN
z1
z3
zN
z1
z3
zN
w 1 w2 w3
wN
w1 w2 w3
wN
w1 w2 w3
wN
b
Thanks to Jonathan Huang for the un-plated LDA graphic
z2
Inference in LDA
Inference = estimation of document-level
parameters
Intractable to compute  must employ
approximate inference
Approximate Inference in LDA
 Variational Methods: Use Jensen’s inequality
to obtain a lower bound on the log likelihood
that is indexed by a set of variational
parameters
Variational Methods are one way of doing this.
 Optimal
Variational
Parameters
(documentGibbs
sampling (MCMC)
is another
way.
specific) are obtained by minimizing the KL
divergence between the variational
distribution and the true posterior
Variational distribution
Look at some P(w|z) produced by LDA
Show some pLSI and LDA results applied
to text
An LDA project by Tomasz Malisiewicz
and Jonathan Huang
Search for the word ‘drive’
pLSA and LDA applied to Images
How can one apply these techniques to
the images?
Hierarchical Bayesian
text models
Probabilistic Latent Semantic Analysis (pLSA)
z
d
w
N
D
Hoffman, 2001
Latent Dirichlet Allocation (LDA)
c
D

z
w
N
Blei et al., 2001
Hierarchical Bayesian
text models
Probabilistic Latent Semantic Analysis (pLSA)
d
D
z
w
N
“face”
Sivic et al. ICCV 2005
Hierarchical Bayesian
text models
“beach”
Latent Dirichlet Allocation (LDA)
c
D

z
w
N
Fei-Fei et al. ICCV 2005
A Bayesian Hierarchical Model for Learning Natural
Scene Categories
Flow Chart: Quick Overview
How to Generate an Image?
Choose a scene (mountain, beach, …)
Given scene generate an intermediate
probability vector over ‘themes’
For each word:
Determine current theme from mixture
of themes
Draw a codeword from that theme
How to Generate an Image?
Inference
How to make decision on a novel image
Integrate over latent variables to get:
Approximate Variational Inference (not
easy, but Gibbs sampling is supposed to
be easier)
Codebook
 174 Local Image Patches
 Detection:
Evenly Sampled Grid
Random Sampling
Saliency Detector
Lowe’s DoG Detector
 Representation:
Normalized 11x11 gray values
128-dim SIFT
Results: Average performance 64%
Confusion Matrix
100 training examples and 50 test examples
Rank statistic test: the probability of a test scene correctly
belong to one of the top N most probable categories
Results: The Distributions
Theme
distribution
Codeword
distribution
The peak at 174
Summary of detection and representation
choices
SIFT outperforms pixel gray values
Sliding grid, which creates the largest
number of patches, does best
Discovering objects and their location in
images
Visual Words
 Vector Quantized SIFT descriptors computed in
regions
 Regions come from elliptical shape adaptation
around interest point, and from the maximally
stable regions of Matas et al.
 Both are elliptical regions at twice their detected
scale
Building a Vocabulary
…
Building a Vocabulary
K-means clustering of 300K regions
to get about 1K clusters for each of
Shape Adapted and Maximally Stable
regions
…
Vector quantization
Slide credit: Josef Sivic
pLSA Training
Sanity Check: Remember what quantities
must be estimated?
Results #1: Topic Discovery
This is just the training stage
4 object categories
Plus background
Obtain P(zk|dj) for each image, then
classify image as containing object k
according to the max of P(zk|dj) over k
Results #1: Topic Discovery
Results #2: Classifying New Images
Object Categories learned on a corpus,
then object categories found in new image
Anybody remember how this is done?
Remember the index d in
the graphical model
How does pLSA deal with previously
unseen documents?
“Folding-in” Heuristic
First train on Corpus to obtain
Now re-run same training EM algorithm,
but don’t re-estimate
and let
D={dunseen}
Results #2: Classifying New Images
Train on one set and test on another
Results #3: Segmentation
Localization and Segmentation of Object
For a word occurrence in a particular
document we can examine the probability
of different topics
Find words with P(zk|dj,wi) > .8
Results #3: Segmentation
Note: words shown are not the most probable words
for a topic, but instead they are words that have a high
probability of occurring in a topic AND high probability of
occurring in the image
Results #3: Segmentation and Doublets
 Two class image dataset consisting of half the faces
(218 images) and backgrounds (217 images)
 A 4 topic pLSA model is learned for all training faces and
training backgrounds with 3 fixed background topics, i.e.
one (face) topic is learned in addition to the three fixed
background topics
 A doublet vocabulary is then formed from the top 100
visual words of the face topic. A second 4 topic pLSA
model is then learned for the combined vocabulary of
singlets and doublets with the background topics fixed.
Doublets
Face
Segmentation
Scores
Singleton: .49
Doublets: .61
Efros: didn’t work as much as you’d think
Conclusions
Showed how both papers use bag-ofwords approaches
We’re now ready to become experts on
generative models like pLSA and LDA
Graphical Model Fun! (Carlos Guestrin
teaches Graphical Models)
Are you really into Graphical Models?
 Describing Visual Scenes using Transformed Dirichlet Processes. E.
Sudderth, A. Torralba, W. Freeman, and A. Willsky. NIPS, Dec. 2005.
References
 A Bayesian Hierarchical Model for Learning
Natural Scene Categories, Fei Fei Li et al
 Describing Visual Scenes using Transformed
Dirichlet Processes, Sudderth et al
 Discovering objects and their location in images,
Sivic et al
 Latent Dirichlet Allocation, Blei et al
 Unsupervised Learning by Probabilistic Latent
Semantic Analysis, T. Hoffman
Download