matchzoo.losses package¶
Submodules¶
matchzoo.losses.rank_cross_entropy_loss module¶
The rank cross entropy loss.
-
class
matchzoo.losses.rank_cross_entropy_loss.
RankCrossEntropyLoss
(num_neg=1)¶ 基类:
object
Rank cross entropy loss.
Examples
>>> from keras import backend as K >>> softmax = lambda x: np.exp(x)/np.sum(np.exp(x), axis=0) >>> x_pred = K.variable(np.array([[1.0], [1.2], [0.8]])) >>> x_true = K.variable(np.array([[1], [0], [0]])) >>> expect = -np.log(softmax(np.array([[1.0], [1.2], [0.8]]))) >>> loss = K.eval(RankCrossEntropyLoss(num_neg=2)(x_true, x_pred)) >>> np.isclose(loss, expect[0]).all() True
matchzoo.losses.rank_hinge_loss module¶
The rank hinge loss.
-
class
matchzoo.losses.rank_hinge_loss.
RankHingeLoss
(num_neg=1, margin=1.0)¶ 基类:
object
Rank hinge loss.
Examples
>>> from keras import backend as K >>> x_pred = K.variable(np.array([[1.0], [1.2], [0.8], [1.4]])) >>> x_true = K.variable(np.array([[1], [0], [1], [0]])) >>> expect = ((1.0 + 1.2 - 1.0) + (1.0 + 1.4 - 0.8)) / 2 >>> expect 1.4 >>> loss = K.eval(RankHingeLoss(num_neg=1, margin=1.0)(x_true, x_pred)) >>> np.isclose(loss, expect) True