Open In App

Tensorflow.js tf.Sequential class .evaluate() Method

Improve
Improve
Like Article
Like
Save
Share
Report

Tensorflow.js is an open-source library that is developed by Google for running machine learning models as well as deep learning neural networks in the browser or node environment.

The .evaluate() function is used to find the measure of loss and the values of metrics in favor of the prototype in test method.

Note:

  • Here, the Loss value as well as metrics are determined at the time of compilation, that is required to take place before calling to evaluate() method.
  • Here, the enumeration is made in groups.

Syntax:  

evaluate(x, y, args?)

 

Parameters:  

  • x: It is the stated tf.Tensor of test material, or else an array of tf.Tensors in case the prototype has various inputs. It can be of type tf.Tensor, or tf.Tensor[].
  • y: It is the stated tf.Tensor of target material, or else an array of tf.Tensors in case the prototype has various outputs. It can be of type tf.Tensor, or tf.Tensor[].
  • args: It is stated ModelEvaluateArgs, that holds elective fields. It is an object.
  • batchSize: It is the stated batch size and in case is undefined, then the by default value is 32. It is of type number.
  • verbose: It is the stated verbosity mode. It is of type ModelLoggingVerbosity.
  • sampleWeight: It is the stated tensor of weights in order to weight the involvement of various instances to the loss as well as metrics. It is of type Tf.tensor.
  • steps: It is the total number of steps i.e. groups of instances, prior to the declaration of estimation round being terminated. It is neglected with the by default value of unspecified. It is of type number.

Return Value: It returns tf.Scalar or tf.Scalar[].

Example 1: Using optimizer as “sgd” and loss as “meanAbsoluteError”.

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Defining model
const modl = tf.sequential({
   layers: [tf.layers.dense({units: 3, inputShape: [40]})]
});
  
// Compiling model
modl.compile({optimizer: 'sgd', loss: 'meanAbsoluteError'});
  
// Calling evaluate() and randomNormal
// method
const output = modl.evaluate(
    tf.randomNormal([5, 40]), 
    tf.randomNormal([5, 3]), 
    {Sizeofbatch: 3}
);
  
// Printing output
output.print();


Output:

Tensor
    1.554270625114441

Here, randomNormal() method is used as tensor input.

Example 2: Using optimizer as “adam”, loss as “meanSquaredError” and “accuracy” as metrics.

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Defining model
const modl = tf.sequential({
   layers: [tf.layers.dense({units: 2, inputShape: [30]})]
});
  
// Compiling model
modl.compile({optimizer: 'adam', loss: 'meanSquaredError'}, 
             (metrics = ["accuracy"]));
  
// Calling evaluate() and truncatedNormal
// method
const output = modl.evaluate(
     tf.truncatedNormal([6, 30]), tf.truncatedNormal([6, 2]), 
      {Sizeofbatch: 2}, {steps: 2});
  
// Printing output
output.print();


Output:

Tensor
    2.7340292930603027

Here, truncatedNormal() method is used as tensor input and step parameter is also included.

Reference: https://js.tensorflow.org/api/latest/#tf.Sequential.evaluate



Last Updated : 30 Jun, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads