SlideShare a Scribd company logo
1 of 109
Download to read offline
Metric Learning
                                  ICML 2010 Tutorial


                                 Brian Kulis
                     University of California at Berkeley


                                      June 21, 2010




Brian Kulis University of California at Berkeley   Metric Learning
Introduction

Learning problems with distances and similarities
    k-means
    Support vector machines
    k-nearest neighbors
    Most algorithms that employ kernel methods
    Other clustering algorithms (agglomerative, spectral, etc)
    ...




          Brian Kulis University of California at Berkeley   Metric Learning
Choosing a distance function




      Brian Kulis University of California at Berkeley   Metric Learning
Choosing a distance function

Example: UCI Wine data set
    13 features
        9/13 features have mean value in [0, 10]
        3/13 features have mean value in [10, 100]
        One feature has a mean value of 747 (with std 315)
    Using a standard distance such as Euclidean distance, the largest
    feature dominates the computation
        That feature may not be important for classification
    Need a weighting of the features that improves classification or other
    tasks




       Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




     Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




     Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




     Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




     Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




     Brian Kulis University of California at Berkeley   Metric Learning
Metric Learning as Learning Transformations
   Feature re-weighting
        Learn weightings over the features, then use standard distance (e.g.,
        Euclidean) after re-weighting
        Diagonal Mahalanobis methods (e.g., Schultz and Joachims)
        Number of parameters grows linearly with the dimensionality d
   Full linear transformation
        In addition to scaling of features, also rotates the data
        For transformations from d dimensions to d dimensions, number of
        parameters grows quadratically in d
        For transformations to r < d dimensions, this is linear dimensionality
        reduction
   Non-linear transformation
        Variety of methods
        Neural nets
        Kernelization of linear transformations
        Complexity varies from method to method


       Brian Kulis University of California at Berkeley   Metric Learning
Supervised vs Unsupervised Metric Learning
   Unsupervised Metric Learning
       Dimensionality reduction techniques
       Principal Components Analysis
       Kernel PCA
       Multidimensional Scaling
       In general, not the topic of this tutorial...
   Supervised and Semi-supervised Metric Learning
       Constraints or labels given to the algorithm
       Example: set of similarity and dissimilarity constraints
       This is the focus of the tutorial




      Brian Kulis University of California at Berkeley   Metric Learning
Themes of the tutorial
   Not just a list of algorithms
        General principles
        Focus on a few key methods
   Recurring ideas
        Scalability
        Linear vs non-linear
        Online vs offline
        Optimization techniques utilized
        Statements about general formulations
   Applications
        Where is metric learning applied?
        Success stories
        Limitations




       Brian Kulis University of California at Berkeley   Metric Learning
Outline of Tutorial

   Motivation
   Linear metric learning methods
       Mahalanobis metric learning
       Per-example methods
   Non-linear metric learning methods
       Kernelization of Mahalanobis methods
       Other non-linear methods
   Applications
   Conclusions




      Brian Kulis University of California at Berkeley   Metric Learning
Mahalanobis Distances




      Brian Kulis University of California at Berkeley   Metric Learning
Mahalanobis Distances

   Assume the data is represented as N vectors of length d:
   X = [x1 , x2 , ..., xN ]
   Squared Euclidean distance
                                                                    2
                              d(x1 , x2 ) =              x1 − x2    2
                                                                    T
                                                  = (x1 − x2 ) (x1 − x2 )

   Let Σ =         i,j (xi   − µ)(xj − µ)T
   The “original” Mahalanobis distance:

                             dM (x1 , x2 ) = (x1 − x2 )T Σ−1 (x1 − x2 )




      Brian Kulis University of California at Berkeley   Metric Learning
Mahalanobis Distances

   Equivalent to applying a whitening transform




      Brian Kulis University of California at Berkeley   Metric Learning
Mahalanobis Distances

      Assume the data is represented as N vectors of length d:
      X = [x1 , x2 , ..., xN ]
      Squared Euclidean distance
                                                                         2
                                   d(x1 , x2 ) =              x1 − x2    2
                                                                         T
                                                       = (x1 − x2 ) (x1 − x2 )
      Mahalanobis distances for metric learning
            Distance parametrized by d × d positive semi-definite matrix A:
                                           dA (x1 , x2 ) = (x1 − x2 )T A(x1 − x2 )

      Used for many existing metric learning algorithms


[Xing, Ng, Jordan, and Russell; NIPS 2002]
[Bar-Hillel, Hertz, Shental, and Weinshall; ICML 2003]
[Bilenko, Basu, and Mooney; ICML 2004]
[Globerson and Roweis; NIPS 2005]
[Weinberger, Blitzer, and Saul; NIPS 2006]
           Brian Kulis University of California at Berkeley   Metric Learning
Mahalanobis Distances

                          dA (x1 , x2 ) = (x1 − x2 )T A(x1 − x2 )


   Why is A positive semi-definite (PSD)?
       If A is not PSD, then dA could be negative
       Suppose v = x1 − x2 is an eigenvector corresponding to a negative
       eigenvalue λ of A

                                   dA (x1 , x2 )         =    (x1 − x2 )T A(x1 − x2 )
                                                         = vT Av
                                                         = λvT v = λ < 0




      Brian Kulis University of California at Berkeley       Metric Learning
Mahalanobis Distances
   Properties of a metric:
        d(x, y) ≥ 0
        d(x, y) = 0 if and only if x = y
        d(x, y) = d(y, x)
        d(x, z) ≤ d(x, y) + d(y, z)
   dA is not technically a metric
        Analogous to Euclidean distance, need the square root:

                                       dA (x1 , x2 ) =      (x1 − x2 )T A(x1 − x2 )

   Square root of the Mahalanobis distance satisfies all properties if A is
   strictly positive definite, but if A is positive semi-definite then second
   property is not satisfied
        Called a pseudo-metric
   In practice, most algorithms work only with dA


       Brian Kulis University of California at Berkeley   Metric Learning
Mahalanobis Distances
   Can view dA as the squared Euclidean distance after applying a linear
   transformation
       Decompose A = G T G via Cholesky decomposition
       (Alternatively, take eigenvector decomposition A = V ΛV T and look at
       A = (Λ1/2 V T )T (Λ1/2 V T ))
   Then we have

                       dA (x1 , x2 ) = (x1 − x2 )T A(x1 − x2 )
                                            = (x1 − x2 )G T G (x1 − x2 )
                                            = (G x1 − G x2 )T (G x1 − G x2 )
                                                                      2
                                            =        G x1 − G x2      2

   Mahalanobis distance is just the squared Euclidean distance after
   applying the linear transformation G


      Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




     Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




     Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




   Want to learn:
                                          1 0                              1 0
                            A=                              G=               √
                                          0                                0

      Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




     Brian Kulis University of California at Berkeley   Metric Learning
Example: Four Blobs




   Want to learn:
                                                                           √
                                            0                                  0
                            A=                              G=
                                          0 1                              0   1

      Brian Kulis University of California at Berkeley   Metric Learning
Drawbacks to Mahalanobis Metric Learning
   Memory overhead grows quadratically with the dimensionality of the
   data
       Does not scale to high-dimensional data (d = O(106 ) for many image
       embeddings)
   Only works for linearly separable data




   Cannot seemingly be applied to “real” data!
   These drawbacks will be discussed later

      Brian Kulis University of California at Berkeley   Metric Learning
Metric Learning Problem Formulation
   Typically 2 main pieces to a Mahalanobis metric learning problem
       A set of constraints on the distance
       A regularizer on the distance / objective function
   In the constrained case, a general problem may look like:

                                    minA r (A)
                                    s.t. ci (A) ≤ 0 0 ≤ i ≤ C
                                         A 0

   r is a regularizer/objective on A and ci are the constraints on A
   An unconstrained version may look like:
                                                               C
                                         min r (A) + λ             ci (A)
                                         A 0
                                                             i=1



      Brian Kulis University of California at Berkeley   Metric Learning
Defining Constraints
   Similarity / Dissimilarity constraints
        Given a set of pairs S of points that should be similar, and a set of pairs
        of points D of points that should be dissimilar
        A single constraint would be of the form
                                                          dA (xi , xj ) ≤
        for (i, j) ∈ S or
                                                          dA (xi , xj ) ≥ u
        for (i, j) ∈ D
        Easy to specify given class labels
   Relative distance constraints
        Given a triple (xi , xj , xk ) such that the distance between xi and xj should
        be smaller than the distance between xi and xk , a single constraint is of
        the form
                                   dA (xi , xj ) ≤ dA (xi , xk ) − m,
        where m is the margin
        Popular for ranking problems
       Brian Kulis University of California at Berkeley       Metric Learning
Defining Constraints
   Aggregate distance constraints
       Constrain the sum of all pairs of same-class distances to be small, e.g.,

                                                         yij dA (xi , xj ) ≤ 1
                                                   ij

       where yij = 1 if xi and xj are in the same class, and 0 otherwise
   Other constraints
       Non-parametric probability estimation constraints
       Constraints on the generalized inner product xT Axj :
                                                     i

                                   dA (xi , xj ) = xT Axi + xT Axj − 2xT Axj
                                                    i        j         i




      Brian Kulis University of California at Berkeley      Metric Learning
Defining the Regularizer or Objective
   Loss/divergence functions
       Squared Frobenius norm: A − A0 2    F
       LogDet divergence: tr(AA−1 ) − log det(AA−1 ) − d
                                  0             0
       General loss functions D(A, A0 )
       Will discuss several of these later
   Other regularizers
        A 2F
       tr(AC0 ) (i.e., if C0 is the identity, this is the trace norm)




      Brian Kulis University of California at Berkeley   Metric Learning
Choosing a Regularizer

   Depends on the problem!
   Example 1: tr(A)
       Trace function is the sum of the eigenvalues
       Analogous to the 1 penalty, promotes sparsity
       Leads to low-rank A
   Example 2: LogDet Divergence
       Defined only over positive semi-definite matrices
       Makes computation simpler
       Possesses other desirable properties
   Example 3: A            2
                           F
       Arises in many formulations
       Easy to analyze and optimize




      Brian Kulis University of California at Berkeley   Metric Learning
Defining the Optimization

   Many existing Mahalanobis distance learning methods can be obtained
   simply by choosing a regularizer/objective and constraints
   We will discuss properties of several of these




       Brian Kulis University of California at Berkeley   Metric Learning
Xing et al.’s MMC

Problem posed as follows:

                         max                     (xi ,xj )∈D         dA (xi , xj )
                            A
                           s.t. c(A) =                 (xi ,xj )∈S   dA (xi , xj ) ≤ 1
                                                             A     0.


     Here, D is a set of pairs of dissimilar pairs, S is a set of similar pairs
     Objective tries to maximize sum of dissimilar distances
     Constraint keeps sum of similar distances small
           Use square root in regularizer to avoid trivial solution
[Xing, Ng, Jordan, and Russell; NIPS 2002]




          Brian Kulis University of California at Berkeley       Metric Learning
Xing et al.’s MMC

Algorithm
    Based on gradient descent over the objective followed by an iterative
    projection step to find a feasible A
         Constraint c(A) is linear in A, can be solved cheaply
         Orthogonal projection onto A 0 achieved by setting A’s negative
         eigenvalues to 0
         Iterative between these two steps to find feasible A for both constraints,
         then take a step in the gradient of the objective
    Despite relative simplicity, the algorithm is fairly slow (many eigenvalue
    decompositions required)
    Does not scale to large problems
    Objective and constraints only look at the sums of distances




        Brian Kulis University of California at Berkeley   Metric Learning
Schultz and Joachims

Problem formulated as follows:
                  min                                            A   2
                                                                     F
                    A
                   s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 ∀(i, j, k) ∈ R
                                                             A        0.


     Constraints in R are relative distance constraints
     There may be no solution to this problem; introduce slack variables


             min                             A    2   +γ
                                                  F                  (i,j,k)∈R ξijk
             A,ξ
              s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 − ξijk ∀(i, j, k) ∈ R
                                            ξijk ≥ 0 ∀(i, j, k) ∈ R
                                                             A        0.
[Schultz and Joachims; NIPS 2002]
          Brian Kulis University of California at Berkeley       Metric Learning
Schultz and Joachims

Algorithm
    Key simplifying assumption made
        A = M T DM, where M is assumed fixed and known and D is diagonal

                              dA (xi , xj )     =         (xi − xj )T A(xi − xj )
                                                =         (xi − xj )T M T DM(xi − xj )
                                                =         (Mxi − Mxj )T D(Mxi − Mxj )

        Effectively constraining the optimization to diagonal matrices
        Resulting optimization problem is very similar to SVMs, and resulting
        algorithm is similar
    By choosing M to be a matrix of data points, method can be kernelized
    Fast algorithm, but less general than full Mahalanobis methods




       Brian Kulis University of California at Berkeley       Metric Learning
Kwok and Tsang

Problem formulated as follows:
                         2       CS                                 CD
         min        A    F   +   NS        (xi ,xj )∈S ξij      +   ND     (xi ,xj )∈D ξij   − CD γν
        A,ξ,γ
          s.t.               dI (xi , xj ) ≥ dA (xi , xj ) − ξij ∀(xi , xj ) ∈ S
                        dA (xi , xj ) − dI (xi , xj ) ≥ γ − ξij ∀(xi , xj ) ∈ D
                                                            ξij ≥ 0
                                                            γ≥0
                                                            A       0.


     Same regularization as Schultz and Joachims
     Similarity/dissimilarity constraints instead of relative distance
     constraints
     No simplifying assumptions made about A
[Kwok and Tsang; ICML 2003]
         Brian Kulis University of California at Berkeley       Metric Learning
Neighbourhood Components Analysis

