Source code for deepr.examples.movielens.layers.ns

# pylint: disable=unexpected-keyword-arg,no-value-for-parameter,invalid-name
"""Negative Sampling Loss with biases."""

import deepr


[docs]def NegativeSampling(vocab_size: int): """Negative Sampling Loss with biases.""" return deepr.layers.DAG( deepr.layers.Select(inputs=("userEmbeddings", "targetPositives", "targetNegatives", "targetMask")), deepr.layers.DenseIndex( inputs=("userEmbeddings", "targetPositives"), outputs="targetPositiveLogits", units=vocab_size, kernel_name="embeddings", bias_name="biases", reuse=True, ), deepr.layers.DenseIndex( inputs=("userEmbeddings", "targetNegatives"), outputs="targetNegativeLogits", units=vocab_size, kernel_name="embeddings", bias_name="biases", reuse=True, ), deepr.layers.ToFloat(inputs="targetMask", outputs="targetWeight"), deepr.layers.ExpandDims(inputs="targetMask", outputs="targetMask"), deepr.layers.MaskedNegativeSampling( inputs=("targetPositiveLogits", "targetNegativeLogits", "targetMask", "targetWeight"), outputs="loss" ), deepr.layers.Select(inputs=("loss")), )