Apparatus for deep representation learning and method thereof

An apparatus for providing similar contents, using a neural network, includes a memory storing instructions, and a processor configured to execute the instructions to obtain a plurality of similarity values between a user query and a plurality of images, using a similarity neural network, obtain a rank of each the obtained plurality of similarity values, and provide, as a most similar image to the user query, at least one among the plurality of images that has a respective one among the plurality of similarity values that corresponds to a highest rank among the obtained rank of each of the plurality of similarity values. The similarity neural network is trained with a divergence neural network for outputting a divergence between a first distribution of first similarity values for positive pairs, among the plurality of similarity values, and a second distribution of second similarity values for negative pairs, among the plurality of similarity values.

BACKGROUND

The disclosure relates to artificial intelligence, and more particularly, to an apparatus for deep representation learning and a method thereof.

2. Description of Related Art

Deep representation learning is fundamental for many downstream applications, including image retrieval, face re-identification, 3D object retrieval, image captioning, and cross-modal learning and retrieval. Most such tasks use complex neural network architectures to transform their input (e.g., images, 3D shapes, text or audio captions, etc.) into an embedding space. The objective is to learn representations that yield high proximity for semantically related or matching items (e.g., same-category images/objects, faces of the same person, and paired image-captions) and low proximity for semantically unrelated or non-matching ones (e.g., images/objects of different types, faces of different people, non-matching image-captions). A common practice is to formulate representation learning as a retrieval (or ranking) problem where matching and non-matching query-value pairs are used as positive/negative examples for training.

A variety of ranking-based loss functions have been proposed in the literature, including triplet loss, quadruplet loss, and histogram loss. Triplet and quadruplet losses compute and aggregate the differences between similarities of positive and negative pairs, hence are sensitive to the sampling strategy and may suffer from inefficiency in sampling. The histogram loss addresses these challenges by providing empirical estimates of the distributions of positive and negative samples, and then directly calculating the probability of a random negative pair having a higher similarity score than a random positive pair.

SUMMARY

According to embodiments, an apparatus for providing similar contents, using a neural network, includes a memory storing instructions, and a processor configured to execute the instructions to obtain a plurality of similarity values between a user query and a plurality of images, using a similarity neural network, obtain a rank of each the obtained plurality of similarity values, and provide, as a most similar image to the user query, at least one among the plurality of images that has a respective one among the plurality of similarity values that corresponds to a highest rank among the obtained rank of each of the plurality of similarity values. The similarity neural network is trained with a divergence neural network for outputting a divergence between a first distribution of first similarity values for positive pairs, among the plurality of similarity values, and a second distribution of second similarity values for negative pairs, among the plurality of similarity values.

The similarity neural network may be trained to maximize the divergence output by the divergence neural network.

The positive pairs may be matching pairs among samples that are used to train the similarity neural network, and the negative pairs may be non-matching pairs among the samples.

The similarity neural network may be trained by obtaining a loss based on a loss function in which the divergence is input, and by updating parameters of the similarity neural network and the divergence neural network, based on the obtained loss.

The loss function may include a first negative term of a lower bound on the divergence.

The loss function may further include a second negative term that is obtained to maintain positive a derivative of a function that is represented by the divergence neural network.

The user query comprises a textual or spoken utterance of a user.

According to embodiments, a method of providing similar contents, using a neural network, includes obtaining a plurality of similarity values between a user query and a plurality of images, using a similarity neural network, obtaining a rank of each the obtained plurality of similarity values, and providing, as a most similar image to the user query, at least one among the plurality of images that has a respective one among the plurality of similarity values that corresponds to a highest rank among the obtained rank of each of the plurality of similarity values. The similarity neural network is trained with a divergence neural network for outputting a divergence between a first distribution of first similarity values for positive pairs, among the plurality of similarity values, and a second distribution of second similarity values for negative pairs, among the plurality of similarity values.

The similarity neural network may be trained to maximize the divergence output by the divergence neural network.

The positive pairs may be matching pairs among samples that are used to train the similarity neural network, and the negative pairs may be non-matching pairs among the samples.

The similarity neural network may be trained by obtaining a loss based on a loss function in which the divergence is input, and by updating parameters of the similarity neural network and the divergence neural network, based on the obtained loss.

