Deep distance metric learning (DML) aims at training a deep learning model that transforms training samples into feature embeddings that are close together for samples that belong to the same class and far apart for samples from different classes[4, 8, 9, 14, 20, 28, 29, 30, 35, 40, 46, 49]
. The use of DML is advantageous compared to more traditional classification models because DML does not rely on a classification layer that imposes strong constraints on the type of problems that the trained model can handle. For instance, if a model is trained to classify 1000 classes, then the addition of the 1001class will force the design of a new model structure that incorporates that extra classification node. In addition, DML requires no model structure update, which means that the learned DML model can simply be fine-tuned with the training samples for the new class. Therefore, DML is an interesting approach to be used in learning problems that can be continuously updated, such as open-world  and life-long learning problems .
One of the most common optimization functions explored in DML is the triplet loss, which comprises two terms: 1) a term that minimizes the distance between pairs of feature embeddings belonging to the same class, and 2) another term that maximizes the distance between pairs of feature embeddings from different classes. The training process based on this triplet loss has run-time complexity per epoch, with representing the number of samples and , the number of classes. Given that training sets are becoming increasingly larger, DML training based on such triplet loss is computationally challenging, and a great deal of work has been focused on the reduction of this complexity without affecting much the effectiveness of DML training. One of the main ideas explored is the design of mechanisms that select representative subsets of the triplet samples — some examples of this line of research are: hard or semi-hard triplet mining [27, 29, 43] or smart triplet mining . Unfortunately, these methods still present high computational complexity, with a worst case training complexity of . Moreover, these approaches also present the issue that the subset of selected triplets may not be representative enough, increasing the risk of overfitting such subsets. The mitigation of this problem is generally achieved with the incorporation of an additional loss term that optimizes a global classification to the whole triplet subset [9, 14, 40] in order to regularize the training process.
Another idea explored in the field is the ad-hoc linearization of the triplet loss [7, 32, 42, 45], consisting of the use of auxiliary class centroids. The training process consists of two alternating steps: 1) an optimization function that generally pulls embeddings towards their class centroid and pushes embeddings away from all other class centroids (hence, ); and 2) an optimization of the class centroids using the whole training set after the processing of each mini-batch (hence, , where represents the number of samples in each mini-batch). Therefore, a naïve implementation of this method has run-time complexity proportional to .
In this paper, we provide a solid theoretical background that fully justifies the linearization of the triplet loss, providing a tight upper bound to be used in the DML training process, which relies on the use of class centroids. In particular, our theory shows that the proposed upper-bound differs from the triplet loss by a value that tends to zero if the distances between centroids are large and these distances are similar to each other, and as the training process progresses. Therefore, our theory guarantees that a minimization of the upper bound is also a minimization of the triplet loss. Furthermore, we derive a training algorithm that no longer requires an optimization of the class centroids, which means that our method is the first approach in the field that guarantees a linear run-time complexity for the triplet loss approximation. Figure 1 motivates our work. We show empirically that the DML training using our proposed loss function is one order of magnitude faster than the training of recently proposed triplet loss based methods. In addition, we show that the models trained with our proposed loss produces competitive retrieval accuracy results on benchmark datasets (CUB-200-2011 and CAR196).
2 Related Work
It has been shown that deep networks that are trained for the classification task with a softmax loss function can be used to produce useful deep feature embeddings. In particular, in[1, 26]
the authors showed that the features extracted from one of the last layers of the deep classification models[13, 31] can be used for new classification tasks, involving classes not used for training. In addition, the run-time training complexity is quite efficient: , where and represent the number of training samples and number of classes, respectively. However, these approaches rely on cross-entropy loss that tries to pull samples over the classification boundary for the class of that sample, disregarding two important points in DML: 1) how close the point is to the class centroid; and 2) how far the sample is from other class centroids (assuming that a class centroid can be defined to be at the centre of the classification volume for each class in the embedding space). Current evidence in the field shows that not explicitly addressing these two issues made these approaches not attractive for DML, particularly in regards to the classification accuracy for classes not used for training.
One approach, explored in [25, 29] employs a siamese model trained with a pairwise loss. One of the most studied pairwise losses is the contrastive loss , which minimizes the distance between pairs of training samples belonging to same class (i.e., positive pairs) and maximizes the distance between pairs of training samples from different classes (i.e., negative pairs) as long as this “negative distance” is smaller than a margin. There are few issues associated with this approach. Firstly, the run-time training complexity is , which makes this approach computationally challenging for most modern datasets. To mitigate this challenge, mining strategies have been proposed to select a subset of the original pairwise samples. Such mining strategies focus on selecting pairs of samples that are considered to be hard to classify by the current model. For instance, Simo-Serra et al.  proposed a method that samples positive pairs and sorts them in descending order with respect to the distance between the two samples in the embedding space. A similar approach is applied for negative pairs, but the sorting is in ascending order. Then, the top pairs in both lists are used as the training pairs. The second issue is that the margin parameter is not easy to tune because the distances between samples can change significantly during the training process. Another issue is the fact that the arbitrary way of sampling pairs of samples described above cannot guarantee that the selected pairs are the most informative to train the model. The final issue is that the optimization of the positive pairs is independent from the negative pairs, but the optimization should force the distance between positive pairs to be smaller than negative pairs.
The triplet loss addresses the last issue mentioned above [27, 9, 24], and it is defined based on three data points: an anchor point, a positive point (i.e., a point belonging to the same class as the anchor), and a negative point (i.e., a point from a different class of the anchor). The loss will force the positive pair distance plus a margin to be smaller than the negative pair distance. However, similarly to pairwise loss, setting the margin in the triplet loss requires careful tuning. Furthermore, and also similarly to the pairwise loss, the training complexity is quite high with , hence several triplet mining strategies have been proposed. For instance, in , the authors proposed a “semi-hard” criterion, where a triplet is selected if the negative distance is small (i.e., within the margin) but larger than the positive distance — this approach reduces the training complexity to , where represents the number of mini-batches used for training. In , the authors proposed to use fast approximate nearest neighbor search for quickly identifying informative (hard) triplets for training, reducing the training complexity to . In , the mining is replaced by the use of proxies, where a triplet is re-defined to be an anchor point, a similar and a dissimilar proxy – this reduces the training complexity to . Movshovitz et al.  show that this loss computed with proxies represents an upper bound to the original triplet loss, where this bound gets closer to the original triplet loss as , which increases the complexity back to . It is worth noting that the idea of using proxies and learning the embedding such as minimizing the distances between samples to their proxies has been investigated in . However, different from  which is a DML approach and is expected to capture the nonlinearity between samples, thanks to the power of the deep model, in  the authors used precomputed features, and to capture the nonlinearity, they relied on kernelization. We note that the approach  has a non-linear term that makes it more complex than the complexity of our approach, for , which is usually the case. Moreover, the approach  also requires the optimization of the number and locations of proxies  during training, while our approach relies on a set of predefined and fixed centroids.
In  the authors proposed a global loss function that uses the first and second order statistics of sample distance distribution in the embedding space to allow for robust training of triplet network, but the complexity is still . Ustinova and Lempitsky 
proposed a histogram loss function that is computed by estimating two distributions of similarities for positive and negative pairs. Based on the estimated distributions, the loss will compute the probability of a positive pair to have a lower similarity score than a negative pair, where the training complexity is. In  the authors proposed a loss which optimizes a global clustering metric (i.e., normalized mutual information). This loss ensures that the score of the ground truth clustering assignment is higher than the score of any other clustering assignment – this method has complexity , where represents the number of clusters. Similarly to , this approach has a non-linear term w.r.t. number of clusters, that makes it more complex than the complexity of our approach. In addition, this method also requires to optimize the locations of clusters during training, while our approach relies on a set of predefined and fixed centroids. In , the authors proposed the N-pair loss which generalizes the triplet loss by allowing joint comparison among more than one negative example – the complexity of this method is again . More recent works [22, 44] proposed the use of ensemble classifiers  and new similarity metrics  which can in principle explore the training loss that we propose. A relevant alternative method recently proposed in the field is related to an ad-hoc linearization of the triple loss that, differently from our approach, has not been theoretically justified [7, 32, 42, 45]. In addition, even though these approaches rely on a loss function that has run-time complexity , they also need to run an expensive centroid optimization step after processing each mini-batch, which has complexity . Assuming that a mini-batch has samples, then the run-time complexity of this approach is . Most of the research developed for these methods are centered on the mitigation of this complexity involved in the class centroid optimization. Interestingly, this step is absent from our proposed approach, which means that our method is the only approach in the field that is guaranteed to have linear run-time complexity.
3 Discriminative Loss
Assume that the training set is represented by in which and denote the training image and its class label, respectively. Let be the feature embedding of , obtained from the deep learning model . To control the magnitude of distance between feature embeddings, we assume that (i.e., all points lie on a unit hypersphere111We use distance in this work.). From an implementation point of view, this assumption can be guaranteed with the use of a normalization layer. Furthermore, without loss of generalization, let us assume that the dimension of the embedding space equals the number of classes, i.e., . Note that if we can enforce this assumption by adding a fully connected layer to project features from dimensions to dimensions.
3.1 Discriminative Loss: Upper Bound on the Triplet Loss
In order to avoid the cubic complexity (in the number of training points) of the triplet loss and to avoid the complicated hard-negative mining strategies, we propose a new loss function that has linear complexity on , but inherits the property of triplet loss: feature embeddings from the same classes are pulled together, while feature embeddings from different classes are pushed apart.
Assume that we have a set representing pairs of images and belonging to the same class. Let us start with a simplified form of the triplet loss:
where is defined as
Let , where each
is an auxiliary vector in the embedding space that can be seen as the “centroid” for theclass (note that as the centroids represent classes in the embedding space, they should be defined in the same domain with the embedding features, i.e., on the surface of the unit hypersphere). According to the triangle inequality, we have
The central idea in the paper is to minimize the upper bound defined in (7). Assume that we have a balanced training problem, where the number of samples in each class is equal (for the imbalanced training, this assumption can be enforced by data augmentation), after some algebraic manipulations, the RHS of (7) is equal to which is our proposed discriminative loss
where the constant .
Our goal is to minimize which is a discriminative loss that simultaneously pulls samples from the same class close to their centroid and pushes samples far from centroids of different classes. A nice property of is that it is not arbitrary far from . The difference between these two losses is well bounded by Lemma 3.1.
Assuming that (with ), . Let and ,
, where the constant is the number of all possible triplets.
The proof is provided in the Appendix. ∎
From Lemma 3.1, will approach when and . (i) Note from (8) that will decrease because the discriminative loss pulls samples from the same class close to their corresponding centroid. (ii) In addition, we can enforce that by fixing the centroids before the training starts, such that they are as far as possible from each other and the distances between them are similar. Therefore, with the observations (i) and (ii), we can expect that and , which implies a tight bound from Lemma 3.1. We discuss methods to generate centroid locations below.
3.2 Centroid Generation
From the observations above, we should have centroids on the surface of the unit hypersphere such that they are as far as possible from each other and the distances between them are as similar as possible. Mathematically, we want to maximize the minimum distance between centroids – this problem is known as the Tammes problem . Let be the surface of the hypersphere, we want to solve the following optimization:
Unfortunately, it is not possible to solve (3.2) analytically in general . We may solve it as an optimization problem. However, this optimization will involve constraints, hence the problem is still computationally hard to solve for large 
. To overcome this challenge, we propose two heuristics to generate the centroids.
Inspired by the softmax loss, we define the centroids as vertices of a convex polyhedron in which each vertex is a one-hot vector, i.e., the centroid of the class is the standard basis vector in direction of the Cartesian coordinate system. With this configuration, each centroid is orthogonal to each other and the distance between each pair of centroids is .
We first uniformly generate a large set of points on the surface of the unit hypersphere. We then run K-means clustering to group points intoclusters. The unit normalized cluster centroids will be used as centroids . Note that the process of uniformly generating points on the surface of the unit hypersphere is not difficult. According to 
, for each point, we generate each of its dimension independently with the standard normal distribution. Then we unit normalize the point to project it to the surface of the hypersphere.
3.3 Discussion on the Discriminative Loss
Table 1 compares the asymptotic training complexity of several DML methods, including our proposed discriminative loss (Discriminative) in terms of the number of training samples , number of mini-batches , size of mini-batch , number of classes , number of proxies  and number of clusters . It is clear from (8) that our proposed discriminative loss has linear run-time complexity (in terms of both and ), analogous to the softmax loss . The methods that optimize an approximate triplet loss, which have linear complexity in are represented by “centroids” [7, 32, 42, 45] in Table 1, but note in the table that the optimization of the centroids must be performed after processing each mini-batch, which increases the complexity of the approach to be square in . Most of the research in the “centroids” approach goes into the reduction of the complexity in the optimization of class centroids with the design of poor, but computationally cheap, approximate methods. For example, in , instead of updating the centroids with respect to the entire training set, the authors perform the update based on mini-batch. This leads to a linear complexity in . However by updating centroids based on mini-batch, a small batch size (e.g. due to a large network structure, which is likely) may cause a poor approximation of the real centroids. In the worst case, when not all classes are present in a batch, some centroids are even not be updated. Interestingly, the centroid update step is absent from our proposed approach.
There are other DML methods that are linear in : clustering  with and triplet+proxy  with . There are two advantages of our approach compared to these two methods in terms of training complexity: 1) our discriminative loss is linear not only in terms of the dominant variable , but also with respect to the auxiliary variable (where in general ); and 2) in our work, the number of centroids and their positions are fixed before the training process starts (as explained in Sec. 3.2), hence there is no need to optimize the number and positions of centroids during training — this contrasts with the fact that the number and positions of clusters and proxies need to be optimized in  and .
|Softmax ||Pair-naïve||Trip.-naïve||Trip.-hard |
|Trip.-smart ||Trip.-cluster ||Trip.-proxy ||Centroids [7, 32, 42, 45]|
The discriminative loss only involves the calculation of Euclidean distance between the embedding features and the centroids. Hence it is straightforward to implement and integrate into any deep learning models to be trained with the standard back-propagation. Furthermore, different from most of the traditional DML losses such as pairwise loss, triplet loss, and their improved versions [27, 33, 14, 21, 9], the discriminative loss does not require setting margins, mining triplets, and optimizing the number and locations of centroids during training. This reduction in the number of hyper-parameters makes the training simpler and improves the performance (compared to standard triplet methods), as showed in the experiments.
4.1 Dataset and Evaluation Metric
We conduct our experiments on two public benchmark datasets that are commonly used to evaluate DML methods, where we follow the standard experimental protocol for both datasets [9, 33, 34, 35]. The CUB-200-2011 dataset  contains 200 species of birds with 11,788 images, where the first 100 species with 5,864 images are used for training and the remaining 100 species with 5,924 images are used for testing. The CAR196 dataset  contains 196 car classes with 16,185 images, where the first 98 classes with 8,054 images are used for training and the remaining 98 classes with 8,131 images are used for testing. We report the K nearest neighbor retrieval accuracy using the Recall@K metric. We also report the clustering quality using the normalized mutual information (NMI) score .
4.2 Network Architecture and Implementation Details
For all experiments in Sections 4.3 and 4.4, we initialize the network with the pre-trained GoogLeNet  – this is also a standard practice in the comparison between DML approaches [9, 33, 34, 35]. We then add two randomly initialized fully connected layers. The first layer has nodes, which is the commonly used embedding dimension in previous works, and the second layer has nodes. We train the network for a maximum of 40 epochs. For the last two layers, we start with an initial learning rate of 0.1 and gradually decrease it by a factor of 2 every 5 epochs. Following , all GoogLeNet layers are fine-tuned with the learning rate that is ten times smaller than the learning rate of the last two layers. The weight decay and the batch size are set to 0.0005 and 128, respectively in all experiments. As normally done in previous works, random cropping and random horizontal flipping are used when training.
|Second to last layer||51.43||64.23||74.31||82.83||68.31||78.21||85.22||91.18|
|R@1||R@2||R@4||R@8||min dist.||max dist.||mean dist.||std dist.|
|Lifted structure ||56.50||43.57||56.55||68.59||79.63|
|Triplet+smart mining ||59.90||49.78||62.34||74.05||83.31|
|Lifted structure ||56.88||52.98||65.70||76.01||84.27|
|Triplet+smart mining ||59.50||64.65||76.20||84.23||90.19|
4.3 Ablation Study
Effect of features from different layers.
In this experiment we evaluate the embedding features from the last two fully connected layers with dimensions and ( for CUB-200-2011 and for CAR196). These results are based on the one-hot centroid generation strategy, but note that the same evidence was produced with the K-means centroid generation. The results in Table 2 show that the features from the second to last layer produce better generalization for unseen classes than those from the last layer. The possible reason is that the features from the last layer may be too specific to the set of training classes. Hence for tasks on unseen classes, the features from the second to last layer produce better performance. The same observation is also found in  (although Razavian et al.  experimented with AlexNet ). Hereafter, we only use the features from the second to last fully connected layer for the remaining experiments. Note that this also allows for a fair comparison between our work and previous approaches in terms of feature extraction complexity because these other approaches also use the feature embeddings extracted from the same layer.
Effect of centroid generation method.
In this section, we evaluate the two proposed centroid generation methods, explained in Sec. 3.2, where the hypersphere for the K-means approach has dimensions. The comparative performances and statistics of distances between centroids are shown in Table 3. The results show that there is not a significant difference in performance between the two centroid generation methods. In the worst case, K-means is 1.5% worse than one-hot on CAR196 dataset while on CUB-200-2011 dataset, these two methods are comparable. Hereafter, we only use one-hot centroid generation strategy for all remaining experiments.
According to Table 3, we note that the difference between the minimum and the maximum distances between centroids is quite small for K-means and for the one-hot centroid generation methods. This is an important fact for the triplet loss bound in the Lemma 3.1, where the smaller this difference, the tighter the bound to the triplet loss.
4.4 Comparison with Other Methods
We compare our method to the baseline DML methods that have reported results on the standard datasets CUB-200-2011 and CAR196: the softmax loss, the triplet loss with semi-hard negative mining , the lifted structured loss , the N-pair  loss, the clustering loss , the triplet combined with global loss , the histogram loss , the triplet with proxies  loss, triplet with smart mining  loss which uses the fast nearest neighbor search for mining triplets.
Tables 4 and 5 show the recall and NMI scores for the baseline methods and our approach (Discriminative). The results on Tables 4 and 5 show that for the NMI metric, most triplet-based methods achieve comparable results, except for Triplet+proxy  which has a 5.2% gain over the second best Discriminative on the CAR196 dataset. Under Recall@K metric, the Discriminative improves over most of methods that are based on triplet, (e.g., Semi-hard ) or generalization of triplet (e.g., N-pair , Triplet+Global ). Compared to the softmax loss, although both discriminative loss and softmax loss have the same complexity, Discriminative improves over Softmax by a large margin for all measures on both datasets. This suggests that the discriminative loss is more suitable for DML than the softmax loss.
Discriminative also compares favorably with the recent triplet+smart mining method , i.e., on the CAR196 dataset, Discriminative has 3.6% improvement in R@1 over the triplet+smart mining. Compared to the recent Triplet+proxy on the CUB-200-2011 dataset, Discriminative shows better results at all ranks of , where larger improvements are observed at larger , i.e., Discriminative has 10.4% (14.4% relative) improvement in R@8 over Triplet+proxy. On the CAR196 dataset, Triplet+proxy outperforms the Discriminative at low values of , i.e., Triplet+proxy has 4.9% (7.2% relative) higher accuracy than Discriminative at R@1. However, for increasing values of , the improvement of Triplet+proxy decreases, and Discriminative achieves a higher accuracy than Triplet+proxy at R@8.
We are aware that there are other triplet-based methods that achieve better performance on CUB and CAR196 datasets [5, 16, 22, 44, 48]. Table 6 presents their results. However, it is important to note that although these methods use the triplet loss, they rely on additional techniques to boost their accuracy. For instance, Yuan et al.  used cascaded embedding to ensemble a set of models; Opitz et al.  relied on boosting to combine different learners; Wang et al.  combined angular loss with N-pair loss  to boost performance; Duan et al.  and Lin et al.  used generative adversarial network (GAN) to generate synthetic training samples. We note that these techniques can in principle replace their triplet loss by our discriminative loss to improve training efficiency. However, this is out of scope of this paper, but we consider this to be future work.
Training time complexity.
To demonstrate the efficiency of the proposed method, we also compare the empirical training time of the proposed discriminative loss to other triplet-based methods, i.e., Semi-hard  and triplet with smart mining . All methods were tested on the same machine and we use the default configurations of  and .
|+smart mining |
The results in Table 7 show that the training time of the proposed methods (Discrim.) is around 13 and 17 times faster than the recent state-of-the-art triplet with smart mining  on CUB and CAR196 datasets, respectively. The results also confirm that our loss scales linearly w.r.t. number of training images and number of classes, i.e., .
4.5 Improving with Different Network Architectures
As presented in Section 3.3, the proposed loss is simple and it is easy to integrate into any deep learning models. To prove the flexibility of the proposed loss, in this section we experiment with the VGG-16 network 
. Specifically, we apply a max-pooling on the last convolutional layer of VGG to produce a 512-D feature representation. After that, similarly to GoogleNet in Section4.2, we add two fully connected layers whose dimensions are and . The outputs of the second to last layer are used as embedding features. Table 8 presents the results when using our discriminative loss with VGG network. From Tables 4, 5 and 8, we can see that using discriminative loss with VGG network significantly boosts the performance on both datasets, e.g., at , it improves over GoogleNet and for CUB-200-2011 and CAR196, respectively.
We note that using other advance network architectures such as Inception , ResNet  rather than GoogleNet , VGG , may give performance boost as showed in recent works [6, 17, 47]. However, that is not the focus of this paper. Our work targets on developing a linear complexity loss that approximates the triplet loss but offers faster training process with a similar accuracy to the triplet loss.
In this paper we propose the first deep distance metric learning method that approximates the triplet loss and is guaranteed to have linear training complexity. Our proposed discriminative loss is based on an upper bound to the triplet loss, and we theoretically show that this bound is tight depending on the distribution of class centroids. We propose two methods to generate class centroids that enforce that their distribution guarantees the tightness of the bound. The experiments on two benchmark datasets show that in terms of retrieval accuracy, the proposed method is competitive while its training time is one order of magnitude faster than triplet-based methods. Consequently, this paper proposes the most efficient DML approach in the field, with competitive DML retrieval performance.
This work was partially supported by the Australian Research Council project (DP180103232).
Appendix: Proof for the Lemma 3.1
The lower bound, i.e., is straightforward by (5). Here we prove the upper bound.
By the assumption, for any and its centroid we have
By using the triangle inequality and (10), for any and the centroids , where , we have
By using the norm property and (10), for any pair of and that are not same class, we have
-  H. Azizpour, A. S. Razavian, J. Sullivan, A. Maki, and S. Carlsson. From generic to specific deep representations for visual recognition. In CVPR Workshops, 2015.
-  A. Bendale and T. Boult. Towards open world recognition. In CVPR, 2015.
-  S. Chopra, R. Hadsell, and Y. LeCun. Learning a similarity metric discriminatively, with application to face verification. In CVPR, 2005.
A. Dosovitskiy, J. T. Springenberg, M. Riedmiller, and T. Brox.
Discriminative unsupervised feature learning with convolutional neural networks.In NIPS, 2014.
-  Y. Duan, W. Zheng, X. Lin, J. Lu, and J. Zhou. Deep adversarial metric learning. In CVPR, 2018.
-  W. Ge. Deep metric learning with hierarchical triplet loss. In ECCV, 2018.
-  S. Guerriero, B. Caputo, and T. Mensink. Deepncm: Deep nearest class mean classifiers. In ICLR Workshop, 2018.
-  X. Han, T. Leung, Y. Jia, R. Sukthankar, and A. C. Berg. Matchnet: Unifying feature and metric learning for patch-based matching. In CVPR, 2015.
-  B. Harwood, B. G. V. Kumar, G. Carneiro, I. D. Reid, and T. Drummond. Smart mining for deep metric learning. In ICCV, 2017.
-  K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for image recognition. In CVPR, 2016.
-  H. Huang, P. M. Pardalos, and Z. Shen. A point balance algorithm for the spherical code problem. Journal of Global Optimization, 19(4):329–344, 2001.
-  J. Krause, M. Stark, J. Deng, and L. Fei-Fei. 3d object representations for fine-grained categorization. In ICCV Workshops, 2013.
-  A. Krizhevsky, I. Sutskever, and G. E. Hinton. Imagenet classification with deep convolutional neural networks. In NIPS, 2012.
-  B. G. V. Kumar, G. Carneiro, and I. Reid. Learning local image descriptors with deep siamese and triplet convolutional networks by minimising global loss functions. In CVPR, 2016.
-  P. Leopardi. Distributing points on the sphere: Partitions, separation, quadrature and energy. PhD thesis, School of Mathematics and Statistics, the University of New South Wales, 2006.
-  X. Lin, Y. Duan, Q. Dong, J. Lu, and J. Zhou. Deep variational metric learning. In ECCV, 2018.
-  R. Manmatha, C. Wu, A. J. Smola, and P. Krähenbühl. Sampling matters in deep embedding learning. In ICCV, 2017.
-  C. D. Manning, P. Raghavan, and H. Schütze. Introduction to Information Retrieval. Cambridge University Press, 2008.
-  G. Marsaglia. Choosing a point from the surface of a sphere. The Annals of Mathematical Statistics, 43(2):645–646, 1972.
-  J. Masci, D. Migliore, M. M. Bronstein, and J. Schmidhuber. Descriptor learning for omnidirectional image matching. In Registration and Recognition in Images and Videos, pages 49–62. Springer, 2014.
-  Y. Movshovitz-Attias, A. Toshev, T. K. Leung, S. Ioffe, and S. Singh. No fuss distance metric learning using proxies. In ICCV, 2017.
-  M. Opitz, G. Waltner, H. Possegger, and H. Bischof. Bier-boosting independent embeddings robustly. In ICCV, 2017.
-  M. Perrot and A. Habrard. Regressive virtual metric learning. In NIPS, 2015.
-  Q. Qian, R. Jin, S. Zhu, and Y. Lin. Fine-grained visual categorization via multi-stage metric learning. In CVPR, 2015.
F. Radenovic, G. Tolias, and O. Chum.
CNN image retrieval learns from bow: Unsupervised fine-tuning with hard examples.In ECCV, 2016.
-  A. S. Razavian, H. Azizpour, J. Sullivan, and S. Carlsson. CNN features off-the-shelf: An astounding baseline for recognition. In CVPR Workshops, 2014.
F. Schroff, D. Kalenichenko, and J. Philbin.
Facenet: A unified embedding for face recognition and clustering.In CVPR, 2015.
-  A. Shrivastava, A. Gupta, and R. Girshick. Training region-based object detectors with online hard example mining. In CVPR, 2016.
-  E. Simo-Serra, E. Trulls, L. Ferraz, I. Kokkinos, P. Fua, and F. Moreno-Noguer. Discriminative learning of deep convolutional feature point descriptors. In ICCV, 2015.
-  K. Simonyan, A. Vedaldi, and A. Zisserman. Learning local feature descriptors using convex optimisation. TPAMI, 2014.
-  K. Simonyan and A. Zisserman. Very deep convolutional networks for large-scale image recognition. CoRR, 2014.
-  J. Snell, K. Swersky, and R. S. Zemel. Prototypical networks for few-shot learning. In NIPS, 2017.
-  K. Sohn. Improved deep metric learning with multi-class n-pair loss objective. In NIPS, 2016.
-  H. O. Song, S. Jegelka, V. Rathod, and K. Murphy. Deep metric learning via facility location. In CVPR, 2017.
-  H. O. Song, Y. Xiang, S. Jegelka, and S. Savarese. Deep metric learning via lifted structured feature embedding. In CVPR, 2016.
-  C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. E. Reed, D. Anguelov, D. Erhan, V. Vanhoucke, and A. Rabinovich. Going deeper with convolutions. In CVPR, 2015.
C. Szegedy, V. Vanhoucke, S. Ioffe, J. Shlens, and Z. Wojna.
Rethinking the inception architecture for computer vision.In CVPR, 2016.
-  P. M. L. Tammes. On the origin of number and arrangements of the places of exit on the surface of pollen-grains. Recueil des Travaux Botaniques Néerlandais, pages 1–84, 1930.
-  S. Thrun and L. Pratt. Learning to learn. Springer Science & Business Media, 2012.
-  E. Ustinova and V. S. Lempitsky. Learning deep embeddings with histogram loss. In NIPS, 2016.
-  C. Wah, S. Branson, P. Welinder, P. Perona, and S. Belongie. The Caltech-UCSD birds-200-2011 dataset. 2011.
-  F. Wang, X. Xiang, J. Cheng, and A. L. Yuille. Normface: L2 hypersphere embedding for face verification. In ACM MM, 2017.
-  J. Wang, Y. Song, T. Leung, C. Rosenberg, J. Wang, J. Philbin, B. Chen, and Y. Wu. Learning fine-grained image similarity with deep ranking. In CVPR, 2014.
-  J. Wang, F. Zhou, S. Wen, X. Liu, and Y. Lin. Deep metric learning with angular loss. In ICCV, 2017.
-  Y. Wen, K. Zhang, Z. Li, and Y. Qiao. A discriminative feature learning approach for deep face recognition. In ECCV, 2016.
-  P. Wohlhart and V. Lepetit. Learning descriptors for object recognition and 3d pose estimation. In CVPR, 2015.
-  H. Xuan, R. Souvenir, and R. Pless. Deep randomized ensembles for metric learning. In ECCV, 2018.
-  Y. Yuan, K. Yang, and C. Zhang. Hard-aware deeply cascaded embedding. In ICCV, 2017.
-  S. Zagoruyko and N. Komodakis. Learning to compare image patches via convolutional neural networks. In CVPR, 2015.