Skip to content

Latest commit

 

History

History
222 lines (167 loc) · 4.13 KB

SimSiamLoss.md

File metadata and controls

222 lines (167 loc) · 4.13 KB

TFSimilarity.losses.SimSiamLoss

SimSiam Loss

TFSimilarity.losses.SimSiamLoss(
    projection_type: str = negative_cosine_sim,
    margin: float = 0.001,
    reduction: Callable = tf.keras.losses.Reduction.AUTO,
    name: Optional[str] = None,
    **kwargs
)

Introduced in: Exploring Simple Siamese Representation Learning

Args

projection_type Projects results into a metric space to allow KNN search. negative_cosine_sim: -1.0 * cosine similarity. cosine_distance: 1.0 - cosine similarity. angular_distance: 1.0 - angular similarity.
margin Offset to prevent a distance of 0.
reduction (Optional) Type of tf.keras.losses.Reduction to apply to loss. Default value is AUTO.
name (Optional) name for the loss.
**kwargs The keyword arguments that are passed on to fn.

Methods

from_config

<b>python @classmethod</b>

from_config(
    config
)

Instantiates a Loss from its config (output of get_config()).

Args
config Output of get_config().
Returns
A Loss instance.

get_config

View source

get_config() -> Dict[str, Any]

Returns the config dictionary for a Loss instance.

__call__

__call__(
    y_true, y_pred, sample_weight=None
)

Invokes the Loss instance.

Args
y_true Ground truth values. shape = [batch_size, d0, .. dN], except sparse loss functions such as sparse categorical crossentropy where shape = [batch_size, d0, .. dN-1]
y_pred The predicted values. shape = [batch_size, d0, .. dN]
sample_weight Optional sample_weight acts as a coefficient for the loss. If a scalar is provided, then the loss is simply scaled by the given value. If sample_weight is a tensor of size [batch_size], then the total loss for each sample of the batch is rescaled by the corresponding element in the sample_weight vector. If the shape of sample_weight is [batch_size, d0, .. dN-1] (or can be broadcasted to this shape), then each loss element of y_pred is scaled by the corresponding value of sample_weight. (Note ondN-1: all loss functions reduce by 1 dimension, usually axis=-1.)
Returns
Weighted loss float Tensor. If reduction is NONE, this has shape [batch_size, d0, .. dN-1]; otherwise, it is scalar. (Note dN-1 because all loss functions reduce by 1 dimension, usually axis=-1.)
Raises
ValueError If the shape of sample_weight is invalid.