The loss function may include a first negative term of a lower bound on the divergence.

The loss function may further include a second negative term that is obtained to maintain positive a derivative of a function that is represented by the divergence neural network.

The user query comprises a textual or spoken utterance of a user.

A non-transitory computer-readable storage medium stores instructions to cause a processor to obtain a plurality of similarity values between a user query and a plurality of images, using a similarity neural network, obtain a rank of each the obtained plurality of similarity values, and provide, as a most similar image to the user query, at least one among the plurality of images that has a respective one among the plurality of similarity values that corresponds to a highest rank among the obtained rank of each of the plurality of similarity values. The similarity neural network is trained with a divergence neural network for outputting a divergence between a first distribution of first similarity values for positive pairs, among the plurality of similarity values, and a second distribution of second similarity values for negative pairs, among the plurality of similarity values.

The similarity neural network may be trained to maximize the divergence output by the divergence neural network.

The positive pairs may be matching pairs among samples that are used to train the similarity neural network, and the negative pairs may be non-matching pairs among the samples.

The similarity neural network may be trained by obtaining a loss based on a loss function in which the divergence is input, and by updating parameters of the similarity neural network and the divergence neural network, based on the obtained loss.

The loss function may include a first negative term of a lower bound on the divergence.

The loss function may further include a second negative term that is obtained to maintain positive a derivative of a function that is represented by the divergence neural network.

DETAILED DESCRIPTION

Embodiments of the disclosure provide an apparatus for deep representation learning and a method thereof. A ranking-based loss function is used and draws on information theory to estimate an overlap between distributions of similarities for positive and negative pairs without having to directly compute the distributions. The ranking-based loss function approximates mutual information between two random variables (e.g., queries and values in a ranking setting) by estimating tight lower bounds on a divergence between their joint probability (positive samples) and product of marginals (approximated via negative samples). The ranking-based loss function uses a parametrized neural network to estimate the mutual information and consequently the overlap between the positive and negative similarity distributions.

Minimizing the above overlap may not be sufficient for ranking, because the goal is to not only separate positives from negatives, but also to preserve a correct ordering between the two (that is, positive pairs should be ranked higher than negatives). The ranking-based loss function thus contains a second component that may enforce a soft constraint on the divergence estimator via a gradient penalty method.

Thus, the embodiments provide an information-theoretic loss function for ranking and retrieval, with connections to triplet and quadruplet losses as special cases. The loss function does not require its input (pair-wise similarity scores) to be bounded, hence broadening a range of similarity functions that can be used. Further functional knowledge (e.g., locally increasing behavior) is incorporated into the loss function via a gradient penalty method, making the loss function applicable to retrieval tasks.

As the disclosure allows for various changes and numerous examples, the embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the disclosure to modes of practice, and it will be understood that all changes, equivalents, and substitutes that do not depart from the spirit and technical scope of the disclosure are encompassed in the disclosure.

In the description of the embodiments, detailed explanations of related art are omitted when it is deemed that they may unnecessarily obscure the essence of the disclosure. Also, numbers (for example, a first, a second, and the like) used in the description of the specification are identifier codes for distinguishing one element from another.

Also, in the present specification, it will be understood that when elements are “connected” or “coupled” to each other, the elements may be directly connected or coupled to each other, but may alternatively be connected or coupled to each other with an intervening element therebetween, unless specified otherwise.

In the present specification, regarding an element represented as a “unit” or a “module,” two or more elements may be combined into one element or one element may be divided into two or more elements according to subdivided functions. In addition, each element described hereinafter may additionally perform some or all of functions performed by another element, in addition to main functions of itself, and some of the main functions of each element may be performed entirely by another component.

Also, in the present specification, an ‘image’ or a ‘picture’ may denote a still image, a moving image including a plurality of consecutive still images (or frames), or a video.

Also, in the present specification, a ‘parameter’ is a value used in an operation process of each layer forming a neural network, and for example, may include a weight used when an input value is applied to an operation expression. Here, the parameter may be expressed in a matrix form. The parameter is a value set as a result of training, and may be updated through separate training data when necessary.

FIG.1is a block diagram of an apparatus100for deep representation learning, according to embodiments.

As shown inFIG.1, the apparatus100includes a similarity neural network105, a distribution obtaining module110, a divergence neural network115and a training apparatus120.

