Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Tensorflow.js tf.LayersModel Class .evaluate() Method

  • Last Updated : 22 Jun, 2021

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.

Hey geek! The constant emerging technologies in the world of web development always keeps the excitement for this subject through the roof. But before you tackle the big projects, we suggest you start by learning the basics. Kickstart your web development journey by learning JS concepts with our JavaScript Course. Now at it's lowest price ever!

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 inputs. 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: 2, inputShape: [30]})]
});
  
// Compiling model
modl.compile({optimizer: 'sgd', loss: 'meanAbsoluteError'});
  
// Calling evaluate() and randomNormal
// method
const output = modl.evaluate(
     tf.randomNormal([8, 30]), 
     tf.randomNormal([8, 2]), 
     {Sizeofbatch: 3}
);
  
// Printing output
output.print();

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

Tensor
    1.1059763431549072

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: 1, inputShape: [20]})]
});
  
// Compiling model
modl.compile({optimizer: 'adam', loss: 'meanSquaredError'}, 
             (metrics = ["accuracy"]));
  
// Calling evaluate() and truncatedNormal
// method
const output = modl.evaluate(
     tf.truncatedNormal([8, 20]), tf.truncatedNormal([8, 1]), 
      {Sizeofbatch: 3}, {steps: 2});
  
// Printing output
output.print();

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

Tensor
    1.2484867572784424

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




My Personal Notes arrow_drop_up
Recommended Articles
Page :