Problem formulated as follows:
                                                               exp(−dA (xi ,xj ))
                         max             i     j∈Ci ,j=i
                                                              P
                                                                 exp(−dA (xi ,xk ))
                            A                                     k=i

                           s.t.                              A 0.


     Ci is the set of points in the same class as point xi (not including xi )
Motivation
    Minimize the leave-one-out KNN classification error
           LOO error function is discontinuous
           Replace by a softmax; each point xi chooses a nearest neighbor xj based
           on probability
                                          exp(−dA (xi , xj ))
                                 pij =
                                         k=i exp(−dA (xi , xk ))

[Goldberger, Roweis, Hinton, and Salakhutdinov; NIPS 2004]

          Brian Kulis University of California at Berkeley        Metric Learning
Neighbourhood Components Analysis

Algorithm
    Problem is non-convex
    Rewrite in terms of G , where A = G T G
         Eliminates A             0 constraint
    Run gradient descent over G
Properties
    Easy to control the rank of A: just optimize over low-rank G
    Simple, unconstrained optimization
    No guarantee of global solution




        Brian Kulis University of California at Berkeley   Metric Learning
MCML

Recall NCA probabilities

                                                   exp(−dA (xi , xj ))
                                   pij =
                                                  k=i exp(−dA (xi , xk ))


                                                    0
     Introduce an “ideal” probability distribution pij :

                                0             1 if i and j from same class
                               pij ∝
                                              0 otherwise.

     Minimize divergence between p 0 and p:

                                                  min KL(p 0 , p)
                                                    A
                                                   s.t.      A     0.
[Globerson and Roweis; NIPS 2005]

          Brian Kulis University of California at Berkeley   Metric Learning
MCML

Properties
    Unlike NCA, MCML is convex
    Global optimization possible
         Algorithm based on optimization over the dual
         Similar to Xing: gradient step plus projection
         Not discussed in detail in this tutorial




        Brian Kulis University of California at Berkeley   Metric Learning
A Closer Look at Some Algorithms

   As can be seen, several objectives are possible
   We will take a look at 3 algorithms in-depth for their properties
   POLA
       An online algorithm for learning metrics with provable regret
       Also the first supervised metric learning algorithm that was shown to be
       kernelizable
   LMNN
       Very popular method
       Algorithm scalable to billions of constraints
       Extensions for learning multiple metrics
   ITML
       Objective with several desirable properties
       Simpler kernelization construction
       Online variant



      Brian Kulis University of California at Berkeley   Metric Learning
POLA

Setup
     Estimate dA in an online manner
     Also estimate a threshold b
     At each step t, observe tuple (xt , xt , yt )
           yt = 1 if xt and xt should be similar; -1 otherwise
     Consider the following loss

                              t (A, b)     = max(0, yt (dA (xt , xt )2 − b) + 1)


           Hinge loss, margin interpretation
     Appropriately update A and b each iteration
[Shalev-Shwartz, Singer, and Ng; NIPS 2004]




          Brian Kulis University of California at Berkeley   Metric Learning
Online Learning Setup

   Define the total loss to be
                                                         T
                                              L=              t (At , bt )
                                                     t=1

   Online learning methods compare the loss to the best fixed, offline
   predictor A∗ and threshold b ∗
   Define regret for T total timesteps as
                                          T                           T
                                                                                   ∗ ∗
                             RT =                t (At , bt ) −                t (A , b )
                                         t=1                         t=1

   Design an algorithm that minimizes the regret
       Same setup as in other online algorithms (classification, regression)
                                                √
       Modern optimization methods achieve O( T ) regret for a general class,
       and O(log T ) for some special cases
      Brian Kulis University of California at Berkeley       Metric Learning
POLA Algorithm

  Consider the following convex sets

                                Ct      = {(A, b) |          t (A, b)     = 0}
                                Ca = {(A, b) | A                    0, b ≥ 1}

  Consider orthogonal projections:
                                                                            2
                                   PC (x) = argminy∈C x − y                 2

  Think of (A, b) as a vector in d 2 + 1 dimensional space
  Each step, project onto Ct , then project onto Ca




     Brian Kulis University of California at Berkeley   Metric Learning
POLA Algorithm
  Projection onto Ct
      Let vt = xt − xt
      Then projection is computed in closed form as

                                                              t (At , bt )
                                             αt         =
                                                              vt 4 + 1
                                                                  2
                                             ˆ
                                             At         = At − yt αt vt vT
                                                                         t
                                             ˆ
                                             bt         = bt + αt yt

  Projection onto Ca
      Orthogonal projection onto positive semi-definite cone obtained by
      setting negative eigenvalues to 0
                               ˆ
      But, update from At to At was rank-one
      Only 1 negative eigenvalue (interlacing theorem)
      Thus, only need to compute the smallest eigenvalue and eigenvector (via
      a power method or related) and subtract it off


     Brian Kulis University of California at Berkeley       Metric Learning
Analysis of POLA

   Theorem: Let (x1 , x1 , y1 ), ..., (xT , xT , yT ) be a sequence of examples
   and let R be such that ∀t, R ≥ xt − xt 4 + 1. Assume there exists an
                                                   2
   A∗ 0 and b ∗ ≥ 1 such that t (A∗ , b ∗ ) = 0 ∀t. Then the following
   bound holds for all T ≥ 1:
                           T
                                  t (At , bt )
                                                 2
                                                     ≤ R( A∗      2
                                                                  F   + (b ∗ − b1 )2 ).
                          t=1


        Note that since t (A∗ , b ∗ ) = 0 for all t, the total loss is equal to the
        regret
        Can generalize this to a regret bound in the case when t (A∗ , b ∗ ) does
        not always equal 0
   Can also run POLA in batch settings



       Brian Kulis University of California at Berkeley   Metric Learning
POLA in Context
   Can we think of POLA in the framework presented earlier?
       Yes—regularizer is A 2 and constraints are defined by the hinge loss
                              F                                              t
       Similar to both Schultz and Joachims, and Kwok and Tsang
   We will see later that POLA can also be kernelized to learn non-linear
   transformations
   In practice, POLA does not appear to be competitive with current
   state-of-the-art




      Brian Kulis University of California at Berkeley   Metric Learning
LMNN




      Similarly to Schultz and Joachims, utilize relative distance constraints
            A constraint (xi , xj , xk ) ∈ R has the property that xi and xj are
            neighbors of the same class, and xi and xk are of different classes
[Weinberger, Blitzer, and Saul; NIPS 2005]

          Brian Kulis University of California at Berkeley   Metric Learning
LMNN
  Problem Formulation
       Also define set S of pairs of points (xi , xj ) such that xi and xj are
       neighbors in the same class
       Want to minimize sum of distances of pairs of points in S
       Also want to satisfy the relative distance constraints
  Mathematically:

              min                                 (xi ,xj )∈S   dA (xi , xj )
                A
               s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 ∀(xi , xj , xk ) ∈ R
                                                        A        0.




     Brian Kulis University of California at Berkeley    Metric Learning
LMNN
  Problem Formulation
       Also define set S of pairs of points (xi , xj ) such that xi and xj are
       neighbors in the same class
       Want to minimize sum of distances of pairs of points in S
       Also want to satisfy the relative distance constraints
  Mathematically:

         min                    (xi ,xj )∈S   dA (xi , xj ) + γ       (xi ,xj ,xk )∈R ξijk
          A,ξ
          s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 − ξijk ∀(xi , xj , xk ) ∈ R
                                                  A     0, ξijl ≥ 0.


       Introduce slack variables




     Brian Kulis University of California at Berkeley   Metric Learning
Comments on LMNN
  Algorithm
      Special-purpose solver
      Relies on subgradient computations
      Ignores inactive constraints
      Example: MNIST—3.2 billion constraints in 4 hours
      Software available
  Performance
      One of the best-performing methods
      Works in a variety of settings




     Brian Kulis University of California at Berkeley   Metric Learning
LMNN Extensions

Learning with Multiple Local Metrics
    Learn several local Mahlanobis metrics instead a single global one
           Cluster the training data into k partitions
           Denote ci as the corresponding cluster for xi
           Learn k Mahalanobis distances A1 , ..., Ak
     Formulation

                 min                                  (xi ,xj )∈S    dAcj (xi , xj )
                   A
                  s.t. dAck (xi , xk ) − dAcj (xi , xj ) ≥ 1 ∀(xi , xj , xk ) ∈ R
                                                             Ai      0 ∀i.


           Introduce slack variables as with standard LMNN
[Weinberger and Saul; ICML 2008]



          Brian Kulis University of California at Berkeley        Metric Learning
LMNN Results




  Results show improvements using multiple metrics
  Weinberger and Saul also extend LMNN to use ball trees for fast search
      No time to go into details, see paper




     Brian Kulis University of California at Berkeley   Metric Learning
ITML and the LogDet Divergence

      We take the regularizer to be the Log-Determinant Divergence:

                        D d (A, A0 ) = trace(AA−1 ) − log det(AA−1 ) − d
                                               0                0



      Problem formulation:
       minA D d (A, A0 )
       s.t. (xi − xj )T A(xi − xj ) ≤ u if (i, j) ∈ S [similarity constraints]
            (xi − xj )T A(xi − xj ) ≥   if (i, j) ∈ D [dissimilarity constraints]




[Davis, Kulis, Jain, Sra, and Dhillon; ICML 2007]




           Brian Kulis University of California at Berkeley   Metric Learning
LogDet Divergence: Properties

            D d (A, A0 ) = trace(AA−1 ) − log det(AA−1 ) − d,
                                   0                0




   Properties:
       Scale-invariance
                                   D d (A, A0 ) = D d (αA, αA0 ),                α>0
       In fact, for any invertible M
                                    D d (A, A0 ) = D d (M T AM, M T A0 M)
       Expansion in terms of eigenvalues and eigenvectors
       (A = V ΛV T , A0 = UΘU T ):
                                                                         λi       λi
                              D d (A, A0 ) =               (vT uj )2
                                                             i              − log      −d
                                                                         θj       θj
                                                     i,j

      Brian Kulis University of California at Berkeley       Metric Learning
Existing Uses of LogDet
   Information Theory
        Differential relative entropy between two same-mean multivariate
        Gaussians equal to LogDet divergence between covariance matrices
   Statistics
        LogDet divergence is known as Stein’s loss in the statistics community

   Optimization
        BFGS update can be written as:

                                      min           D d (B, Bt )
                                        B
                             subject to             B st = yt           (“Secant Equation”)

        st = xt+1 − xt , yt =               ft+1 −        ft




       Brian Kulis University of California at Berkeley        Metric Learning
Key Advantages

   Simple algorithm, easy to implement in Matlab

   Method can be kernelized

   Scales to millions of data points

   Scales to high-dimensional data (text, images, etc.)

   Can incorporate locality-sensitive hashing for sub-linear time similarity
   searches




       Brian Kulis University of California at Berkeley   Metric Learning
The Metric Learning Problem

               D d (A, A0 ) = trace(AA−1 ) − log det(AA−1 ) − d
                                      0                0




   ITML Goal:
   minA D d (A, A0 )
   s.t. (xi − xj )T A(xi − xj ) ≤ u if (i, j) ∈ S [similarity constraints]
        (xi − xj )T A(xi − xj ) ≥   if (i, j) ∈ D [dissimilarity constraints]




      Brian Kulis University of California at Berkeley   Metric Learning
Algorithm: Successive Projections

   Algorithm: project successively onto each linear constraint —
   converges to globally optimal solution
   Use projections to update the Mahalanobis matrix:

                                min           D d (A, At )
                                  A
                                 s.t.         (xi − xj )T A(xi − xj ) ≤ u

   Can be solved by O(d 2 ) rank-one update:

                          At+1 = At + βt At (xi − xj )(xi − xj )T At

   Advantages:
       Automatic enforcement of positive semidefiniteness
       Simple, closed-form projections
       No eigenvector calculation
       Easy to incorporate slack for each constraint

      Brian Kulis University of California at Berkeley   Metric Learning
Recent work in Mahalanobis methods

   Recent work has looked at other regularizers, such as tr(A), which
   learns low-rank matrices
   Improvements in online metric learning (tighter bounds)
   Kernelization for non-linear metric learning, the topic of the next
   section




       Brian Kulis University of California at Berkeley   Metric Learning
LEGO
     Online bounds proven for a variant of POLA based on LogDet
     regularization
           Combines the best of both worlds
     Minimize the following function at each timestep

                                  ft (A) = D d (A, At ) + ηt t (A, xt , yt )


           At is the current Mahalanobis matrix
           ηt is the learning rate
            t (A, xt , yt ) is a loss function, e.g.

                                                                  1
                                            t (A, xt , yt )   =     (dA (xt , yt ) − p)2
                                                                  2
                                                          √
     For appropriate choice of step size, can guarantee O( T ) regret
     Empirically outperforms POLA significantly in practice
[Jain, Kulis, Dhillon, and Grauman; NIPS 2009]
          Brian Kulis University of California at Berkeley    Metric Learning
Non-Mahalanobis methods: Local distance functions
     General approach
           Learn a distance function for every training data point
                                                 ij
           Given m features per point, denote dm as the distance between the m-th
           feature in points xi and xj
                     j
           Denote wm as a weight for feature m of point xj
           Then the distance between an arbitary (e.g., test) image xi and a
           training image xj is
                                                                    M
                                                                            j ij
                                                    d(xi , xj ) =         w m dm
                                                                    m=1

     At test time
           Given test image xi , compute d(xi , xj ) between xi and every training
           point xj
           Sort distances to find nearest neighbors
[Frome, Singer, Sha, and Malik; ICCV 2007]




          Brian Kulis University of California at Berkeley   Metric Learning
Non-Mahalanobis methods: Local distance functions