The similarity neural network105obtains first and second contents, and obtains a similarity value between the obtained first and second contents. The similarity neural network105may include any type of artificial neural network such as a deep neural network (DNN). Each of first and second contents may include any type of multimedia contents including, e.g., an image, text (captions, a user query, etc.), audio, video or any combination thereof. The first content may be considered as a query, and the second content may be considered as a value. The similarity value may include any similarity metric, such as, e.g., a cosine similarity value.

The first and second content may be obtained from a data storage medium including a magnetic medium such as a hard disk, a floppy disk, or a magnetic tape, an optical recording medium such as CD-ROM or DVD, or a magneto-optical medium such as a floptical disk. The first and second content may also be obtained from an input interface including, for example, a touchscreen, a camera, a microphone, a keyboard, a mouse or any combination thereof.

The distribution obtaining module110obtains, from the similarity neural network105, a plurality of similarity values between the first content and a plurality of contents including the second content, the plurality of similarity values being obtained by the similarity neural network105. The distribution obtaining module110obtains a first distribution of first similarity values for positive pairs, among the obtained plurality of similarity values, and a second distribution of second similarity values for negative pairs, among the obtained plurality of similarity values.

The divergence neural network115obtains, from the distribution obtaining module110, the obtained first and second distributions. The divergence neural network115obtains a divergence between the first and second distributions. The divergence neural network115may include any type of artificial neural network such as a DNN. The divergence may include, e.g., the Kullback-Leibler (KL) divergence or the Jensen-Shannon divergence. The positive pairs may include a matching pair between the first content and one of the plurality of contents, and the negative pairs may include a non-matching pair between the first content and another one of the plurality of contents.

The training apparatus120is a training module that obtains the obtained divergence from the divergence neural network115, and obtains a loss based on a loss function in which the obtained divergence is input. The training apparatus120further updates parameters of both the similarity neural network105and the divergence neural network115, based on the obtained loss, and sets the similarity neural network105and the divergence neural network115respectively based on the updated parameters. Further description of training the similarity neural network105and the divergence neural network115will be described inFIGS.2-4below.

The apparatus100may be implemented through a dedicated processor or through a combination of software and general-purpose processor such as application processor (AP), central processing unit (CPU) or graphic processing unit (GPU). The dedicated processor may be implemented by including a memory for implementing embodiments of the disclosure or by including a memory processor for using an external memory.

Also, the apparatus100may be configured by a plurality of processors. In this case, the apparatus100may be implemented through a combination of dedicated processors or through a combination of software and general-purpose processors such as AP, CPU or GPU.

Further, the apparatus100may include a CPU, a memory, and a computer program including instructions. The computer program is stored in the memory. The apparatus100may respectively perform functions described with reference toFIGS.1-4according to execution of the computer program by the CPU. The functions described with reference toFIGS.1-4are performed by a dedicated hardware chip and/or the CPU.

FIG.2is a flowchart of a method200of deep representation learning, according to embodiments.

Referring toFIG.2, the method200may be performed by the apparatus100ofFIG.1.

In operation205, the method200includes obtaining a plurality of similarity values between a first content and a plurality of contents, using the similarity neural network105. In detail, the similarity neural network105represents a differentiable distance function dij, or inverse similarity, where (i,j) is a query-value pair of a downstream retrieval task, e.g., an image-caption pair, images of faces, 3D shapes, etc. The differentiable distance function dijmay be also represented as a differentiable similarity Sθ(x, y), where (x, y) is a query-value pair of a downstream retrieval task.

In operation210, the method200includes obtaining, using the divergence neural network115, a divergence between a first distribution of first similarity values for positive pairs, among the obtained plurality of similarity values, and a second distribution of second similarity values for negative pairs, among the obtained plurality of similarity values.

In detail, mutual information I(X; Y) between two random variables X and Y can be expressed as the following KL divergence:
I(X;Y)=DKL(XY∥X⊗Y)  (1)

The Donsker-Varadhan representation of the KL divergence may establish a lower bound:
DKL(XY∥X⊗Y)≥su[T(x,y)]−log([eT(x,y)]),  (2)

wherecontains all functions T such that expectations are finite.

