Skip to content
Related Articles

Related Articles

Tensorflow.js tf.valueAndGrad() Function

View Discussion
Improve Article
Save Article
  • Last Updated : 21 May, 2021

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.

The tf.valueAndGrad() function is used to return the gradient of the specified function f(x) with respect to x along with the value of f().

Syntax:

tf.valueAndGrad (f)

Parameters: This function accepts a parameter which is illustrated below:

  • f: The specified function f(x) for which gradient is being calculated.

Return Value: It returns the gradient of the specified function f(x) with respect to x along with the value of f().

Example 1:

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Initializing a function f(x) = x^2
const f = x => x.square();
  
// Calling the .valueAndGrad() function over
// the above function as its parameter which
// calculates f'(x) = 2x
const g = tf.valueAndGrad(f);
  
// Initializing a Tensor of values at which
// value of gradient is calculated
const x = tf.tensor1d([0, 1, 2, 3]);
  
// Returning the value of f() and 
// gradient of f(x)
const {value, grad} = g(x);
  
// Getting the value of f()
console.log('value');
value.print();
  
// Getting the gradient of f(x) at 
// the above tensor values
console.log('grad');
grad.print();


Output:

value
Tensor
   [0, 1, 4, 9]
grad
Tensor
   [0, 2, 4, 6]

Example 2:

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Using a function f(x) = x^3 as the parameter
// for the .valueAndGrad() function which
// calculates f'(x) = 3x^2
const g = tf.valueAndGrad(x => x.pow(tf.scalar(3, 'int32')));
  
// Using a Tensor of values at which
// value of gradient is calculated 
const {value, grad} = g(tf.tensor1d([-1, 0, 0.3, 4]));
  
// Getting the value of f()
console.log('value');
value.print();
  
// Getting the gradient of f(x)
console.log('grad');
grad.print();


Output:

value
Tensor
   [-1, 0, 0.027, 64]
grad
Tensor
   [3, 0, 0.27, 48]

Reference:https://js.tensorflow.org/api/latest/#valueAndGrad


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!