Optimization framework
                                        j
    Denote wj as the vector of weights wm
    As before, construct triples (i, j, k) of points such that the distance
    between xi and xj should be smaller than the distance between xi and
    xk
    Formulate the following problem:

                  min                                           wj    2
                                                            j         2
                    W
                   s.t. d(xi , xk ) − d(xi , xj ) ≥ 1 ∀(xi , xj , xk ) ∈ R
                                                          wj ≥ 0 ∀j.




       Brian Kulis University of California at Berkeley     Metric Learning
Non-Mahalanobis methods: Local distance functions

Optimization framework
                                        j
    Denote wj as the vector of weights wm
    As before, construct triples (i, j, k) of points such that the distance
    between xi and xj should be smaller than the distance between xi and
    xk
    Formulate the following problem:

             min                                    wj     2   +γ
                                               j           2             (i,j,k) ξijk
              W
              s.t. d(xi , xk ) − d(xi , xj ) ≥ 1 − ξijk ∀(xi , xj , xk ) ∈ R
                                                          wj ≥ 0 ∀j.


        Introduce slack variables as before
        Very similar to LMNN and other relative distance methods!


       Brian Kulis University of California at Berkeley        Metric Learning
Non-Mahalanobis methods: Local distance functions

   Schultz and Joachims

                  min                                          A   2
                                                                   F
                    A
                   s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 ∀(i, j, k) ∈ R
                                                           A       0.

   Frome et al.

                 min                                           wj       2
                                                           j            2
                   W
                  s.t. d(xi , xk ) − d(xi , xj ) ≥ 1 ∀(xi , xj , xk ) ∈ R
                                                         wj ≥ 0 ∀j.




      Brian Kulis University of California at Berkeley     Metric Learning
Linear Separability




   No linear transformation for this grouping




      Brian Kulis University of California at Berkeley   Metric Learning
Kernel Methods

   Map input data to higher-dimensional “feature” space:

                                                     x → ϕ(x)

   Idea: Run machine learning algorithm in feature space

   Use the following mapping:
                                                               2
                                                                   
                                                x1          √ x1
                                     x=                  →  2x1 x2 
                                                x2             2
                                                              x2




      Brian Kulis University of California at Berkeley    Metric Learning
Mapping to Feature Space




     Brian Kulis University of California at Berkeley   Metric Learning
Kernel Methods

   Map input data to higher-dimensional “feature” space:

                                                     x → ϕ(x)

   Idea: Run machine learning algorithm in feature space

   Use the following mapping:
                                                               2
                                                                   
                                                x1          √ x1
                                     x=                  →  2x1 x2 
                                                x2             2
                                                              x2


   Kernel function: κ(x, y) = ϕ(x), ϕ(y)

   “Kernel trick” — no need to explicitly form high-dimensional features

   In this example: ϕ(x), ϕ(y) = (xT y)2
      Brian Kulis University of California at Berkeley    Metric Learning
Kernel Methods: Short Intro
   Main idea
       Take an existing learning algorithm
       Write it using inner products
       Replace inner products xT y with kernel functions ϕ(x)T ϕ(y)
       If ϕ(x) is a non-linear function, then algorithm has been implicitly
       non-linearly mapped
   Examples of kernel functions

                 κ(x, y) = (xT y)p                  Polynomial Kernel
                                                    x−y 2 2
                 κ(x, y) = exp                    −            Gaussian Kernel
                                                     2σ 2
                 κ(x, y) = tanh(c(xT y) + θ) Sigmoid Kernel

   Kernel functions also defined over objects such as images, trees,
   graphs, etc.

      Brian Kulis University of California at Berkeley   Metric Learning
Example: Pyramid Match Kernel




     Compute local image features
     Perform an approximate matching between features of two images
     Use multi-resolution histograms
     View as a dot product between high-dimensional vectors
[Grauman and Darrell, ICCV 2005]
          Brian Kulis University of California at Berkeley   Metric Learning
Example: k-means

Recall the k-means clustering algorithm
    Repeat until convergence:
         Compute the means of every cluster πc
                                                               1
                                                     µc =                xi
                                                              |πc | x ∈π
                                                                       i       c

         Reassign points to their closest mean by computing
                                                                           2
                                                             x − µc        2

         for every data point x and every cluster πc
Kernelization of k-means
    Expand x − µc 2 as
                     2
                                                                                           T
                               T
                                         2      xi ∈πc     xT xi               xi ,xj ∈πc xi xj
                             x x−                                  +
                                                  |πc |                            |πc |2
    No need to explicitly compute the mean; just compute this for every
    point to every cluster
        Brian Kulis University of California at Berkeley      Metric Learning
Example: k-means

Recall the k-means clustering algorithm
    Repeat until convergence:
         Compute the means of every cluster πc
                                          1
                                  µc =              xi
                                         |πc | x ∈π
                                                                    i       c

         Reassign points to their closest mean by computing
                                                                        2
                                                           x − µc       2

         for every data point x and every cluster πc
Kernelization of k-means
    Expand x − µc 2 as
                     2
                                      2
                                  κ(x, xi )     xi ,xj ∈πc κ(xi , xj )
                                              xi ∈πc
                     κ(x, x) −              +
                               |πc |                   |πc |2
    Replace inner products with kernels, and this is kernel k-means
    While k-means finds linear separators for the cluster boundaries, kernel
    k-means finds non-linear separators
        Brian Kulis University of California at Berkeley   Metric Learning
Distances vs. Kernel Functions

   Mahalanobis distances:

                                    dA (x, y) = (x − y)T A(x − y)

   Inner products / kernels:

                                              κA (x, y) = xT Ay

   Algorithms for constructing A learn both measures




      Brian Kulis University of California at Berkeley   Metric Learning
From Linear to Nonlinear Learning

Consider the following kernelized problem
    You are given a kernel function κ(x, y) = ϕ(x)T ϕ(y)
    You want to run a metric learning algorithm in kernel space
         Optimization algorithm cannot use the explicit feature vectors ϕ(x)
         Must be able to compute the distance/kernel over arbitrary points (not
         just training points)
    Mahalanobis distance is of the form:

                          dA (x, y) = (ϕ(x) − ϕ(y))T A(ϕ(x) − ϕ(y))

    Kernel is of the form:

                                          κA (x, y) = ϕ(x)T Aϕ(y)

    Can be thought of as a kind of kernel learning problem


        Brian Kulis University of California at Berkeley   Metric Learning
Kernelization of ITML

   First example: ITML
   Recall the update for ITML

                          At+1 = At + βt At (xi − xj )(xi − xj )T At


       Distance constraint over pair (xi , xj )
       βt computed in closed form
   How can we make this update independent of the dimensionality?




      Brian Kulis University of California at Berkeley   Metric Learning
Kernelization of ITML

   Rewrite the algorithm in terms of inner products (kernel functions)

                           At+1 = At + βt At (xi − xj )(xi − xj )T At

   Inner products in this case: xT At xj
                                 i




       Brian Kulis University of California at Berkeley   Metric Learning
Kernelization of ITML

   Rewrite the algorithm in terms of inner products (kernel functions)

        X T At+1 X = X T At X + βt X T At X (ei − ej )(ei − ej )T X T At X

   Entry (i, j) of X T At X is exactly xT Axj = κA (xi , xj )
                                        i
   Denote X T At X as Kt , the kernel matrix at step t

                           Kt+1 = Kt + βt Kt (ei − ej )(ei − ej )T Kt




       Brian Kulis University of California at Berkeley   Metric Learning
Kernel Learning

   Squared Euclidean distance in kernel space:
                                           2
                             xi − xj       2   = xT xi + xT xj − 2xT xj
                                                  i       j        i

   Replace with kernel functions / kernel matrix:

                 κ(xi , xi ) + κ(xj , xj ) − 2κ(xi , xj ) = Kii + Kjj − 2Kij

   Related to ITML, define the following optimization problem

     minK       D d (K , K0 )
     s.t.       Kii + Kjj − 2Kij ≤ u if (i, j) ∈ S [similarity constraints]
                Kii + Kjj − 2Kij ≥   if (i, j) ∈ D [dissimilarity constraints]

       K0 = X T X is the input kernel matrix
       To solve this, only the original kernel function κ(xi , xj ) is required

      Brian Kulis University of California at Berkeley   Metric Learning
Kernel Learning

      Bregman projections for the kernel learning problem:

                               Kt+1 = Kt + βt Kt (ei − ej )(ei − ej )T Kt

      Suggests a strong connection between the 2 problems
      Theorem: Let A∗ be the optimal solution to ITML, and A0 = I . Let
      K ∗ be the optimal solution to the kernel learning problem. Then
      K ∗ = X T A∗ X .
            Solving the kernel learning problem is “equivalent” to solving ITML
            So we can run entirely in kernel space
            But, given two new points, how to compute distance?
[Davis, Kulis, Jain, Sra, and Dhillon; ICML 2007]




           Brian Kulis University of California at Berkeley   Metric Learning
Induction with LogDet

      Theorem: Let A∗ be the optimal solution to ITML, and let A0 = I .
      Let K ∗ be the optimal solution to the kernel learning problem, and let
      K0 = X T X be the input kernel matrix. Then

                                         A∗ = I + XSX T
                                                     −1            −1
                                           S      = K0 (K ∗ − K0 )K0


            Gives us a way to implicitly compute A∗ once we solve for K ∗
      Algorithm
            Solve for K ∗
            Construct S using K0 and K ∗
            Given two points x and y, the kernel κA (x, y) = xT Ay is computed as
                                                                      n
                                  κA (xi , xj ) = κ(xi , xj ) +             Sij κ(x, xi )κ(xj , y)
                                                                    i,j=1

[Davis, Kulis, Jain, Sra, and Dhillon; ICML 2007]
           Brian Kulis University of California at Berkeley   Metric Learning
Kernelization of POLA

   Recall updates for POLA
                                          ˆ
                                          At       = At − yt αt vt vTt
                                      At+1           ˆ
                                                   = At − λd ud uT d



       vt is the difference of 2 data points
                                         ˆ
       ud is the smallest eigenvector of At
       1st update projects onto set Ct where hinge loss is zero (applied only
       when loss is non-zero)
                                                                   ˆ
       2nd update projects onto PSD cone Ca (applied only when At has
       negative eigenvalue)
   Claim: Analogous to ITML, A∗ = XSX T , where X is the matrix of
   data points
       Prove this inductively



      Brian Kulis University of California at Berkeley   Metric Learning
Kernelization of POLA

Projection onto Ct
     At = XSt X T
     Say the 2 data points are indexed by i and j
          Then vt = X (ei − ej )
                                                     ˆ
     Rewrite At − yt αvt vT to get update from St to St :
                          t
                      ˆ
                      At      = XSt X T − yt αt X (ei − ej )(ei − ej )T X T
                              = X (St − yt αt (ei − ej )(ei − ej )T )X T
Projection onto Ca
                             ˆ
     ud is an eigenvector of At , i.e.,
                                  ˆ
                                  At ud           ˆ
                                              = X St X T u = λd ud
                                                     1 ˆ T
                                      ud      = X       St X ud = X q
                                                    λd

          Construction for q non-trivial; involves kernelized Gram-Schmidt
          Expensive (cubic in dimensionality)
         Brian Kulis University of California at Berkeley   Metric Learning
General Kernelization Results
   Recent work by Chatpatanasiri et al. has shown additional kernelization
   results for
        LMNN
        Neighbourhood Component Analysis
        Discriminant Neighborhood Embedding
   Other recent results show additional, general kernelization results
        Xing et al.
        Other regularizers (trace-norm)
   At this point, most/all existing Mahalanobis metric learning methods
   can be kernelized




       Brian Kulis University of California at Berkeley   Metric Learning
Kernel PCA
  Setup for principal components analysis (PCA)
      Let X = [x1 , ..., xn ] be a set of data points
      Typically assume data is centered, not critical here
      Denote SVD of X as X = U T ΣV
      Left singular vectors in U corresponding to non-zero singular values are
      an orthonormal basis for the span of the xi vectors
      Covariance matrix is C = XX T = U T ΣT ΣU, kernel matrix is
      K = X T X = V T ΣT ΣV
  Standard PCA recipe
      Compute SVD of X
      Project data onto leading singular vectors U, e.g., ˜ = Ux
                                                          x




     Brian Kulis University of California at Berkeley   Metric Learning
Kernel PCA
  Key result from the late 1990s: kernelization of PCA
      Can also form projections using the kernel matrix
      Allows one to avoid computing SVD
      If X = U T ΣV , then U = Σ−1 VX T

                                                   Ux = Σ−1 VX T x

      Computation involves inner products X T x, eigenvectors V of the kernel
      matrix, and eigenvalues of the kernel matrix
  Relation to Mahalanobis distance methods
      Kernel PCA allows one to implicitly compute an orthogonal basis U of
      the data points, and to project arbitrary data points onto this basis
      For a data set of n points, dimension of basis is at most n
      Projecting onto U results in an n-dimensional vector




     Brian Kulis University of California at Berkeley   Metric Learning
Using kernel PCA for metric learning
      Given a set of points in kernel space X = [ϕ(x1 ), ..., ϕ(xn )]
            Form a basis U and project data onto that basis to form
            ˜
            X = [˜1 , ..., xn ] = [Uϕ(x1 ), ...., Uϕ(xn )] using kernel PCA
                 x         ˜
      Consider a general unconstrained optimization problem f that is a
      function of kernel function values, i.e.
                                             f ({ϕ(xi )T Aϕ(xj )}n )
                                                                 i,j=1

      Associated minimization
                                          min f ({ϕ(xi )T Aϕ(xj )}n )
                                                                  i,j=1
                                          A 0

      Theorem: The optimal value of the above optimization is the same as
      that of
                            min f ({˜iT A xj }n )
                                    x     ˜ i,j=1
                                               A     0

      where A is n × n.
[Chatpatanasiri, Korsrilabutr, Tangchanachaianan, and Kijsirikul; ArXiV 2008]
           Brian Kulis University of California at Berkeley   Metric Learning