The Mutual Information Neural Estimator (MINE) yields a tight lower bound on mutual information using a neural network Tϕ(the divergence neural network115) that is parametrized by ϕ:
I(X;Y)≥Iϕ(X,Y),  (3)
where:
Iϕ(X,Y)=supϕ∈Φ[Tϕ(x,y)]−log([eTϕ(x,y)]).  (4)

Maximizing a tight estimate of the Jensen-Shannon divergence also maximizes mutual information, but has favorable properties in optimization. Similar to Equation (4), the neural network Tϕ(the divergence neural network115) with the parameters ϕ can be used to estimate a tight lower bound on the Jensen-Shannon divergence with its dual representation:
Îϕ(JSD)(X,Y)=supϕ{[−log(1+e−Tϕ(x,y))]−[log(1+eTϕ(x,y))]}.  (5)

In operation215, the method200includes obtaining a loss based on a loss function in which the obtained divergence is input.

In detail, the loss functionRankMImay be defined as follows:
RankMI−overlap+λorder,  (6)

whereoverlapcaptures an overlap loss between the first distribution of the first similarity values for the positive pairs and the second distribution of the second similarity values for the negative pairs,orderenforces a specific order between the first and second distributions, and λ is a positive, scalar weighting factor.

To minimize the overlap lossoverlapbetween the first and second distributions, the estimated Jensen-Shannon divergence of Equation (5) may be maximized between them:
overlap(x,y,ϕ,θ)=−Îϕ,θ(JSD))(x,y),  (7)

where Tϕmay be defined as follows:
Tϕ(x,y,θ)=Mϕ(Sθ(x,y)),  (8)

where Mϕis a 1D function that is approximated by a neural network with the parameters ϕ.

FIG.3is a diagram of graphs illustrating an objective of an overlap loss, according to embodiments.

Referring toFIG.3, at 500 training steps t, portion (a) shows a first distribution305of first similarity values for positive pairs of a validation set, among a plurality of similarity values Sθ(x, y), and a second distribution310of second similarity values for negative pairs of the validation set, among the plurality of similarity values Sθ(x, y). A divergence between the first and second distributions is minimal.

At 2,000 training steps t, portion (b) shows the first distribution305being moved in a right direction and the second distribution310being moved in a left direction. Thus, the divergence between the first and second distributions305and310is increased.

At 20,000 training steps t, portion (c) shows the first distribution305being further moved in the right direction and the second distribution310being further moved in the left direction. Thus, the divergence between the first and second distributions305and310is maximized, and overlap between the first and second distributions305and310is minimized, to improve overall performance of retrieval of content-content (e.g., image-text) matching.

The 1D function Mϕlearns how much to move the first and second distributions305and310to maximize the divergence between the first and second distributions305and310. Unlike previous work, a loss function does not require the plurality of similarity values to be normalized. This broadens a range of similarity functions that can be used.

Referring again to Equation (6), a limitation of optimizing the overlap lossoverlapalone is that it could separate the first and second distributions while admitting high negative and low positive similarity values. Thus, a second loss termordersoftly constrains the 1D function Mϕsuch that similarity values of positives (sampled fromXY) and negatives (sampled fromX⊗Y) are maximized and minimized, respectively. Formally, this requirement can be expressed as follows:
∀(x,y)˜XY,sgn(∇θoverlap)=−sgn(∇θS(x,y)); and  (9a)
∀(x,y)˜X⊗Y,sgn(∇θoverlap)=sgn(∇θS(x,y)).  (9b)

This requirement may be satisfied if the following hold for the 1D function Mϕ:
∀(x,y)˜XY,dM/dS>0; and  (10a)
∀(x,y)˜X⊗Y,dM/dS>0.  (10b)

That is, if the 1D function Mϕis increasing around a neighborhood of similarity values for positive and negative pairs at a given timestamp during training, the similarity values of the positive pairs are always maximized and the similarity values of the negative pairs are always minimized. The gradient penalty method may define the second loss termorderas follows:
order(x,y,ϕ,θ)=−min(0,dMϕ(Sθ(x,y))/dSθ(x,y)).  (11)

With this second loss termorder, a parameter space ϕ is softly constrained to the corresponding 1D function Mϕthat respect a correct ordering. In other words, if a derivative of the 1D function Mϕis negative, then a penalty is applied via the second loss termorderto reverse the negative derivative.

