Tensorflow.js is an open-source library developed by Google for running machine learning models and deep learning neural networks in the browser or node environment. It also helps the developers to develop ML models in JavaScript language and can use ML directly in the browser or in Node.js.
The Tensorflow.js tf.losses.sigmoidCrossEntropy() function calculates the sigmoid cross entropy loss between two given tensors.
Syntax:
tf.losses.sigmoidCrossEntropy( multiClassLabels, logits, weights, labelSmoothing, reduction );
Parameters:
- multiClassLabels: It is the ground truth output tensor of different shapes like num classes, batch size. It is similar in dimensions as ‘predictions‘.
- logits: It is the outputs that are being predicted.
- weights: These are those tensors whose rank is either 0 or 1, and they must be broad castable to lebels.
- labelSmoothing: If the value is greater than 0, then it means it will smooth the labels.
- reduction: It is the type of reduction to apply to loss. It must be of Reduction type.
Note: The weights, labelSmoothing and reduction are optional parameters.
Return value: It returns tf.Tensor.
Example 1:
Javascript
// Importing the tensorflow.Js library import * as tf from "@tensorflow/tfjs" // Initialising tensor1 as geek1. let geek1 = tf.tensor3d([[[1], [2]], [[3], [4]]]); // Initialising tensor2 as geek2. let geek2 = tf.tensor3d([7, 11, 13, 4], [2, 2, 1]) // Computing sigmoid Cross Entropy loss // between geek1 and geek2 // using .sigmoidCrossEntropy) function. geek = tf.losses.sigmoidCrossEntropy(geek1, geek2) geek.print(); |
Output:
Tensor -12.245229721069336
Example 2:
Javascript
// Importing the tensorflow.Js library import * as tf from "@tensorflow/tfjs" // Computing sigmoid Cross Entropy loss // between two 4D tensors and // printing the result. tf.losses.sigmoidCrossEntropy( tf.tensor4d([[[[9], [8]], [[7], [5]]]]), tf.tensor4d([[[[1], [2]], [[3], [4]]]]) ).print(); |
Output:
Tensor -13.873268127441406
Reference: https://js.tensorflow.org/api/latest/#losses.sigmoidCrossEntropy