Consequences

   Any Mahalanobis distance learning method that is unconstrained and
   can be expressed as a function of learned inner products can be
   kernelized
   Examples
       Neighbourhood Components Analysis
       LMNN (write as unconstrained via the hinge loss)
       Discriminant neighborhood embedding
   Generalizing to new points
       For a new point ϕ(x), construct ˜ and use Mahalanobis distance with
                                       x
       learned matrix A
   Algorithms
       Exactly the same algorithms employed as in linear case




      Brian Kulis University of California at Berkeley   Metric Learning
Extensions
   Chatpatanasiri et al. considered extensions for low-rank transformations

       Also showed benefits of kernelization in several scenarios
   Recent results (Jain et al.) have shown complementary results for
   constrained optimization problems
       ITML is a special case of this analysis
       Other methods follow easily, e.g., methods based on trace-norm
       regularization
   Now most Mahalanobis metric learning methods have been shown to
   be kernelizable




      Brian Kulis University of California at Berkeley   Metric Learning
Scalability in Kernel Space
   In many situations, dimensionality d and the number of data points n
   is high
       Typically, linear Mahalanobis metric learning methods scale as O(d 2 ) or
       O(d 3 )
       Kernelized Mahalanobis methods scale as O(n2 ) or O(n3 )
       What to do when both are large?
   Main idea: restrict the basis used for learning the metric
       Can be applied to most methods




      Brian Kulis University of California at Berkeley   Metric Learning
Scalability with the kernel PCA approach
   Recall the kernel PCA approach
       Project onto U, the top n left singular vectors
       Instead, project onto the top r left singular vectors
       Proceed as before
   Similar approach can be used for ITML
       The learned kernel is of the form
                                                                 n
                             κA (xi , xj ) = κ(xi , xj ) +             Sij κ(x, xi )κ(xj , y)
                                                               i,j=1

       Restrict S to be r × r instead of n × n, where r < n data points are
       chosen
       Rewrite optimization problem using this form of the kernel
       Constraints on learned distances are still linear, so method can be
       generalized
   Both approaches can be applied to very large data sets
       Example: ITML has been applied to data sets of nearly 1 million points
       (of dimensionality 24,000)
      Brian Kulis University of California at Berkeley   Metric Learning
Nearest neighbors with Mahalanobis metrics
   Once metrics are learned, k-nn is typically used
       k-nn is expensive to compute
       Must compute distances to all n training points
   Recent methods attempt to speed up NN computation
       Locality-sensitive hashing
       Ball trees
   One challenge: can such methods be employed even when algorithms
   are used in kernel space?
       Recent work applied in computer vision community has addressed this
       problem for fast image search




      Brian Kulis University of California at Berkeley   Metric Learning
Other non-linear methods

     Recall that kernelized Mahalanobis methods try to learn the distance
     function
                                G ϕ(x) − G ϕ(y) 2
                                                2

     Chopra et al. learn the non-linear distance
                                                                               2
                                                  GW (x) − GW (y)              2



           GW is a non-linear function
           Application was face verification
           Algorithmic technique: convolutional networks
[Chopra, Hadsell, and LeCun; CVPR 2005]




          Brian Kulis University of California at Berkeley   Metric Learning
Other non-linear methods




   Setup uses relative distance constraints
       Denote Dij as the mapped distance between points i and j
       Let (xi , xj , xk ) be a tuple such that Dij < Dik desired
       The authors define a loss function for each triple of the form
                                      Loss = α1 Dij + α2 exp(−α3           Dik )
       Minimize the sum of the losses over all triples
   Metric is trained using a convolutional network with a Siamese
   architecture from the pixel level
      Brian Kulis University of California at Berkeley   Metric Learning
Other non-linear methods




      Brian Kulis University of California at Berkeley   Metric Learning
Application: Learning Music Similarity

Comparison of metric learning methods for learning music similarity
   MP3s downloaded from a set of music blogs
           After pruning: 319 blogs, 164 artists, 74 distinct albums
           Thousands of songs
     The Echo Nest used to extract features for each song
           Songs broken up into segments (80ms to a few seconds)
           Mean segment duration
           Track tempo estimate
           Regularity of the beat
           Estimation of the time signature
           Overall loudness estimate of the track
           Estimated overall tatum duration
           In total, 18 features extracted for each song
     Training done via labels based on blog, artist, and album (separately)
[Slaney, Weinberger, and White; ISMIR 2008]



          Brian Kulis University of California at Berkeley   Metric Learning
Application: Learning Music Similarity




      Brian Kulis University of California at Berkeley   Metric Learning
Application: Object Recognition




   Several metric learning methods have been evaluated on the Caltech
   101 dataset, a benchmark for object recognition set size




      Brian Kulis University of California at Berkeley   Metric Learning
Application: Object Recognition
   Used the Caltech-101 data set
       Standard benchmark for object recognition
       Many many results for this data set
       101 classes, approximately 4000 total images
   Learned metrics over 2 different image embeddings for ITML: pyramid
   match kernel (PMK) embedding and the embedding from Zhang et al,
   2006
   Also learned metrics via Frome et al’s local distance function approach
   Computed k-nearest neighbor accuracy over varying training set size
   and compared to existing results




      Brian Kulis University of California at Berkeley   Metric Learning
Application: Object Recognition




      Brian Kulis University of California at Berkeley   Metric Learning
Results: Clarify
      Representation: System collects program features during run-time
            Function counts
            Call-site counts
            Counts of program paths
            Program execution represented as a vector of counts
      Class labels: Program execution errors
      Nearest neighbor software support
            Match program executions
            Underlying distance measure should reflect this similarity
      Results
            LaTeX Benchmark: Error drops from 30% to 15%
            LogDet is the best performing algorithm across all benchmarks
[Davis, Kulis, Jain, Sra, and Dhillon; ICML 2007]




           Brian Kulis University of California at Berkeley   Metric Learning
Application: Human Body Pose Estimation




     Brian Kulis University of California at Berkeley   Metric Learning
Pose Estimation




   500,000 synthetically generated images
   Mean error is 34.5 cm per joint between two random images




      Brian Kulis University of California at Berkeley   Metric Learning
Pose Estimation Results

                           Method                                     m        k=1
                           L2 linear scan                            24K       8.9
                           L2 hashing                                24K       9.4
                           PSH, linear scan                          1.5K      9.4
                           PCA, linear scan                           60       13.5
                           PCA+LogDet, lin. scan                      60       13.1
                           LogDet linear scan                        24K       8.4
                           LogDet hashing                            24K       8.8

     Error above given is mean error in cm per joint
     Linear scan requires 433.25 seconds per query; hashing requires 1.39
     seconds per query (hashing searches 0.5% of database)
[Jain, Kulis, and Grauman; CVPR 2008]




          Brian Kulis University of California at Berkeley   Metric Learning
Pose Estimation Results




      Brian Kulis University of California at Berkeley   Metric Learning
Application: Text Retrieval




[Davis and Dhillon; SIGKDD 2008]




          Brian Kulis University of California at Berkeley   Metric Learning
Summary and Conclusions
   Metric learning is a mature technology
       Complaints about scalability in terms of dimensionality or number of
       data points no longer valid
       Many different formulations have been studied, especially for
       Mahalanobis metric learning
       Online vs offline settings possible
   Metric learning has been applied to many interesting problems
       Language problems
       Music similarity
       Pose estimation
       Image similarity and search
       Face verification




      Brian Kulis University of California at Berkeley   Metric Learning
Summary and Conclusions
   Metric learning has interesting theoretical components
        Analysis of online settings
        Analysis of high-dimensional (kernelized) settings
   Metric learning is still an interesting area of study
        Learning multiple metrics over data sets
        New applications
        Formulations that integrate better with problems other than k-nn
        Improved algorithms for better scalability
        ...




       Brian Kulis University of California at Berkeley   Metric Learning

More Related Content

What's hot

Intro to Feature Selection
Intro to Feature SelectionIntro to Feature Selection
Intro to Feature Selection
chenhm
 
A Review of the Split Bregman Method for L1 Regularized Problems
A Review of the Split Bregman Method for L1 Regularized ProblemsA Review of the Split Bregman Method for L1 Regularized Problems
A Review of the Split Bregman Method for L1 Regularized Problems
Pardis N
 
Manifold learning with application to object recognition
Manifold learning with application to object recognitionManifold learning with application to object recognition
Manifold learning with application to object recognition
zukun
 
Image processing9 segmentation(pointslinesedges)
Image processing9 segmentation(pointslinesedges)Image processing9 segmentation(pointslinesedges)
Image processing9 segmentation(pointslinesedges)
John Williams
 

What's hot (20)

High Dimensional Data Visualization using t-SNE
High Dimensional Data Visualization using t-SNEHigh Dimensional Data Visualization using t-SNE
High Dimensional Data Visualization using t-SNE
 
Intro to Feature Selection
Intro to Feature SelectionIntro to Feature Selection
Intro to Feature Selection
 
Graph Neural Network in practice
Graph Neural Network in practiceGraph Neural Network in practice
Graph Neural Network in practice
 
The ways of node embedding
The ways of node embeddingThe ways of node embedding
The ways of node embedding
 
2.6 support vector machines and associative classifiers revised
2.6 support vector machines and associative classifiers revised2.6 support vector machines and associative classifiers revised
2.6 support vector machines and associative classifiers revised
 
Kernel Method
Kernel MethodKernel Method
Kernel Method
 
Image stitching
Image stitchingImage stitching
Image stitching
 
A Walk in the GAN Zoo
A Walk in the GAN ZooA Walk in the GAN Zoo
A Walk in the GAN Zoo
 
Content-based Image Retrieval - Eva Mohedano - UPC Barcelona 2018
Content-based Image Retrieval - Eva Mohedano - UPC Barcelona 2018Content-based Image Retrieval - Eva Mohedano - UPC Barcelona 2018
Content-based Image Retrieval - Eva Mohedano - UPC Barcelona 2018
 
A Review of the Split Bregman Method for L1 Regularized Problems
A Review of the Split Bregman Method for L1 Regularized ProblemsA Review of the Split Bregman Method for L1 Regularized Problems
A Review of the Split Bregman Method for L1 Regularized Problems
 
Fuzzy logic in approximate Reasoning
Fuzzy logic in approximate ReasoningFuzzy logic in approximate Reasoning
Fuzzy logic in approximate Reasoning
 
K means report
K means reportK means report
K means report
 
Manifold learning with application to object recognition
Manifold learning with application to object recognitionManifold learning with application to object recognition
Manifold learning with application to object recognition
 
Graph Based Pattern Recognition
Graph Based Pattern RecognitionGraph Based Pattern Recognition
Graph Based Pattern Recognition
 
Object recognition of CIFAR - 10
Object recognition of CIFAR  - 10Object recognition of CIFAR  - 10
Object recognition of CIFAR - 10
 
Understandig PCA and LDA
Understandig PCA and LDAUnderstandig PCA and LDA
Understandig PCA and LDA
 
Dimensionality reduction with UMAP
Dimensionality reduction with UMAPDimensionality reduction with UMAP
Dimensionality reduction with UMAP
 
Image processing9 segmentation(pointslinesedges)
Image processing9 segmentation(pointslinesedges)Image processing9 segmentation(pointslinesedges)
Image processing9 segmentation(pointslinesedges)
 
Computer Vision Structure from motion
Computer Vision Structure from motionComputer Vision Structure from motion
Computer Vision Structure from motion
 
Depth estimation using deep learning
Depth estimation using deep learningDepth estimation using deep learning
Depth estimation using deep learning
 

Viewers also liked

論文輪読: Deep neural networks are easily fooled: High confidence predictions for...
論文輪読: Deep neural networks are easily fooled: High confidence predictions for...論文輪読: Deep neural networks are easily fooled: High confidence predictions for...
論文輪読: Deep neural networks are easily fooled: High confidence predictions for...
mmisono
 
Improving neural networks by preventing co adaptation of feature detectors
Improving neural networks by preventing co adaptation of feature detectorsImproving neural networks by preventing co adaptation of feature detectors
Improving neural networks by preventing co adaptation of feature detectors
Junya Saito
 
Information-Theoretic Metric Learning
Information-Theoretic Metric LearningInformation-Theoretic Metric Learning
Information-Theoretic Metric Learning
Koji Matsuda
 

Viewers also liked (12)

論文輪読: Deep neural networks are easily fooled: High confidence predictions for...
論文輪読: Deep neural networks are easily fooled: High confidence predictions for...論文輪読: Deep neural networks are easily fooled: High confidence predictions for...
論文輪読: Deep neural networks are easily fooled: High confidence predictions for...
 
Distance Metric Learning
Distance Metric LearningDistance Metric Learning
Distance Metric Learning
 
Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...
Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...
Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...
 
An Introduction to Metric Learning for Clustering
An Introduction to Metric Learning for ClusteringAn Introduction to Metric Learning for Clustering
An Introduction to Metric Learning for Clustering
 
Improving neural networks by preventing co adaptation of feature detectors
Improving neural networks by preventing co adaptation of feature detectorsImproving neural networks by preventing co adaptation of feature detectors
Improving neural networks by preventing co adaptation of feature detectors
 
Information-Theoretic Metric Learning
Information-Theoretic Metric LearningInformation-Theoretic Metric Learning
Information-Theoretic Metric Learning
 
Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3
Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3
Adversarial Networks の画像生成に迫る @WBAFLカジュアルトーク#3
 
Image net classification with Deep Convolutional Neural Networks
Image net classification with Deep Convolutional Neural NetworksImage net classification with Deep Convolutional Neural Networks
Image net classification with Deep Convolutional Neural Networks
 
Deep Residual Learning (ILSVRC2015 winner)
Deep Residual Learning (ILSVRC2015 winner)Deep Residual Learning (ILSVRC2015 winner)
Deep Residual Learning (ILSVRC2015 winner)
 