Referring again toFIG.2, in operation220, the method200includes updating parameters of both the similarity neural network105and the divergence neural network115, based on the obtained loss, i.e., to minimize the obtained loss.

In operation225, the method200includes setting the similarity neural network105and the divergence neural network115, based on the updated parameters.

The above-described loss functionRankMIhas connections with triplet and quadruplet losses. To enable direct comparison, the triplet and quadruplet losses may be reformulated using a notation that captures a spectrum of sampling strategies. The triplet losstrpmay be reformulated as follows:
trp=Σi=1N[Sθ(xi,y−)−Sθ(xi,y+)+η]+,  (12)

where N is a number of samples in a dataset,describes a distribution for sampling a pair (y+, y−) for xito form a triplet (xi, y+, y−), and [.]+denotes a max(0,.) operator.

For instance, a multimodal learning setup may be considered, in which for each batch of size B, there is a B×B similarity matrix S. A diagonal corresponds to positive pairs (xi, y+=yi). In a case in which averaging triplet loss across all possible negatives y−=yjsuch that j≠i within a batch,is described by a distribution with probability 1/(B−1) for non-diagonal entries of an ithrow of S, and 0 for all other samples in the dataset. Similarly, picking a hardest negative within a batch is a case in whichis a delta function with all of a probability mass on

where k≠j anddescribes a distribution for sampling (xk, y−, y+) to form quadruplets of positive pairs (xj, y+) and negative pairs (xk, y−). Ifis defined such that k=j, the quadruplet term recovers triplet loss as defined in Equation 12. In that sense, a difference between triplet and quadruplet losses is characterized as a difference between sampling strategies, or the distributionsand.

If M in the Jensen-Shannon lower bound of Equation (8) is fixed to be the following function:

then the value being optimized, as in Equation (5), reduces to the quadruplet term in Equation (13) with a sufficiently large margin γ that retains all quadruplets. The margin γ is used to discard less informative quadruplets. However, a similar sampling strategy with margins using the loss functionRankMIaccording to the embodiments could be adopted as well. Therefore, the triplet loss is a special case of the quadruplet loss with an anchor-based sampling strategy, and the quadruplet loss is a special case of the loss functionRankMIwith a fixed M. Moreover, bounds can be learned to be estimated tighter than those that can be estimated with the fixed function M in Equation (14). This ability to train on tighter bounds is a source of substantial performance improvements in the loss functionRankMIaccording to the embodiments.

In other embodiments, mutual information, I(X, Y), between two random variables, X and Y, can be expressed as the following KL-divergence:
I(X;Y)=DKL(∥)  (15)

whereis a joint probability distribution between X and Y, andis their product of marginals.

On the basis of this connection, as well as lower bounds on the KL-divergence, a Mutual Information Neural Estimator (MINE) is obtained, which uses a neural network to estimate a tight lower bound on the mutual information. A dual representation of the Jensen-Shannon divergence may establish the lower bound on the mutual information, via a variational function Tϕas follows:
Îϕ(JSD)(X,Y)=supϕ∈Φ{[T(x,y)]−[−log(2−eTϕ(x,y))]},  (16)

where Tϕis a function of the following form:
Tϕ(x,y)=log(2)−log(1+e−Vϕ(x,y)).  (17)

This ensures that Tϕ(x, y)<log(2) for any value of Vϕ, and consequently, the second term in Equation (16) is finite as required.

A ranking loss function is proposed and maximizes the mutual information by maximizing the lower bound of the Jensen-Shannon divergence as in Equation (16). A neural network is used to learn the variational function Tϕthat is defined as a function of a distance measurement over a learned embedding space.

In detail, let zi=fθ(xi) be an image embedding that is computed over an image xivia fθ:n→d, a deep neural network referred to as an embedding network (e.g., the similarity neural network105). The purpose of the ranking loss function is to learn parameters θ such that images that share the same class label c are mapped in close proximity in the embedding space and therefore can be retrieved based on distance. Given a batch B of images, the ranking loss function is computed over two sets of paired image embeddings ρ={(zi, zj)|ci=cj} and={(zi, zj)|ci≠cj} for1≤i, j≤B and i≠j.

A sampling procedure for a positive (matching) pair of images (xi, xj) consists of initially sampling a class label, then sampling two images independently given the same class label. Under this conditional independent assumption, their joint distribution is obtained:

