The One-Shot Similarity Kernel

Lior Wolf1    Tal Hassner2    Yaniv Taigman1,3

1. The School of Computer Science,
Tel-Aviv University, Israel

2. Computer Science Division
The Open University of Israel

3. face.com,
Tel-Aviv, Israel

 

Abstract: The One-Shot similarity measure has recently been introduced in the context of face recognition where it was used to produce state-of-the-art results. Given two vectors, their One-Shot similarity score reflects the likelihood of each vector belonging in the same class as the other vector and not in a class defined by a fixed set of "negative" examples. The potential of this approach has thus far been largely unexplored. In this paper we analyze the One-Shot score and show that: (1) when using a version of LDA as the underlying classifier, this score is a Conditionally Positive Definite kernel and may be used within kernel-methods (e.g., SVM), (2) it can be efficiently computed, and (3) that it is effective as an underlying mechanism for image representation. We further demonstrate the effectiveness of the One-Shot similarity score in a number of applications including multi-class identification anddescriptor generation.

Reference Lior Wolf, Tal Hassner, and Yaniv Taigman, "The One-Shot Similarity Kernel," IEEE International Conference on Computer Vision  (ICCV), Sept. 2009.

Click here for the PDF (Note - Extended version!)

Click here for the BibTex
Related publications:

Multiple One-Shots for Utilizing Class Label Information

Descriptor Based Methods in the Wild


MATLAB Code for the LDA based One-Shot Similarity Measure

Below please find MATLAB code for computing the One-Shot Similarity score using LDA as an underlying classifier. Please report any bugs or problems to talhassner@gmail.com.

Type "help oss_lda_sA_from_xsn" or "help oss_lda_score" for more information on each of these functions.

A typical usage would look something like this:

>>     sA = oss_lda_sA_from_xsn(XSN);
>>     Score1 = oss_lda_score(x1,x2,sA);
>>     Score2 = oss_lda_score(x2,x1,sA);
>>     Score = (Score1 + Score2)./2;

Score is then the symmetric One-Shot Similarity of the two vectors x1 and x2.

Downloads:

oss_lda_sA_from_xsn.m
oss_lda_score.m

Copyright and disclaimer:

Copyright 2009, Lior Wolf, Tal Hassner, and Yaniv Taigman


Copyright: no material is allowed to be copied or used in any way without written permission of the authors.
Last update 
22th of July, 2009