Learning Globally-Consistent Local Distance Functions for Shape ...

50
Learning Globally-Consistent Local Distance Functions for Shape-Based Image Retrieval and Classification Computer Vision, 2007. ICCV 2007. IEEE 11th International Conference on Andrea Frome , EECS, UC Berkeley Yoram Singer, Google, Inc Fei Sha , EECS, UC Berkeley Jitendra Malik, EECS, UC Berkeley

Transcript of Learning Globally-Consistent Local Distance Functions for Shape ...

Page 1: Learning Globally-Consistent Local Distance Functions for Shape ...

Learning Globally-Consistent Local Distance Functions for Shape-Based

Image Retrieval and Classification

Computer Vision, 2007. ICCV 2007. IEEE 11th International Conference on

Andrea Frome , EECS, UC BerkeleyYoram Singer, Google, Inc

Fei Sha , EECS, UC BerkeleyJitendra Malik, EECS, UC Berkeley

Page 2: Learning Globally-Consistent Local Distance Functions for Shape ...

Outline

• Introduction

• Training step

• Testing step

• Experiment & Result

• Conclusion

Page 3: Learning Globally-Consistent Local Distance Functions for Shape ...

Outline

• Introduction• Training step

• Testing step

• Experiment & Result

• Conclusion

Page 4: Learning Globally-Consistent Local Distance Functions for Shape ...

What we do?

• Goal

– classify an image to a more appropriate category

• Machine learning

• Two steps

– Training step

– Testing step

Page 5: Learning Globally-Consistent Local Distance Functions for Shape ...

Outline

• Introduction

• Training step• Testing step

• Experiment & Result

• Conclusion

Page 6: Learning Globally-Consistent Local Distance Functions for Shape ...

Flow chart: training

Generate features each image from dataset, ex: SIFT or geometric blur

Input distances to SVM for training , evaluate W

Compute distance dji, dki

Page 7: Learning Globally-Consistent Local Distance Functions for Shape ...

Flow chart: training

Generate features each image from dataset, ex: SIFT or geometric blur

Input distances to SVM for training , evaluate W

Compute distance dji, dki

Page 8: Learning Globally-Consistent Local Distance Functions for Shape ...

Choosing features

• Dataset: Caltech101

• Patch-based Features

– SIFT

• Old school

– Geometric Blur

• It’s a notion of blurring

• The measure of similarity between image patches

• The extension of Gaussian blur

Page 9: Learning Globally-Consistent Local Distance Functions for Shape ...

Geometric blur

Page 10: Learning Globally-Consistent Local Distance Functions for Shape ...

Flow chart: training

Generate features each image from dataset, ex: SIFT or geometric blur

Input distances to SVM for training , evaluate W

Compute distance dji, dki

Page 11: Learning Globally-Consistent Local Distance Functions for Shape ...

Triplet

• dji is the distance from image j to i

• It’s not symmetric, ex: dji ≠ dij

• dki > dji

dji dki

Page 12: Learning Globally-Consistent Local Distance Functions for Shape ...

How to compute distance

• L2 norm

1

2

3

dji, 1

m features

dji, 1

distance vector dji

Image j

Image i

Page 13: Learning Globally-Consistent Local Distance Functions for Shape ...

Example

• Given 101 category, 15 images each category

101*15

Feature j

101*15

distance vector

distance vector

Image j vs training data

Page 14: Learning Globally-Consistent Local Distance Functions for Shape ...

Flow chart: training

Generate features each image from dataset, ex: SIFT or geometric blur

Input distances to SVM for training , evaluate W

Compute distance dji, dki

Page 15: Learning Globally-Consistent Local Distance Functions for Shape ...

Machine learning: SVM

• Support Vector Machine

• Function: Classify prediction

• Supervised learning

• Training data are n dimension vector

Page 16: Learning Globally-Consistent Local Distance Functions for Shape ...

Example

• Male investigate

– Annual income

– Free time

• Have girlfriend?

Page 17: Learning Globally-Consistent Local Distance Functions for Shape ...

Ex: Training data

Page 18: Learning Globally-Consistent Local Distance Functions for Shape ...

space

free

income

vector

Page 19: Learning Globally-Consistent Local Distance Functions for Shape ...
Page 20: Learning Globally-Consistent Local Distance Functions for Shape ...

Mathematical expression(1/2)

Page 21: Learning Globally-Consistent Local Distance Functions for Shape ...

Mathematical expression(2/2)

Page 22: Learning Globally-Consistent Local Distance Functions for Shape ...

Support vector

Model

free

income