For a large number of classes ∥C∥ and high entropy p(c), which is often the case in retrieval tasks, a sampling procedure for negative pairs closely approximates sampling from a product of marginals:

Therefore, using sample positive pairs p and sample negative pairs N in a mini-batch, expectations in Equation (16) can be estimated. Then, the ranking loss function can be constructed to maximize the lower bound on the mutual information between representations (zi, zj) of images depicting shared content (e.g., the same product, the same bird species), as in:

Based on Equation (17), a statistics network Tϕ(e.g., the divergence neural network115) may be defined as:
Tϕ(zi,zj):=log(2)−log(1+e−Vϕ(dij)),  (21)

where Vϕ:→is a multi-layer perceptron (MLP), and dijis a distance between embeddings (zi, zj), e.g., a normalized L2distance. Defining Tϕas a function of dijallows the mutual information to be connected to the distance in the embedding space.

Along with the embedding network for learning d-dimensional feature vectors zi, the statistics network Tϕis trained to capture statistics of distances between the vectors. Without explicitly modeling distributions of positive and negative pairs, a variational function Tϕis optimized to enable estimating their divergence. Once this estimator is available, it is used to provide training signals to the embedding network. This procedure does not necessitate prior assumptions on the distance distributions, allowing variational functions optimized to separate arbitrarily complex distributions to be learned.

Consideration for the design of the statistics network Tϕ(.) are described such that it satisfies a requirement of ranking positive items closer than negative items for a given query. Let p(dij+|θt) and p(dij−|θt) be conditional density functions associated with positive pair distances dij+and negative pair distances dij−, respectively, given embedding network parameters θtat timestep t. A property of any ranking loss is that gradient updates move positive pairs closer, and push negatives farther in an embedding space, which is expressed as follows:
sgn(∇θRankMI)=sgn(∇θdij+),  (22a)
sgn(∇θRankMI)=−sgn(∇θdij−),  (22b)
∀(i,j)∈{i,j|p(dij+|θt)≠0 orp(dij−|θt)≠0}.

This property is satisfied if the following holds for Vϕ:

That is, if Vϕis decreasing around a neighborhood of distances for positive and negative pairs at a given timestamp during training, the loss minimizes the positive pair distances and maximizes the negative pair distances. When Equation (23) holds, mutual information and distance are not only created but also have a monotonic relationship (higher mutual information corresponds to lower distance).

In practice, this requirement on VØmay not be violated during stochastic gradient descent (SGD) because with initialization of fθwith pre-trained weights, distributions are already separated in a desired direction at t=0. It is empirically observed that VØnaturally converges to a decreasing function early in training. However, to better facilitate this property, a residual connection from an input of VØis added to its output, such that it is of the form:
VØ(x):={tilde over (V)}Ø(x)−x,(24)

thus maximizing ∂VØ/∂Vij≈1 at t=0 (with standard weight initialization of VØ).

One can provide soft constraints on VØto ensure Equation (23) holds.

It has been shown that sampling is important for deep representation learning, regardless of a loss function being used. Margins are used as an additional strategy for improving sampling, because margins are used to drop easy positives and negatives from a batch and to focus on harder, margin-violating samples. Therefore, one embodiment provides Algorithm 1 to incorporate margin enforcement and negative sampling schemes, as reproduced below:

FIG.4is a diagram of a loss that is learned as a function of pairwise distances, according to embodiments.

In portion (a), a dotted line410represents a loss that is incurred by a positive pair that is calculated as Tϕ(zi, zj), a first component of the loss in Equation (20). A dashed line405represents a loss that is incurred by a negative pair that is calculated as log(2−eTϕ(zi,zj)), a second component of the loss in Equation (20). β is a distance score for which the dashed line405and the dotted line410intersect, where positive and negative pairs incur equal loss.

In portion (b), the positive pair distance distribution305and the negative pair distance distribution310are shown. β marks a point where p(dij+|θt)=p(dij−|θt).

It is observed that analytically, Tϕ(zi, zj)=0 is a solution that makes the two terms ofRankMIequal for a same dijvalue. Further, solving for Vϕin Equation (21), Vϕ(β)=0. Then, a root-finding algorithm, such as Newton's method, can be used to closely approximate βtgiven current parameters ϕtat training step t. This step is repeated every time parameters ϕ are updated as shown in line 14 of Algorithm 1, and adds negligible computational overhead.

