def _prepare_dot_product_loss(self, name: Text, scale_loss: bool, prefix: Text = "loss") -> None: self._tf_layers[f"{prefix}.{name}"] = layers.DotProductLoss( self.config[NUM_NEG], self.config[LOSS_TYPE], self.config[MAX_POS_SIM], self.config[MAX_NEG_SIM], self.config[USE_MAX_NEG_SIM], self.config[NEGATIVE_MARGIN_SCALE], scale_loss, # set to 1 to get deterministic behaviour parallel_iterations=1 if self.random_seed is not None else 1000, )
def _prepare_dot_product_loss( self, name: Text, scale_loss: bool, prefix: Text = "loss" ) -> None: self._tf_layers[f"{prefix}.{name}"] = layers.DotProductLoss( self.config[NUM_NEG], self.config[LOSS_TYPE], self.config[MAX_POS_SIM], self.config[MAX_NEG_SIM], self.config[USE_MAX_NEG_SIM], self.config[NEGATIVE_MARGIN_SCALE], scale_loss, similarity_type=self.config[SIMILARITY_TYPE], constrain_similarities=self.config[CONSTRAIN_SIMILARITIES], model_confidence=self.config[MODEL_CONFIDENCE], )