merlin.models.tf.ItemRetrievalTask#
- class merlin.models.tf.ItemRetrievalTask(*args, **kwargs)[source]#
Bases:
merlin.models.tf.prediction_tasks.classification.MultiClassClassificationTask
Prediction-task for item-retrieval.
- Parameters
schema (Schema) – The schema object including features to use and their properties.
samplers (List[ItemSampler]) – List of samplers for negative sampling, by default [InBatchSampler()]
target_name (Optional[str]) – If specified, name of the target tensor to retrieve from dataloader. Defaults to None.
task_name (Optional[str]) – name of the task. Defaults to None.
task_block (Block) – The Block that applies additional layers op to inputs. Defaults to None.
post_logits (Optional[PredictionBlock]) – Optional extra pre-call block for post-processing the logits, by default None. You can for example use post_logits = mm.PopularitySamplingBlock(item_fequency) for populariy sampling correction.
logits_temperature (float) – Parameter used to reduce the model overconfidence, so that logits / T. Defaults to 1.
cache_query (bool) – Add query embeddings to the context block, by default False
store_negative_ids (bool) – Returns negative items ids as part of the output, by default False
- Returns
The item retrieval prediction task
- Return type
- __init__(schema: merlin.schema.schema.Schema, samplers: Sequence[merlin.models.tf.blocks.sampling.base.ItemSampler] = (), target_name: Optional[str] = None, task_name: Optional[str] = None, task_block: Optional[keras.engine.base_layer.Layer] = None, post_logits: Optional[merlin.models.tf.core.base.Block] = None, logits_temperature: float = 1.0, cache_query: bool = False, store_negative_ids: bool = False, **kwargs)[source]#
Methods
__init__
(schema[, samplers, target_name, ...])add_loss
(losses, **kwargs)Add loss tensor(s), potentially dependent on layer inputs.
add_metric
(value[, name])Adds metric tensor to the layer.
add_update
(updates)Add update op(s), potentially dependent on layer inputs.
add_variable
(*args, **kwargs)Deprecated, do NOT use! Alias for add_weight.
add_weight
([name, shape, dtype, ...])Adds a new variable to the layer.
build
(input_shape[, features_shape])build_from_config
(config)build_task
(input_shape, schema, body, **kwargs)call
(inputs[, training, eval_sampling])child_name
(name)compute_mask
(inputs[, mask])Computes an output mask tensor.
compute_output_shape
(input_shape)compute_output_signature
(input_signature)Compute the output tensor signature of the layer based on the inputs.
count_params
()Count the total number of scalars composing the weights.
create_default_metrics
()finalize_state
()Finalizes the layers state after updating layer weights.
from_config
(config)from_schema
(schema[, feature_name, ...])Create from Schema.
get_build_config
()Return a Python dict containing the configuration of the model.
get_input_at
(node_index)Retrieves the input tensor(s) of a layer at a given node.
get_input_mask_at
(node_index)Retrieves the input mask tensor(s) of a layer at a given node.
get_input_shape_at
(node_index)Retrieves the input shape(s) of a layer at a given node.
get_output_at
(node_index)Retrieves the output tensor(s) of a layer at a given node.
get_output_mask_at
(node_index)Retrieves the output mask tensor(s) of a layer at a given node.
get_output_shape_at
(node_index)Retrieves the output shape(s) of a layer at a given node.
get_weights
()Returns the current weights of the layer, as NumPy arrays.
pre_call
(inputs, **kwargs)Apply PredictionTask to inputs to get predictions scores
pre_loss
(outputs, **kwargs)Apply call_outputs method of pre block to transform predictions and targets before computing loss and metrics.
set_retrieval_cache_query
(value)set_weights
(weights)Sets the weights of the layer, from NumPy arrays.
with_name_scope
(method)Decorator to automatically enter the module name scope.
Attributes
activity_regularizer
Optional regularizer function for the output of this layer.
compute_dtype
The dtype of the layer's computations.
context
dtype
The dtype of the layer weights.
dtype_policy
The dtype policy associated with this layer.
dynamic
Whether the layer is dynamic (eager-only); set in the constructor.
inbound_nodes
Return Functional API nodes upstream of this layer.
input
Retrieves the input tensor(s) of a layer.
input_mask
Retrieves the input mask tensor(s) of a layer.
input_shape
Retrieves the input shape(s) of a layer.
input_spec
InputSpec instance(s) describing the input format for this layer.
losses
List of losses added using the add_loss() API.
metrics
List of metrics added using the add_metric() API.
name
Name of the layer (string), set in the constructor.
name_scope
Returns a tf.name_scope instance for this class.
non_trainable_variables
non_trainable_weights
List of all non-trainable weights tracked by this layer.
outbound_nodes
Return Functional API nodes downstream of this layer.
output
Retrieves the output tensor(s) of a layer.
output_mask
Retrieves the output mask tensor(s) of a layer.
output_shape
Retrieves the output shape(s) of a layer.
pre_eval_topk
stateful
submodules
Sequence of all sub-modules.
supports_masking
Whether this layer supports computing a mask using compute_mask.
task_name
trainable
trainable_variables
trainable_weights
List of all trainable weights tracked by this layer.
updates
variable_dtype
Alias of Layer.dtype, the dtype of the weights.
variables
Returns the list of all layer variables/weights.
weights
Returns the list of all layer variables/weights.
- DEFAULT_LOSS = 'categorical_crossentropy'#
- DEFAULT_METRICS: Union[Sequence[Union[keras.metrics.base_metric.Metric, Type[keras.metrics.base_metric.Metric]]], keras.metrics.base_metric.Metric, Type[keras.metrics.base_metric.Metric]] = [TopKMetricsAggregator()]#
- property retrieval_scorer#