Once β is found, margins a can be incorporated into the training algorithm.FIG.4highlights the effect of these margins on the ranking loss. In particular, negative pairs can be dropped if dij−>β+α, and positive pairs can be dropped if dij+<β−α. As outlined in the Algorithm 1, the training procedure alternates between two phases: updates to the statistics network, and updates to the embedding network. For k steps, all positive and negative pairs available in a batch are used to tighten a divergence lower bound that is estimated via the parameters ϕ and Equation (16). All available samples are used for this phase because using more samples improves approximation to expectations in Equation (16). Then, a single update on the embedding network is performed after filtering out samples that are not margin-violating and employing any negative sampling procedure, such as distance weighted (see Algorithm 1, lines 19-21). This procedure allows a strength of mutual information neural estimators to be leveraged, without sacrificing the ability to employ negative sampling strategies.

Even though the requirement

∂Vϕ∂dij<0,
as described in Equation (23), is not violated, a non-monotonic VØmay maximize the divergence between two 1D distributions by incorporating an order lossorderinto a total lossder. In an embodiment of the disclosure, the order lossordermay be calculated according to Equation (25), and may be added to the ranking lossRankMIto obtain the total lossorderas shown in Equation (26) below:

Based on the calculation of the total losstotalby adding the order lossorderto the ranking lossRankMI, the parameter space CD may be softly constrained to corresponding functions VØthat are non-increasing.

FIG.5is a block diagram of an apparatus500for providing similar contents, using a neural network, according to embodiments.

As shown inFIG.5, the apparatus500includes the similarity neural network105, a ranking module505and an output module510.

The similarity neural network105obtains a user query and an image, and obtains a similarity value between the obtained user query and image, as described inFIG.1above. The similarity neural network105is trained based on the method200described inFIG.2above. The user query may be a textual or spoken utterance of a user. In embodiments, the user query may be an image or video content that is selected by the user.

The ranking module505obtains, from the similarity neural network105, a plurality of similarity values between the user query and a plurality of images including the obtained image, the plurality of similarity values being obtained by the similarity neural network105. The ranking module505further obtains a rank of each of the obtained plurality of similarity values. The rank of a respective one of the plurality of similarity values may be higher, based on the respective one of the plurality of similarity values being higher.

The output module510obtains, from the ranking module505, the rank of each of the plurality of similarity values, and outputs, as a most similar image to the user query, at least one among the plurality of images that has a respective one among the plurality of similarity values that corresponds to a highest rank among the obtained rank of each of the plurality of similarity values. The most similar image may be output to a display for display.

By using the similarity neural network105trained based on the method200, the apparatus500may find and output the most similar image to the user query more accurately than prior art systems.

FIG.6is a flowchart of a method600of providing similar contents, using a neural network, according to embodiments.

Referring toFIG.6, the method600may be performed by the apparatus500ofFIG.5.

In operation605, the method600includes obtaining a plurality of similarity values between a user query and a plurality of images, using the similarity neural network105.

In operation610, the method600includes obtaining a rank of each of the obtained plurality of similarity values.

In operation615, the method600includes providing, as a most similar image to the user query, at least one among the plurality of images that has a respective one among the plurality of similarity values that corresponds to a highest rank among the obtained rank of each of the plurality of similarity values.

FIGS.7A,7B,7Care diagrams illustrating a use case of the apparatus500shown inFIG.5.

As shown inFIG.7A, a user705may be viewing and/or using a screen710of a gallery application. The screen710includes a plurality of thumbnails, each of which may be selected for displaying a respective one among a plurality of images.

As shown inFIG.7B, the user705may select a microphone icon715that is displayed on the screen710. Based on the microphone icon715being selected, a user interface720may be displayed on the screen710, and indicate that the gallery application or an operating system is listening for a user query or a spoken utterance of the user705. Based on the user interface720being displayed, the user may utter a search query725that may be considered as the user query, “Show me photos of a baby.” Based on the search query725being uttered, a text of the search query725may be displayed on the user interface720.