20150930
2015093020150930
20150930
 
MIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearningMIRU2014 tutorial deeplearning
MIRU2014 tutorial deeplearning
 
Deep Convolutional Generative Adversarial Networks - Nextremer勉強会資料
Deep Convolutional Generative Adversarial Networks - Nextremer勉強会資料Deep Convolutional Generative Adversarial Networks - Nextremer勉強会資料
Deep Convolutional Generative Adversarial Networks - Nextremer勉強会資料
 

Similar to Metric learning ICML2010 tutorial

ECCV2010: distance function and metric learning part 2
ECCV2010: distance function and metric learning part 2ECCV2010: distance function and metric learning part 2
ECCV2010: distance function and metric learning part 2
zukun
 
Data.Mining.C.6(II).classification and prediction
Data.Mining.C.6(II).classification and predictionData.Mining.C.6(II).classification and prediction
Data.Mining.C.6(II).classification and prediction
Margaret Wang
 
Matrix Computations in Machine Learning
Matrix Computations in Machine LearningMatrix Computations in Machine Learning
Matrix Computations in Machine Learning
butest
 
15_wk4_unsupervised-learning_manifold-EM-cs365-2014.pdf
15_wk4_unsupervised-learning_manifold-EM-cs365-2014.pdf15_wk4_unsupervised-learning_manifold-EM-cs365-2014.pdf
15_wk4_unsupervised-learning_manifold-EM-cs365-2014.pdf
McSwathi
 
Poggi analytics - distance - 1a
Poggi   analytics - distance - 1aPoggi   analytics - distance - 1a
Poggi analytics - distance - 1a
Gaston Liberman
 
Machine Learning Machine Learnin Machine Learningg
Machine Learning Machine Learnin Machine LearninggMachine Learning Machine Learnin Machine Learningg
Machine Learning Machine Learnin Machine Learningg
ghsskchutta
 

Similar to Metric learning ICML2010 tutorial (20)

ECCV2010: distance function and metric learning part 2
ECCV2010: distance function and metric learning part 2ECCV2010: distance function and metric learning part 2
ECCV2010: distance function and metric learning part 2
 
IntroML_6_Classification_part3
IntroML_6_Classification_part3IntroML_6_Classification_part3
IntroML_6_Classification_part3
 
Clustering
ClusteringClustering
Clustering
 
Support Vector Machine.ppt
Support Vector Machine.pptSupport Vector Machine.ppt
Support Vector Machine.ppt
 
svm.ppt
svm.pptsvm.ppt
svm.ppt
 
support vector machine algorithm in machine learning
support vector machine algorithm in machine learningsupport vector machine algorithm in machine learning
support vector machine algorithm in machine learning
 
Data.Mining.C.6(II).classification and prediction
Data.Mining.C.6(II).classification and predictionData.Mining.C.6(II).classification and prediction
Data.Mining.C.6(II).classification and prediction
 
Matrix Computations in Machine Learning
Matrix Computations in Machine LearningMatrix Computations in Machine Learning
Matrix Computations in Machine Learning
 
15_wk4_unsupervised-learning_manifold-EM-cs365-2014.pdf
15_wk4_unsupervised-learning_manifold-EM-cs365-2014.pdf15_wk4_unsupervised-learning_manifold-EM-cs365-2014.pdf
15_wk4_unsupervised-learning_manifold-EM-cs365-2014.pdf
 
Lect4
Lect4Lect4
Lect4
 
Text categorization
Text categorizationText categorization
Text categorization
 
Poggi analytics - distance - 1a
Poggi   analytics - distance - 1aPoggi   analytics - distance - 1a
Poggi analytics - distance - 1a
 
lawper.ppt
lawper.pptlawper.ppt
lawper.ppt
 
MLHEP Lectures - day 1, basic track
MLHEP Lectures - day 1, basic trackMLHEP Lectures - day 1, basic track
MLHEP Lectures - day 1, basic track
 
An Introduction to Supervised Machine Learning and Pattern Classification: Th...
An Introduction to Supervised Machine Learning and Pattern Classification: Th...An Introduction to Supervised Machine Learning and Pattern Classification: Th...
An Introduction to Supervised Machine Learning and Pattern Classification: Th...
 
MAchine learning
MAchine learningMAchine learning
MAchine learning
 
17.ppt
17.ppt17.ppt
17.ppt
 
PPT-3.ppt
PPT-3.pptPPT-3.ppt
PPT-3.ppt
 
Machine Learning Machine Learnin Machine Learningg
Machine Learning Machine Learnin Machine LearninggMachine Learning Machine Learnin Machine Learningg
Machine Learning Machine Learnin Machine Learningg
 
[ppt]
[ppt][ppt]
[ppt]
 

More from zukun

My lyn tutorial 2009
My lyn tutorial 2009My lyn tutorial 2009
My lyn tutorial 2009
zukun
 
ETHZ CV2012: Tutorial openCV
ETHZ CV2012: Tutorial openCVETHZ CV2012: Tutorial openCV
ETHZ CV2012: Tutorial openCV
zukun
 
ETHZ CV2012: Information
ETHZ CV2012: InformationETHZ CV2012: Information
ETHZ CV2012: Information
zukun
 
Siwei lyu: natural image statistics
Siwei lyu: natural image statisticsSiwei lyu: natural image statistics
Siwei lyu: natural image statistics
zukun
 
Lecture9 camera calibration
Lecture9 camera calibrationLecture9 camera calibration
Lecture9 camera calibration
zukun
 
Brunelli 2008: template matching techniques in computer vision
Brunelli 2008: template matching techniques in computer visionBrunelli 2008: template matching techniques in computer vision
Brunelli 2008: template matching techniques in computer vision
zukun
 
Modern features-part-4-evaluation
Modern features-part-4-evaluationModern features-part-4-evaluation
Modern features-part-4-evaluation
zukun
 
Modern features-part-3-software
Modern features-part-3-softwareModern features-part-3-software
Modern features-part-3-software
zukun
 
Modern features-part-2-descriptors
Modern features-part-2-descriptorsModern features-part-2-descriptors
Modern features-part-2-descriptors
zukun
 
Modern features-part-1-detectors
Modern features-part-1-detectorsModern features-part-1-detectors
Modern features-part-1-detectors
zukun
 
Modern features-part-0-intro
Modern features-part-0-introModern features-part-0-intro
Modern features-part-0-intro
zukun
 
Lecture 02 internet video search
Lecture 02 internet video searchLecture 02 internet video search
Lecture 02 internet video search
zukun
 
Lecture 01 internet video search
Lecture 01 internet video searchLecture 01 internet video search
Lecture 01 internet video search
zukun
 
Lecture 03 internet video search
Lecture 03 internet video searchLecture 03 internet video search
Lecture 03 internet video search
zukun
 
Icml2012 tutorial representation_learning
Icml2012 tutorial representation_learningIcml2012 tutorial representation_learning
Icml2012 tutorial representation_learning
zukun
 
Advances in discrete energy minimisation for computer vision
Advances in discrete energy minimisation for computer visionAdvances in discrete energy minimisation for computer vision
Advances in discrete energy minimisation for computer vision
zukun
 
Gephi tutorial: quick start
Gephi tutorial: quick startGephi tutorial: quick start
Gephi tutorial: quick start
zukun
 
EM algorithm and its application in probabilistic latent semantic analysis
EM algorithm and its application in probabilistic latent semantic analysisEM algorithm and its application in probabilistic latent semantic analysis
EM algorithm and its application in probabilistic latent semantic analysis
zukun
 
Object recognition with pictorial structures
Object recognition with pictorial structuresObject recognition with pictorial structures
Object recognition with pictorial structures
zukun
 
Iccv2011 learning spatiotemporal graphs of human activities
Iccv2011 learning spatiotemporal graphs of human activities Iccv2011 learning spatiotemporal graphs of human activities
Iccv2011 learning spatiotemporal graphs of human activities
zukun
 

More from zukun (20)

My lyn tutorial 2009
My lyn tutorial 2009My lyn tutorial 2009
My lyn tutorial 2009
 
ETHZ CV2012: Tutorial openCV
ETHZ CV2012: Tutorial openCVETHZ CV2012: Tutorial openCV
ETHZ CV2012: Tutorial openCV
 
ETHZ CV2012: Information
ETHZ CV2012: InformationETHZ CV2012: Information
ETHZ CV2012: Information
 
Siwei lyu: natural image statistics
Siwei lyu: natural image statisticsSiwei lyu: natural image statistics
Siwei lyu: natural image statistics
 
Lecture9 camera calibration
Lecture9 camera calibrationLecture9 camera calibration
Lecture9 camera calibration
 
Brunelli 2008: template matching techniques in computer vision
Brunelli 2008: template matching techniques in computer visionBrunelli 2008: template matching techniques in computer vision
Brunelli 2008: template matching techniques in computer vision
 
Modern features-part-4-evaluation
Modern features-part-4-evaluationModern features-part-4-evaluation
Modern features-part-4-evaluation
 
Modern features-part-3-software
Modern features-part-3-softwareModern features-part-3-software
Modern features-part-3-software
 
Modern features-part-2-descriptors
Modern features-part-2-descriptorsModern features-part-2-descriptors
Modern features-part-2-descriptors
 
Modern features-part-1-detectors
Modern features-part-1-detectorsModern features-part-1-detectors
Modern features-part-1-detectors
 
Modern features-part-0-intro
Modern features-part-0-introModern features-part-0-intro
Modern features-part-0-intro
 
Lecture 02 internet video search
Lecture 02 internet video searchLecture 02 internet video search
Lecture 02 internet video search
 
Lecture 01 internet video search
Lecture 01 internet video searchLecture 01 internet video search
Lecture 01 internet video search
 
Lecture 03 internet video search
Lecture 03 internet video searchLecture 03 internet video search
Lecture 03 internet video search
 
Icml2012 tutorial representation_learning
Icml2012 tutorial representation_learningIcml2012 tutorial representation_learning
Icml2012 tutorial representation_learning
 
Advances in discrete energy minimisation for computer vision
Advances in discrete energy minimisation for computer visionAdvances in discrete energy minimisation for computer vision
Advances in discrete energy minimisation for computer vision
 
Gephi tutorial: quick start
Gephi tutorial: quick startGephi tutorial: quick start
Gephi tutorial: quick start
 
EM algorithm and its application in probabilistic latent semantic analysis
EM algorithm and its application in probabilistic latent semantic analysisEM algorithm and its application in probabilistic latent semantic analysis
EM algorithm and its application in probabilistic latent semantic analysis
 
Object recognition with pictorial structures
Object recognition with pictorial structuresObject recognition with pictorial structures
Object recognition with pictorial structures
 
Iccv2011 learning spatiotemporal graphs of human activities
Iccv2011 learning spatiotemporal graphs of human activities Iccv2011 learning spatiotemporal graphs of human activities
Iccv2011 learning spatiotemporal graphs of human activities
 

Recently uploaded

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 

Recently uploaded (20)

Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 

