Patent ID: 9552549
Date: 2017-01-24
CPC Classifications: G06N

Claim:
1. A method performed by one or more computers, the method comprising: receiving respective label scores determined by a neural network for each of at least two labels for at least one training example, wherein at least one of the at least two labels for each training example is a positive label for the training example and at least one other of the at least two labels for each training example is a negative label for the training example; determining an error of the neural network based on a semantic ranking loss of the label scores, wherein the semantic ranking loss is determined according to: where W is a ranking function of the neural network, n is the number of training examples, x i is an ith training example, c+ is the number of positive labels for the training example x i , c− is the number of negative labels for the training example x i , ρ is a margin for hinge loss, y c+ is the jth positive label, y c− is kth negative label, D(y c+ , y c− ) is a function that evaluates the semantic distance between two labels, y c+ and y c− , x i W c+ is the label score given to the jth positive label when the ranking function W is used to evaluate the training example x i , and x i W c− is the label score given to the kth negative label when the ranking function W is used to evaluate the training example x i ; determining updated weights for the neural network based on a gradient of the determined error of the neural network; and applying the updated weights to the neural network to train the neural network.