In response to the search query725being uttered, a smartphone implementing the apparatus500and including the gallery application may compare the search query725to a plurality of images, using the similarity neural network105trained based on the method200ofFIG.2. The smartphone may find a most similar image730to the search query725.

As shown inFIG.7C, the smartphone may display the found most similar image730on the screen710to the user705. In addition, the smartphone may display, on the screen710, a text735of the search query725, along with a plurality of thumbnails740, each of which may be selected for displaying a respective one among a plurality of images that is also similar to the user query. InFIG.7C, each of the most similar image730and the plurality of thumbnails740includes a baby, based on the search query725, “Show me photos of a baby.”

FIG.8is a block diagram of an electronic device800, according to embodiments.

Referring toFIG.8, the electronic device800includes a memory805, a processor810, an input interface815and an output interface820. The electronic device800may be implemented in each of the apparatus100ofFIG.1and the apparatus500ofFIG.5.

The processor810takes overall control of the electronic device800. The processor810executes one or more programs stored in the memory805.

The memory805stores various data, programs, or applications for driving and controlling the electronic device800. A program stored in the memory805includes one or more instructions. A program (one or more instructions) or an application stored in the memory805may be executed by the processor810.

The processor810may perform any one or any combination of operations of the apparatus100and the apparatus500that are respectively shown inFIGS.1and5and have been described with reference toFIGS.1-7C.

The input interface815may receive a user input and/or a data such as a state of an agent. The input interface815may include, for example, a touchscreen, a camera, a microphone, a keyboard, a mouse or any combination thereof.

The output interface820may obtain data from, e.g., the processor810, and may output the obtained data. The output interface820may include, for example, a touchscreen, a television, a computer monitor, a speaker or any combination thereof.

The block diagram of the electronic device800is provided as an example. Each component in the block diagram may be integrated, added, or omitted depending upon specifications of the electronic device800that is actually implemented. That is, two or more components may be integrated into one component or one component may be divided into two or more components, as needed. In addition, functions performed by the respective blocks are provided for illustrating the embodiments of the disclosure, and operations or devices of the respective blocks do not limit the scope of the disclosure.

The new loss function for retrieval tasks according to embodiments outperforms results in multimodal retrieval. To do this, neural networks are used as function approximators to simultaneously estimate and maximize a divergence between similarity score distributions of matching and non-matching pairs to learn a ranking. A set of functions used are softly constrained for this estimation to be locally increasing via a gradient penalty term, so that the loss always increases the similarity of positive pairs and decreases the similarity of negative pairs. This soft constraint ensures that trivial solutions that maximize the divergence between matching and non-matching distributions but with a wrong order are avoided. The loss function does not require any scaling on the similarity scores as its domain is not bounded.

The embodiments of the disclosure described above may be written as computer-executable programs or instructions that may be stored in a medium.

The medium may continuously store the computer-executable programs or instructions, or temporarily store the computer-executable programs or instructions for execution or downloading. Also, the medium may be any one of various recording media or storage media in which a single piece or plurality of pieces of hardware are combined, and the medium is not limited to a medium directly connected to a computer system, but may be distributed on a network. Examples of the medium include magnetic media, such as a hard disk, a floppy disk, and a magnetic tape, optical recording media, such as CD-ROM and DVD, magneto-optical media such as a floptical disk, and ROM, RAM, and a flash memory, which are configured to store program instructions. Other examples of the medium include recording media and storage media managed by application stores distributing applications or by websites, servers, and the like supplying or distributing other various types of software.

A model related to any of the neural networks described above may be implemented via a software module. When a neural network model is implemented via a software module (for example, a program module including instructions), the neural network model may be stored in a computer-readable recording medium.

Also, the neural network model may be a part of the apparatus100described above by being integrated in a form of a hardware chip. For example, the neural network model may be manufactured in a form of a dedicated hardware chip for AI, or may be manufactured as a part of an existing general-purpose processor (for example, CPU or application processor) or a graphic-dedicated processor (for example GPU).

Also, the neural network model may be provided in a form of downloadable software. A computer program product may include a product (for example, a downloadable application) in a form of a software program electronically distributed through a manufacturer or an electronic market. For electronic distribution, at least a part of the software program may be stored in a storage medium or may be temporarily generated. In this case, the storage medium may be a server of the manufacturer or electronic market, or a storage medium of a relay server.