Page 23: Learning Globally-Consistent Local Distance Functions for Shape ...

But the world is not so ideal.

Page 24: Learning Globally-Consistent Local Distance Functions for Shape ...

Real world data

Page 25: Learning Globally-Consistent Local Distance Functions for Shape ...

Hyper-dimension

Page 26: Learning Globally-Consistent Local Distance Functions for Shape ...

Error cut

Page 27: Learning Globally-Consistent Local Distance Functions for Shape ...

SVM standard mathematical expression

Trade-off

Page 28: Learning Globally-Consistent Local Distance Functions for Shape ...

In this paper

• Goal: to get the weight vector W

101*15

feature

Image weight wj of W

wj, 1

wj

Page 29: Learning Globally-Consistent Local Distance Functions for Shape ...

Visualization of the weights

Page 30: Learning Globally-Consistent Local Distance Functions for Shape ...

How to choose Triplets?

• Reference Image– Good friend - In the same class

– Bad friend - In the different class

• Ex: 101category, 15 images per category– 14 good friends & 15*100(1500) bad friends

– 15*101(1515) reference images

– total of about 31.8 million triplets

Page 31: Learning Globally-Consistent Local Distance Functions for Shape ...

Mathematical expression(1/2)

• Idealistic:

• Scaling:

• Different:

The length of Weight i

0 0

triplet

Page 32: Learning Globally-Consistent Local Distance Functions for Shape ...

Mathematical expression(2/2)

• Empirical loss:

• Vector machine:

Page 33: Learning Globally-Consistent Local Distance Functions for Shape ...

Dual problem

Page 34: Learning Globally-Consistent Local Distance Functions for Shape ...

Dual variable

• Iterate the dual variables:

Page 35: Learning Globally-Consistent Local Distance Functions for Shape ...

Early stopping

• Satisfy KTT condition

– In mathematics, a solution in nonlinear programming to be optimal.

• Threshold

– Dual variable update falls below a value

Page 36: Learning Globally-Consistent Local Distance Functions for Shape ...

Outline

• Introduction

• Training step

• Testing step• Experiment & Result

• Conclusion

Page 37: Learning Globally-Consistent Local Distance Functions for Shape ...

Flow chart: testing

Query an image i

Output the most appropriate category

Calculate Dxi, x is all training data, except itself.

Page 38: Learning Globally-Consistent Local Distance Functions for Shape ...

Flow chart: testing

Query an image i

Output the most appropriate category

Calculate Dxi, x is all training data, except itself.

Page 39: Learning Globally-Consistent Local Distance Functions for Shape ...

Query image?

• Goal: classify the query image to an appropriate class

• Using the remaining images in the dataset as the query image

Page 40: Learning Globally-Consistent Local Distance Functions for Shape ...

Flow chart: testing

Query an image i

Output the most appropriate category

Calculate Dxi, x is all training data, except itself.

Page 41: Learning Globally-Consistent Local Distance Functions for Shape ...

Distance function(1/2)

• Query image i

Image i feature

101*15

distance vector

distance vector

Image i vs all training data

dxi, 1

Page 42: Learning Globally-Consistent Local Distance Functions for Shape ...

Distance function(2/2)

101*15

Image I vs all the training data

Dji

Page 43: Learning Globally-Consistent Local Distance Functions for Shape ...

Flow chart: testing

Query an image i

Output the most appropriate category

Calculate Dxi, x is all training data, except itself.

Page 44: Learning Globally-Consistent Local Distance Functions for Shape ...

How to choose the best image?

• Modified 3-NN classifier

• no two images agree on the class within the top 10

– Take the class of the top-ranked image of the 10

Page 45: Learning Globally-Consistent Local Distance Functions for Shape ...

Outline

• Introduction

• Training step

• Testing step

• Experiment & Result• Conclusion

Page 46: Learning Globally-Consistent Local Distance Functions for Shape ...

Experiment & Result

• Caltech 101

• Feature

– Geometric blur (shape feature)

– HSV histograms (color feature)

• 5, 10, 15, 20 training images per category

Page 47: Learning Globally-Consistent Local Distance Functions for Shape ...
Page 48: Learning Globally-Consistent Local Distance Functions for Shape ...

Confusion matrix for 15

Page 49: Learning Globally-Consistent Local Distance Functions for Shape ...

Outline

• Introduction

• Training step

• Testing step

• Experiment & Result

• Conclusion

Page 50: Learning Globally-Consistent Local Distance Functions for Shape ...

Conclusion

• Learning Globally-Consistent Local Distance Functions for Shape-Based Image Retrieval and Classification