Metric learning ICML2010 tutorial

  • 1. Metric Learning ICML 2010 Tutorial Brian Kulis University of California at Berkeley June 21, 2010 Brian Kulis University of California at Berkeley Metric Learning
  • 2. Introduction Learning problems with distances and similarities k-means Support vector machines k-nearest neighbors Most algorithms that employ kernel methods Other clustering algorithms (agglomerative, spectral, etc) ... Brian Kulis University of California at Berkeley Metric Learning
  • 3. Choosing a distance function Brian Kulis University of California at Berkeley Metric Learning
  • 4. Choosing a distance function Example: UCI Wine data set 13 features 9/13 features have mean value in [0, 10] 3/13 features have mean value in [10, 100] One feature has a mean value of 747 (with std 315) Using a standard distance such as Euclidean distance, the largest feature dominates the computation That feature may not be important for classification Need a weighting of the features that improves classification or other tasks Brian Kulis University of California at Berkeley Metric Learning
  • 5. Example: Four Blobs Brian Kulis University of California at Berkeley Metric Learning
  • 6. Example: Four Blobs Brian Kulis University of California at Berkeley Metric Learning
  • 7. Example: Four Blobs Brian Kulis University of California at Berkeley Metric Learning
  • 8. Example: Four Blobs Brian Kulis University of California at Berkeley Metric Learning
  • 9. Example: Four Blobs Brian Kulis University of California at Berkeley Metric Learning
  • 10. Metric Learning as Learning Transformations Feature re-weighting Learn weightings over the features, then use standard distance (e.g., Euclidean) after re-weighting Diagonal Mahalanobis methods (e.g., Schultz and Joachims) Number of parameters grows linearly with the dimensionality d Full linear transformation In addition to scaling of features, also rotates the data For transformations from d dimensions to d dimensions, number of parameters grows quadratically in d For transformations to r < d dimensions, this is linear dimensionality reduction Non-linear transformation Variety of methods Neural nets Kernelization of linear transformations Complexity varies from method to method Brian Kulis University of California at Berkeley Metric Learning
  • 11. Supervised vs Unsupervised Metric Learning Unsupervised Metric Learning Dimensionality reduction techniques Principal Components Analysis Kernel PCA Multidimensional Scaling In general, not the topic of this tutorial... Supervised and Semi-supervised Metric Learning Constraints or labels given to the algorithm Example: set of similarity and dissimilarity constraints This is the focus of the tutorial Brian Kulis University of California at Berkeley Metric Learning
  • 12. Themes of the tutorial Not just a list of algorithms General principles Focus on a few key methods Recurring ideas Scalability Linear vs non-linear Online vs offline Optimization techniques utilized Statements about general formulations Applications Where is metric learning applied? Success stories Limitations Brian Kulis University of California at Berkeley Metric Learning
  • 13. Outline of Tutorial Motivation Linear metric learning methods Mahalanobis metric learning Per-example methods Non-linear metric learning methods Kernelization of Mahalanobis methods Other non-linear methods Applications Conclusions Brian Kulis University of California at Berkeley Metric Learning
  • 14. Mahalanobis Distances Brian Kulis University of California at Berkeley Metric Learning
  • 15. Mahalanobis Distances Assume the data is represented as N vectors of length d: X = [x1 , x2 , ..., xN ] Squared Euclidean distance 2 d(x1 , x2 ) = x1 − x2 2 T = (x1 − x2 ) (x1 − x2 ) Let Σ = i,j (xi − µ)(xj − µ)T The “original” Mahalanobis distance: dM (x1 , x2 ) = (x1 − x2 )T Σ−1 (x1 − x2 ) Brian Kulis University of California at Berkeley Metric Learning
  • 16. Mahalanobis Distances Equivalent to applying a whitening transform Brian Kulis University of California at Berkeley Metric Learning
  • 17. Mahalanobis Distances Assume the data is represented as N vectors of length d: X = [x1 , x2 , ..., xN ] Squared Euclidean distance 2 d(x1 , x2 ) = x1 − x2 2 T = (x1 − x2 ) (x1 − x2 ) Mahalanobis distances for metric learning Distance parametrized by d × d positive semi-definite matrix A: dA (x1 , x2 ) = (x1 − x2 )T A(x1 − x2 ) Used for many existing metric learning algorithms [Xing, Ng, Jordan, and Russell; NIPS 2002] [Bar-Hillel, Hertz, Shental, and Weinshall; ICML 2003] [Bilenko, Basu, and Mooney; ICML 2004] [Globerson and Roweis; NIPS 2005] [Weinberger, Blitzer, and Saul; NIPS 2006] Brian Kulis University of California at Berkeley Metric Learning
  • 18. Mahalanobis Distances dA (x1 , x2 ) = (x1 − x2 )T A(x1 − x2 ) Why is A positive semi-definite (PSD)? If A is not PSD, then dA could be negative Suppose v = x1 − x2 is an eigenvector corresponding to a negative eigenvalue λ of A dA (x1 , x2 ) = (x1 − x2 )T A(x1 − x2 ) = vT Av = λvT v = λ < 0 Brian Kulis University of California at Berkeley Metric Learning
  • 19. Mahalanobis Distances Properties of a metric: d(x, y) ≥ 0 d(x, y) = 0 if and only if x = y d(x, y) = d(y, x) d(x, z) ≤ d(x, y) + d(y, z) dA is not technically a metric Analogous to Euclidean distance, need the square root: dA (x1 , x2 ) = (x1 − x2 )T A(x1 − x2 ) Square root of the Mahalanobis distance satisfies all properties if A is strictly positive definite, but if A is positive semi-definite then second property is not satisfied Called a pseudo-metric In practice, most algorithms work only with dA Brian Kulis University of California at Berkeley Metric Learning
  • 20. Mahalanobis Distances Can view dA as the squared Euclidean distance after applying a linear transformation Decompose A = G T G via Cholesky decomposition (Alternatively, take eigenvector decomposition A = V ΛV T and look at A = (Λ1/2 V T )T (Λ1/2 V T )) Then we have dA (x1 , x2 ) = (x1 − x2 )T A(x1 − x2 ) = (x1 − x2 )G T G (x1 − x2 ) = (G x1 − G x2 )T (G x1 − G x2 ) 2 = G x1 − G x2 2 Mahalanobis distance is just the squared Euclidean distance after applying the linear transformation G Brian Kulis University of California at Berkeley Metric Learning
  • 21. Example: Four Blobs Brian Kulis University of California at Berkeley Metric Learning
  • 22. Example: Four Blobs Brian Kulis University of California at Berkeley Metric Learning
  • 23. Example: Four Blobs Want to learn: 1 0 1 0 A= G= √ 0 0 Brian Kulis University of California at Berkeley Metric Learning
  • 24. Example: Four Blobs Brian Kulis University of California at Berkeley Metric Learning
  • 25. Example: Four Blobs Want to learn: √ 0 0 A= G= 0 1 0 1 Brian Kulis University of California at Berkeley Metric Learning
  • 26. Drawbacks to Mahalanobis Metric Learning Memory overhead grows quadratically with the dimensionality of the data Does not scale to high-dimensional data (d = O(106 ) for many image embeddings) Only works for linearly separable data Cannot seemingly be applied to “real” data! These drawbacks will be discussed later Brian Kulis University of California at Berkeley Metric Learning
  • 27. Metric Learning Problem Formulation Typically 2 main pieces to a Mahalanobis metric learning problem A set of constraints on the distance A regularizer on the distance / objective function In the constrained case, a general problem may look like: minA r (A) s.t. ci (A) ≤ 0 0 ≤ i ≤ C A 0 r is a regularizer/objective on A and ci are the constraints on A An unconstrained version may look like: C min r (A) + λ ci (A) A 0 i=1 Brian Kulis University of California at Berkeley Metric Learning
  • 28. Defining Constraints Similarity / Dissimilarity constraints Given a set of pairs S of points that should be similar, and a set of pairs of points D of points that should be dissimilar A single constraint would be of the form dA (xi , xj ) ≤ for (i, j) ∈ S or dA (xi , xj ) ≥ u for (i, j) ∈ D Easy to specify given class labels Relative distance constraints Given a triple (xi , xj , xk ) such that the distance between xi and xj should be smaller than the distance between xi and xk , a single constraint is of the form dA (xi , xj ) ≤ dA (xi , xk ) − m, where m is the margin Popular for ranking problems Brian Kulis University of California at Berkeley Metric Learning
  • 29. Defining Constraints Aggregate distance constraints Constrain the sum of all pairs of same-class distances to be small, e.g., yij dA (xi , xj ) ≤ 1 ij where yij = 1 if xi and xj are in the same class, and 0 otherwise Other constraints Non-parametric probability estimation constraints Constraints on the generalized inner product xT Axj : i dA (xi , xj ) = xT Axi + xT Axj − 2xT Axj i j i Brian Kulis University of California at Berkeley Metric Learning
  • 30. Defining the Regularizer or Objective Loss/divergence functions Squared Frobenius norm: A − A0 2 F LogDet divergence: tr(AA−1 ) − log det(AA−1 ) − d 0 0 General loss functions D(A, A0 ) Will discuss several of these later Other regularizers A 2F tr(AC0 ) (i.e., if C0 is the identity, this is the trace norm) Brian Kulis University of California at Berkeley Metric Learning
  • 31. Choosing a Regularizer Depends on the problem! Example 1: tr(A) Trace function is the sum of the eigenvalues Analogous to the 1 penalty, promotes sparsity Leads to low-rank A Example 2: LogDet Divergence Defined only over positive semi-definite matrices Makes computation simpler Possesses other desirable properties Example 3: A 2 F Arises in many formulations Easy to analyze and optimize Brian Kulis University of California at Berkeley Metric Learning
  • 32. Defining the Optimization Many existing Mahalanobis distance learning methods can be obtained simply by choosing a regularizer/objective and constraints We will discuss properties of several of these Brian Kulis University of California at Berkeley Metric Learning
  • 33. Xing et al.’s MMC Problem posed as follows: max (xi ,xj )∈D dA (xi , xj ) A s.t. c(A) = (xi ,xj )∈S dA (xi , xj ) ≤ 1 A 0. Here, D is a set of pairs of dissimilar pairs, S is a set of similar pairs Objective tries to maximize sum of dissimilar distances Constraint keeps sum of similar distances small Use square root in regularizer to avoid trivial solution [Xing, Ng, Jordan, and Russell; NIPS 2002] Brian Kulis University of California at Berkeley Metric Learning
  • 34. Xing et al.’s MMC Algorithm Based on gradient descent over the objective followed by an iterative projection step to find a feasible A Constraint c(A) is linear in A, can be solved cheaply Orthogonal projection onto A 0 achieved by setting A’s negative eigenvalues to 0 Iterative between these two steps to find feasible A for both constraints, then take a step in the gradient of the objective Despite relative simplicity, the algorithm is fairly slow (many eigenvalue decompositions required) Does not scale to large problems Objective and constraints only look at the sums of distances Brian Kulis University of California at Berkeley Metric Learning
  • 35. Schultz and Joachims Problem formulated as follows: min A 2 F A s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 ∀(i, j, k) ∈ R A 0. Constraints in R are relative distance constraints There may be no solution to this problem; introduce slack variables min A 2 +γ F (i,j,k)∈R ξijk A,ξ s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 − ξijk ∀(i, j, k) ∈ R ξijk ≥ 0 ∀(i, j, k) ∈ R A 0. [Schultz and Joachims; NIPS 2002] Brian Kulis University of California at Berkeley Metric Learning
  • 36. Schultz and Joachims Algorithm Key simplifying assumption made A = M T DM, where M is assumed fixed and known and D is diagonal dA (xi , xj ) = (xi − xj )T A(xi − xj ) = (xi − xj )T M T DM(xi − xj ) = (Mxi − Mxj )T D(Mxi − Mxj ) Effectively constraining the optimization to diagonal matrices Resulting optimization problem is very similar to SVMs, and resulting algorithm is similar By choosing M to be a matrix of data points, method can be kernelized Fast algorithm, but less general than full Mahalanobis methods Brian Kulis University of California at Berkeley Metric Learning
  • 37. Kwok and Tsang Problem formulated as follows: 2 CS CD min A F + NS (xi ,xj )∈S ξij + ND (xi ,xj )∈D ξij − CD γν A,ξ,γ s.t. dI (xi , xj ) ≥ dA (xi , xj ) − ξij ∀(xi , xj ) ∈ S dA (xi , xj ) − dI (xi , xj ) ≥ γ − ξij ∀(xi , xj ) ∈ D ξij ≥ 0 γ≥0 A 0. Same regularization as Schultz and Joachims Similarity/dissimilarity constraints instead of relative distance constraints No simplifying assumptions made about A [Kwok and Tsang; ICML 2003] Brian Kulis University of California at Berkeley Metric Learning
  • 38. Neighbourhood Components Analysis Problem formulated as follows: exp(−dA (xi ,xj )) max i j∈Ci ,j=i P exp(−dA (xi ,xk )) A k=i s.t. A 0. Ci is the set of points in the same class as point xi (not including xi ) Motivation Minimize the leave-one-out KNN classification error LOO error function is discontinuous Replace by a softmax; each point xi chooses a nearest neighbor xj based on probability exp(−dA (xi , xj )) pij = k=i exp(−dA (xi , xk )) [Goldberger, Roweis, Hinton, and Salakhutdinov; NIPS 2004] Brian Kulis University of California at Berkeley Metric Learning
  • 39. Neighbourhood Components Analysis Algorithm Problem is non-convex Rewrite in terms of G , where A = G T G Eliminates A 0 constraint Run gradient descent over G Properties Easy to control the rank of A: just optimize over low-rank G Simple, unconstrained optimization No guarantee of global solution Brian Kulis University of California at Berkeley Metric Learning
  • 40. MCML Recall NCA probabilities exp(−dA (xi , xj )) pij = k=i exp(−dA (xi , xk )) 0 Introduce an “ideal” probability distribution pij : 0 1 if i and j from same class pij ∝ 0 otherwise. Minimize divergence between p 0 and p: min KL(p 0 , p) A s.t. A 0. [Globerson and Roweis; NIPS 2005] Brian Kulis University of California at Berkeley Metric Learning
  • 41. MCML Properties Unlike NCA, MCML is convex Global optimization possible Algorithm based on optimization over the dual Similar to Xing: gradient step plus projection Not discussed in detail in this tutorial Brian Kulis University of California at Berkeley Metric Learning
  • 42. A Closer Look at Some Algorithms As can be seen, several objectives are possible We will take a look at 3 algorithms in-depth for their properties POLA An online algorithm for learning metrics with provable regret Also the first supervised metric learning algorithm that was shown to be kernelizable LMNN Very popular method Algorithm scalable to billions of constraints Extensions for learning multiple metrics ITML Objective with several desirable properties Simpler kernelization construction Online variant Brian Kulis University of California at Berkeley Metric Learning
  • 43. POLA Setup Estimate dA in an online manner Also estimate a threshold b At each step t, observe tuple (xt , xt , yt ) yt = 1 if xt and xt should be similar; -1 otherwise Consider the following loss t (A, b) = max(0, yt (dA (xt , xt )2 − b) + 1) Hinge loss, margin interpretation Appropriately update A and b each iteration [Shalev-Shwartz, Singer, and Ng; NIPS 2004] Brian Kulis University of California at Berkeley Metric Learning
  • 44. Online Learning Setup Define the total loss to be T L= t (At , bt ) t=1 Online learning methods compare the loss to the best fixed, offline predictor A∗ and threshold b ∗ Define regret for T total timesteps as T T ∗ ∗ RT = t (At , bt ) − t (A , b ) t=1 t=1 Design an algorithm that minimizes the regret Same setup as in other online algorithms (classification, regression) √ Modern optimization methods achieve O( T ) regret for a general class, and O(log T ) for some special cases Brian Kulis University of California at Berkeley Metric Learning
  • 45. POLA Algorithm Consider the following convex sets Ct = {(A, b) | t (A, b) = 0} Ca = {(A, b) | A 0, b ≥ 1} Consider orthogonal projections: 2 PC (x) = argminy∈C x − y 2 Think of (A, b) as a vector in d 2 + 1 dimensional space Each step, project onto Ct , then project onto Ca Brian Kulis University of California at Berkeley Metric Learning
  • 46. POLA Algorithm Projection onto Ct Let vt = xt − xt Then projection is computed in closed form as t (At , bt ) αt = vt 4 + 1 2 ˆ At = At − yt αt vt vT t ˆ bt = bt + αt yt Projection onto Ca Orthogonal projection onto positive semi-definite cone obtained by setting negative eigenvalues to 0 ˆ But, update from At to At was rank-one Only 1 negative eigenvalue (interlacing theorem) Thus, only need to compute the smallest eigenvalue and eigenvector (via a power method or related) and subtract it off Brian Kulis University of California at Berkeley Metric Learning
  • 47. Analysis of POLA Theorem: Let (x1 , x1 , y1 ), ..., (xT , xT , yT ) be a sequence of examples and let R be such that ∀t, R ≥ xt − xt 4 + 1. Assume there exists an 2 A∗ 0 and b ∗ ≥ 1 such that t (A∗ , b ∗ ) = 0 ∀t. Then the following bound holds for all T ≥ 1: T t (At , bt ) 2 ≤ R( A∗ 2 F + (b ∗ − b1 )2 ). t=1 Note that since t (A∗ , b ∗ ) = 0 for all t, the total loss is equal to the regret Can generalize this to a regret bound in the case when t (A∗ , b ∗ ) does not always equal 0 Can also run POLA in batch settings Brian Kulis University of California at Berkeley Metric Learning
  • 48. POLA in Context Can we think of POLA in the framework presented earlier? Yes—regularizer is A 2 and constraints are defined by the hinge loss F t Similar to both Schultz and Joachims, and Kwok and Tsang We will see later that POLA can also be kernelized to learn non-linear transformations In practice, POLA does not appear to be competitive with current state-of-the-art Brian Kulis University of California at Berkeley Metric Learning
  • 49. LMNN Similarly to Schultz and Joachims, utilize relative distance constraints A constraint (xi , xj , xk ) ∈ R has the property that xi and xj are neighbors of the same class, and xi and xk are of different classes [Weinberger, Blitzer, and Saul; NIPS 2005] Brian Kulis University of California at Berkeley Metric Learning
  • 50. LMNN Problem Formulation Also define set S of pairs of points (xi , xj ) such that xi and xj are neighbors in the same class Want to minimize sum of distances of pairs of points in S Also want to satisfy the relative distance constraints Mathematically: min (xi ,xj )∈S dA (xi , xj ) A s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 ∀(xi , xj , xk ) ∈ R A 0. Brian Kulis University of California at Berkeley Metric Learning
  • 51. LMNN Problem Formulation Also define set S of pairs of points (xi , xj ) such that xi and xj are neighbors in the same class Want to minimize sum of distances of pairs of points in S Also want to satisfy the relative distance constraints Mathematically: min (xi ,xj )∈S dA (xi , xj ) + γ (xi ,xj ,xk )∈R ξijk A,ξ s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 − ξijk ∀(xi , xj , xk ) ∈ R A 0, ξijl ≥ 0. Introduce slack variables Brian Kulis University of California at Berkeley Metric Learning
  • 52. Comments on LMNN Algorithm Special-purpose solver Relies on subgradient computations Ignores inactive constraints Example: MNIST—3.2 billion constraints in 4 hours Software available Performance One of the best-performing methods Works in a variety of settings Brian Kulis University of California at Berkeley Metric Learning
  • 53. LMNN Extensions Learning with Multiple Local Metrics Learn several local Mahlanobis metrics instead a single global one Cluster the training data into k partitions Denote ci as the corresponding cluster for xi Learn k Mahalanobis distances A1 , ..., Ak Formulation min (xi ,xj )∈S dAcj (xi , xj ) A s.t. dAck (xi , xk ) − dAcj (xi , xj ) ≥ 1 ∀(xi , xj , xk ) ∈ R Ai 0 ∀i. Introduce slack variables as with standard LMNN [Weinberger and Saul; ICML 2008] Brian Kulis University of California at Berkeley Metric Learning
  • 54. LMNN Results Results show improvements using multiple metrics Weinberger and Saul also extend LMNN to use ball trees for fast search No time to go into details, see paper Brian Kulis University of California at Berkeley Metric Learning
  • 55. ITML and the LogDet Divergence We take the regularizer to be the Log-Determinant Divergence: D d (A, A0 ) = trace(AA−1 ) − log det(AA−1 ) − d 0 0 Problem formulation: minA D d (A, A0 ) s.t. (xi − xj )T A(xi − xj ) ≤ u if (i, j) ∈ S [similarity constraints] (xi − xj )T A(xi − xj ) ≥ if (i, j) ∈ D [dissimilarity constraints] [Davis, Kulis, Jain, Sra, and Dhillon; ICML 2007] Brian Kulis University of California at Berkeley Metric Learning
  • 56. LogDet Divergence: Properties D d (A, A0 ) = trace(AA−1 ) − log det(AA−1 ) − d, 0 0 Properties: Scale-invariance D d (A, A0 ) = D d (αA, αA0 ), α>0 In fact, for any invertible M D d (A, A0 ) = D d (M T AM, M T A0 M) Expansion in terms of eigenvalues and eigenvectors (A = V ΛV T , A0 = UΘU T ): λi λi D d (A, A0 ) = (vT uj )2 i − log −d θj θj i,j Brian Kulis University of California at Berkeley Metric Learning
  • 57. Existing Uses of LogDet Information Theory Differential relative entropy between two same-mean multivariate Gaussians equal to LogDet divergence between covariance matrices Statistics LogDet divergence is known as Stein’s loss in the statistics community Optimization BFGS update can be written as: min D d (B, Bt ) B subject to B st = yt (“Secant Equation”) st = xt+1 − xt , yt = ft+1 − ft Brian Kulis University of California at Berkeley Metric Learning
  • 58. Key Advantages Simple algorithm, easy to implement in Matlab Method can be kernelized Scales to millions of data points Scales to high-dimensional data (text, images, etc.) Can incorporate locality-sensitive hashing for sub-linear time similarity searches Brian Kulis University of California at Berkeley Metric Learning
  • 59. The Metric Learning Problem D d (A, A0 ) = trace(AA−1 ) − log det(AA−1 ) − d 0 0 ITML Goal: minA D d (A, A0 ) s.t. (xi − xj )T A(xi − xj ) ≤ u if (i, j) ∈ S [similarity constraints] (xi − xj )T A(xi − xj ) ≥ if (i, j) ∈ D [dissimilarity constraints] Brian Kulis University of California at Berkeley Metric Learning
  • 60. Algorithm: Successive Projections Algorithm: project successively onto each linear constraint — converges to globally optimal solution Use projections to update the Mahalanobis matrix: min D d (A, At ) A s.t. (xi − xj )T A(xi − xj ) ≤ u Can be solved by O(d 2 ) rank-one update: At+1 = At + βt At (xi − xj )(xi − xj )T At Advantages: Automatic enforcement of positive semidefiniteness Simple, closed-form projections No eigenvector calculation Easy to incorporate slack for each constraint Brian Kulis University of California at Berkeley Metric Learning
  • 61. Recent work in Mahalanobis methods Recent work has looked at other regularizers, such as tr(A), which learns low-rank matrices Improvements in online metric learning (tighter bounds) Kernelization for non-linear metric learning, the topic of the next section Brian Kulis University of California at Berkeley Metric Learning
  • 62. LEGO Online bounds proven for a variant of POLA based on LogDet regularization Combines the best of both worlds Minimize the following function at each timestep ft (A) = D d (A, At ) + ηt t (A, xt , yt ) At is the current Mahalanobis matrix ηt is the learning rate t (A, xt , yt ) is a loss function, e.g. 1 t (A, xt , yt ) = (dA (xt , yt ) − p)2 2 √ For appropriate choice of step size, can guarantee O( T ) regret Empirically outperforms POLA significantly in practice [Jain, Kulis, Dhillon, and Grauman; NIPS 2009] Brian Kulis University of California at Berkeley Metric Learning
  • 63. Non-Mahalanobis methods: Local distance functions General approach Learn a distance function for every training data point ij Given m features per point, denote dm as the distance between the m-th feature in points xi and xj j Denote wm as a weight for feature m of point xj Then the distance between an arbitary (e.g., test) image xi and a training image xj is M j ij d(xi , xj ) = w m dm m=1 At test time Given test image xi , compute d(xi , xj ) between xi and every training point xj Sort distances to find nearest neighbors [Frome, Singer, Sha, and Malik; ICCV 2007] Brian Kulis University of California at Berkeley Metric Learning
  • 64. Non-Mahalanobis methods: Local distance functions Optimization framework j Denote wj as the vector of weights wm As before, construct triples (i, j, k) of points such that the distance between xi and xj should be smaller than the distance between xi and xk Formulate the following problem: min wj 2 j 2 W s.t. d(xi , xk ) − d(xi , xj ) ≥ 1 ∀(xi , xj , xk ) ∈ R wj ≥ 0 ∀j. Brian Kulis University of California at Berkeley Metric Learning
  • 65. Non-Mahalanobis methods: Local distance functions Optimization framework j Denote wj as the vector of weights wm As before, construct triples (i, j, k) of points such that the distance between xi and xj should be smaller than the distance between xi and xk Formulate the following problem: min wj 2 +γ j 2 (i,j,k) ξijk W s.t. d(xi , xk ) − d(xi , xj ) ≥ 1 − ξijk ∀(xi , xj , xk ) ∈ R wj ≥ 0 ∀j. Introduce slack variables as before Very similar to LMNN and other relative distance methods! Brian Kulis University of California at Berkeley Metric Learning
  • 66. Non-Mahalanobis methods: Local distance functions Schultz and Joachims min A 2 F A s.t. dA (xi , xk ) − dA (xi , xj ) ≥ 1 ∀(i, j, k) ∈ R A 0. Frome et al. min wj 2 j 2 W s.t. d(xi , xk ) − d(xi , xj ) ≥ 1 ∀(xi , xj , xk ) ∈ R wj ≥ 0 ∀j. Brian Kulis University of California at Berkeley Metric Learning
  • 67. Linear Separability No linear transformation for this grouping Brian Kulis University of California at Berkeley Metric Learning
  • 68. Kernel Methods Map input data to higher-dimensional “feature” space: x → ϕ(x) Idea: Run machine learning algorithm in feature space Use the following mapping: 2   x1 √ x1 x= →  2x1 x2  x2 2 x2 Brian Kulis University of California at Berkeley Metric Learning
  • 69. Mapping to Feature Space Brian Kulis University of California at Berkeley Metric Learning
  • 70. Kernel Methods Map input data to higher-dimensional “feature” space: x → ϕ(x) Idea: Run machine learning algorithm in feature space Use the following mapping: 2   x1 √ x1 x= →  2x1 x2  x2 2 x2 Kernel function: κ(x, y) = ϕ(x), ϕ(y) “Kernel trick” — no need to explicitly form high-dimensional features In this example: ϕ(x), ϕ(y) = (xT y)2 Brian Kulis University of California at Berkeley Metric Learning
  • 71. Kernel Methods: Short Intro Main idea Take an existing learning algorithm Write it using inner products Replace inner products xT y with kernel functions ϕ(x)T ϕ(y) If ϕ(x) is a non-linear function, then algorithm has been implicitly non-linearly mapped Examples of kernel functions κ(x, y) = (xT y)p Polynomial Kernel x−y 2 2 κ(x, y) = exp − Gaussian Kernel 2σ 2 κ(x, y) = tanh(c(xT y) + θ) Sigmoid Kernel Kernel functions also defined over objects such as images, trees, graphs, etc. Brian Kulis University of California at Berkeley Metric Learning
  • 72. Example: Pyramid Match Kernel Compute local image features Perform an approximate matching between features of two images Use multi-resolution histograms View as a dot product between high-dimensional vectors [Grauman and Darrell, ICCV 2005] Brian Kulis University of California at Berkeley Metric Learning
  • 73. Example: k-means Recall the k-means clustering algorithm Repeat until convergence: Compute the means of every cluster πc 1 µc = xi |πc | x ∈π i c Reassign points to their closest mean by computing 2 x − µc 2 for every data point x and every cluster πc Kernelization of k-means Expand x − µc 2 as 2 T T 2 xi ∈πc xT xi xi ,xj ∈πc xi xj x x− + |πc | |πc |2 No need to explicitly compute the mean; just compute this for every point to every cluster Brian Kulis University of California at Berkeley Metric Learning
  • 74. Example: k-means Recall the k-means clustering algorithm Repeat until convergence: Compute the means of every cluster πc 1 µc = xi |πc | x ∈π i c Reassign points to their closest mean by computing 2 x − µc 2 for every data point x and every cluster πc Kernelization of k-means Expand x − µc 2 as 2 2 κ(x, xi ) xi ,xj ∈πc κ(xi , xj ) xi ∈πc κ(x, x) − + |πc | |πc |2 Replace inner products with kernels, and this is kernel k-means While k-means finds linear separators for the cluster boundaries, kernel k-means finds non-linear separators Brian Kulis University of California at Berkeley Metric Learning
  • 75. Distances vs. Kernel Functions Mahalanobis distances: dA (x, y) = (x − y)T A(x − y) Inner products / kernels: κA (x, y) = xT Ay Algorithms for constructing A learn both measures Brian Kulis University of California at Berkeley Metric Learning
  • 76. From Linear to Nonlinear Learning Consider the following kernelized problem You are given a kernel function κ(x, y) = ϕ(x)T ϕ(y) You want to run a metric learning algorithm in kernel space Optimization algorithm cannot use the explicit feature vectors ϕ(x) Must be able to compute the distance/kernel over arbitrary points (not just training points) Mahalanobis distance is of the form: dA (x, y) = (ϕ(x) − ϕ(y))T A(ϕ(x) − ϕ(y)) Kernel is of the form: κA (x, y) = ϕ(x)T Aϕ(y) Can be thought of as a kind of kernel learning problem Brian Kulis University of California at Berkeley Metric Learning
  • 77. Kernelization of ITML First example: ITML Recall the update for ITML At+1 = At + βt At (xi − xj )(xi − xj )T At Distance constraint over pair (xi , xj ) βt computed in closed form How can we make this update independent of the dimensionality? Brian Kulis University of California at Berkeley Metric Learning
  • 78. Kernelization of ITML Rewrite the algorithm in terms of inner products (kernel functions) At+1 = At + βt At (xi − xj )(xi − xj )T At Inner products in this case: xT At xj i Brian Kulis University of California at Berkeley Metric Learning
  • 79. Kernelization of ITML Rewrite the algorithm in terms of inner products (kernel functions) X T At+1 X = X T At X + βt X T At X (ei − ej )(ei − ej )T X T At X Entry (i, j) of X T At X is exactly xT Axj = κA (xi , xj ) i Denote X T At X as Kt , the kernel matrix at step t Kt+1 = Kt + βt Kt (ei − ej )(ei − ej )T Kt Brian Kulis University of California at Berkeley Metric Learning
  • 80. Kernel Learning Squared Euclidean distance in kernel space: 2 xi − xj 2 = xT xi + xT xj − 2xT xj i j i Replace with kernel functions / kernel matrix: κ(xi , xi ) + κ(xj , xj ) − 2κ(xi , xj ) = Kii + Kjj − 2Kij Related to ITML, define the following optimization problem minK D d (K , K0 ) s.t. Kii + Kjj − 2Kij ≤ u if (i, j) ∈ S [similarity constraints] Kii + Kjj − 2Kij ≥ if (i, j) ∈ D [dissimilarity constraints] K0 = X T X is the input kernel matrix To solve this, only the original kernel function κ(xi , xj ) is required Brian Kulis University of California at Berkeley Metric Learning
  • 81. Kernel Learning Bregman projections for the kernel learning problem: Kt+1 = Kt + βt Kt (ei − ej )(ei − ej )T Kt Suggests a strong connection between the 2 problems Theorem: Let A∗ be the optimal solution to ITML, and A0 = I . Let K ∗ be the optimal solution to the kernel learning problem. Then K ∗ = X T A∗ X . Solving the kernel learning problem is “equivalent” to solving ITML So we can run entirely in kernel space But, given two new points, how to compute distance? [Davis, Kulis, Jain, Sra, and Dhillon; ICML 2007] Brian Kulis University of California at Berkeley Metric Learning
  • 82. Induction with LogDet Theorem: Let A∗ be the optimal solution to ITML, and let A0 = I . Let K ∗ be the optimal solution to the kernel learning problem, and let K0 = X T X be the input kernel matrix. Then A∗ = I + XSX T −1 −1 S = K0 (K ∗ − K0 )K0 Gives us a way to implicitly compute A∗ once we solve for K ∗ Algorithm Solve for K ∗ Construct S using K0 and K ∗ Given two points x and y, the kernel κA (x, y) = xT Ay is computed as n κA (xi , xj ) = κ(xi , xj ) + Sij κ(x, xi )κ(xj , y) i,j=1 [Davis, Kulis, Jain, Sra, and Dhillon; ICML 2007] Brian Kulis University of California at Berkeley Metric Learning
  • 83. Kernelization of POLA Recall updates for POLA ˆ At = At − yt αt vt vTt At+1 ˆ = At − λd ud uT d vt is the difference of 2 data points ˆ ud is the smallest eigenvector of At 1st update projects onto set Ct where hinge loss is zero (applied only when loss is non-zero) ˆ 2nd update projects onto PSD cone Ca (applied only when At has negative eigenvalue) Claim: Analogous to ITML, A∗ = XSX T , where X is the matrix of data points Prove this inductively Brian Kulis University of California at Berkeley Metric Learning
  • 84. Kernelization of POLA Projection onto Ct At = XSt X T Say the 2 data points are indexed by i and j Then vt = X (ei − ej ) ˆ Rewrite At − yt αvt vT to get update from St to St : t ˆ At = XSt X T − yt αt X (ei − ej )(ei − ej )T X T = X (St − yt αt (ei − ej )(ei − ej )T )X T Projection onto Ca ˆ ud is an eigenvector of At , i.e., ˆ At ud ˆ = X St X T u = λd ud 1 ˆ T ud = X St X ud = X q λd Construction for q non-trivial; involves kernelized Gram-Schmidt Expensive (cubic in dimensionality) Brian Kulis University of California at Berkeley Metric Learning
  • 85. General Kernelization Results Recent work by Chatpatanasiri et al. has shown additional kernelization results for LMNN Neighbourhood Component Analysis Discriminant Neighborhood Embedding Other recent results show additional, general kernelization results Xing et al. Other regularizers (trace-norm) At this point, most/all existing Mahalanobis metric learning methods can be kernelized Brian Kulis University of California at Berkeley Metric Learning
  • 86. Kernel PCA Setup for principal components analysis (PCA) Let X = [x1 , ..., xn ] be a set of data points Typically assume data is centered, not critical here Denote SVD of X as X = U T ΣV Left singular vectors in U corresponding to non-zero singular values are an orthonormal basis for the span of the xi vectors Covariance matrix is C = XX T = U T ΣT ΣU, kernel matrix is K = X T X = V T ΣT ΣV Standard PCA recipe Compute SVD of X Project data onto leading singular vectors U, e.g., ˜ = Ux x Brian Kulis University of California at Berkeley Metric Learning
  • 87. Kernel PCA Key result from the late 1990s: kernelization of PCA Can also form projections using the kernel matrix Allows one to avoid computing SVD If X = U T ΣV , then U = Σ−1 VX T Ux = Σ−1 VX T x Computation involves inner products X T x, eigenvectors V of the kernel matrix, and eigenvalues of the kernel matrix Relation to Mahalanobis distance methods Kernel PCA allows one to implicitly compute an orthogonal basis U of the data points, and to project arbitrary data points onto this basis For a data set of n points, dimension of basis is at most n Projecting onto U results in an n-dimensional vector Brian Kulis University of California at Berkeley Metric Learning
  • 88. Using kernel PCA for metric learning Given a set of points in kernel space X = [ϕ(x1 ), ..., ϕ(xn )] Form a basis U and project data onto that basis to form ˜ X = [˜1 , ..., xn ] = [Uϕ(x1 ), ...., Uϕ(xn )] using kernel PCA x ˜ Consider a general unconstrained optimization problem f that is a function of kernel function values, i.e. f ({ϕ(xi )T Aϕ(xj )}n ) i,j=1 Associated minimization min f ({ϕ(xi )T Aϕ(xj )}n ) i,j=1 A 0 Theorem: The optimal value of the above optimization is the same as that of min f ({˜iT A xj }n ) x ˜ i,j=1 A 0 where A is n × n. [Chatpatanasiri, Korsrilabutr, Tangchanachaianan, and Kijsirikul; ArXiV 2008] Brian Kulis University of California at Berkeley Metric Learning
  • 89. Consequences Any Mahalanobis distance learning method that is unconstrained and can be expressed as a function of learned inner products can be kernelized Examples Neighbourhood Components Analysis LMNN (write as unconstrained via the hinge loss) Discriminant neighborhood embedding Generalizing to new points For a new point ϕ(x), construct ˜ and use Mahalanobis distance with x learned matrix A Algorithms Exactly the same algorithms employed as in linear case Brian Kulis University of California at Berkeley Metric Learning
  • 90. Extensions Chatpatanasiri et al. considered extensions for low-rank transformations Also showed benefits of kernelization in several scenarios Recent results (Jain et al.) have shown complementary results for constrained optimization problems ITML is a special case of this analysis Other methods follow easily, e.g., methods based on trace-norm regularization Now most Mahalanobis metric learning methods have been shown to be kernelizable Brian Kulis University of California at Berkeley Metric Learning
  • 91. Scalability in Kernel Space In many situations, dimensionality d and the number of data points n is high Typically, linear Mahalanobis metric learning methods scale as O(d 2 ) or O(d 3 ) Kernelized Mahalanobis methods scale as O(n2 ) or O(n3 ) What to do when both are large? Main idea: restrict the basis used for learning the metric Can be applied to most methods Brian Kulis University of California at Berkeley Metric Learning
  • 92. Scalability with the kernel PCA approach Recall the kernel PCA approach Project onto U, the top n left singular vectors Instead, project onto the top r left singular vectors Proceed as before Similar approach can be used for ITML The learned kernel is of the form n κA (xi , xj ) = κ(xi , xj ) + Sij κ(x, xi )κ(xj , y) i,j=1 Restrict S to be r × r instead of n × n, where r < n data points are chosen Rewrite optimization problem using this form of the kernel Constraints on learned distances are still linear, so method can be generalized Both approaches can be applied to very large data sets Example: ITML has been applied to data sets of nearly 1 million points (of dimensionality 24,000) Brian Kulis University of California at Berkeley Metric Learning
  • 93. Nearest neighbors with Mahalanobis metrics Once metrics are learned, k-nn is typically used k-nn is expensive to compute Must compute distances to all n training points Recent methods attempt to speed up NN computation Locality-sensitive hashing Ball trees One challenge: can such methods be employed even when algorithms are used in kernel space? Recent work applied in computer vision community has addressed this problem for fast image search Brian Kulis University of California at Berkeley Metric Learning
  • 94. Other non-linear methods Recall that kernelized Mahalanobis methods try to learn the distance function G ϕ(x) − G ϕ(y) 2 2 Chopra et al. learn the non-linear distance 2 GW (x) − GW (y) 2 GW is a non-linear function Application was face verification Algorithmic technique: convolutional networks [Chopra, Hadsell, and LeCun; CVPR 2005] Brian Kulis University of California at Berkeley Metric Learning
  • 95. Other non-linear methods Setup uses relative distance constraints Denote Dij as the mapped distance between points i and j Let (xi , xj , xk ) be a tuple such that Dij < Dik desired The authors define a loss function for each triple of the form Loss = α1 Dij + α2 exp(−α3 Dik ) Minimize the sum of the losses over all triples Metric is trained using a convolutional network with a Siamese architecture from the pixel level Brian Kulis University of California at Berkeley Metric Learning
  • 96. Other non-linear methods Brian Kulis University of California at Berkeley Metric Learning
  • 97. Application: Learning Music Similarity Comparison of metric learning methods for learning music similarity MP3s downloaded from a set of music blogs After pruning: 319 blogs, 164 artists, 74 distinct albums Thousands of songs The Echo Nest used to extract features for each song Songs broken up into segments (80ms to a few seconds) Mean segment duration Track tempo estimate Regularity of the beat Estimation of the time signature Overall loudness estimate of the track Estimated overall tatum duration In total, 18 features extracted for each song Training done via labels based on blog, artist, and album (separately) [Slaney, Weinberger, and White; ISMIR 2008] Brian Kulis University of California at Berkeley Metric Learning
  • 98. Application: Learning Music Similarity Brian Kulis University of California at Berkeley Metric Learning
  • 99. Application: Object Recognition Several metric learning methods have been evaluated on the Caltech 101 dataset, a benchmark for object recognition set size Brian Kulis University of California at Berkeley Metric Learning
  • 100. Application: Object Recognition Used the Caltech-101 data set Standard benchmark for object recognition Many many results for this data set 101 classes, approximately 4000 total images Learned metrics over 2 different image embeddings for ITML: pyramid match kernel (PMK) embedding and the embedding from Zhang et al, 2006 Also learned metrics via Frome et al’s local distance function approach Computed k-nearest neighbor accuracy over varying training set size and compared to existing results Brian Kulis University of California at Berkeley Metric Learning
  • 101. Application: Object Recognition Brian Kulis University of California at Berkeley Metric Learning
  • 102. Results: Clarify Representation: System collects program features during run-time Function counts Call-site counts Counts of program paths Program execution represented as a vector of counts Class labels: Program execution errors Nearest neighbor software support Match program executions Underlying distance measure should reflect this similarity Results LaTeX Benchmark: Error drops from 30% to 15% LogDet is the best performing algorithm across all benchmarks [Davis, Kulis, Jain, Sra, and Dhillon; ICML 2007] Brian Kulis University of California at Berkeley Metric Learning
  • 103. Application: Human Body Pose Estimation Brian Kulis University of California at Berkeley Metric Learning
  • 104. Pose Estimation 500,000 synthetically generated images Mean error is 34.5 cm per joint between two random images Brian Kulis University of California at Berkeley Metric Learning
  • 105. Pose Estimation Results Method m k=1 L2 linear scan 24K 8.9 L2 hashing 24K 9.4 PSH, linear scan 1.5K 9.4 PCA, linear scan 60 13.5 PCA+LogDet, lin. scan 60 13.1 LogDet linear scan 24K 8.4 LogDet hashing 24K 8.8 Error above given is mean error in cm per joint Linear scan requires 433.25 seconds per query; hashing requires 1.39 seconds per query (hashing searches 0.5% of database) [Jain, Kulis, and Grauman; CVPR 2008] Brian Kulis University of California at Berkeley Metric Learning
  • 106. Pose Estimation Results Brian Kulis University of California at Berkeley Metric Learning
  • 107. Application: Text Retrieval [Davis and Dhillon; SIGKDD 2008] Brian Kulis University of California at Berkeley Metric Learning
  • 108. Summary and Conclusions Metric learning is a mature technology Complaints about scalability in terms of dimensionality or number of data points no longer valid Many different formulations have been studied, especially for Mahalanobis metric learning Online vs offline settings possible Metric learning has been applied to many interesting problems Language problems Music similarity Pose estimation Image similarity and search Face verification Brian Kulis University of California at Berkeley Metric Learning
  • 109. Summary and Conclusions Metric learning has interesting theoretical components Analysis of online settings Analysis of high-dimensional (kernelized) settings Metric learning is still an interesting area of study Learning multiple metrics over data sets New applications Formulations that integrate better with problems other than k-nn Improved algorithms for better scalability ... Brian Kulis University of California at Berkeley Metric Learning