JavaScript

Tensorflow.js – tf.div()

“tf.div() in tensorflow.js is used to perform element wise division on two tensors/scalars.”

Scenario 1: Work With Scalar

Scalar will store only one value. But anyway, it returns a tensor.

Syntax

tf.div(scalar1,scalar2)

Parameters
scalar1 and scalar2 are the tensors that can take only one value as a parameter.

Return
Return quotient of two scalar values.

Example
Create two scalars and perform a division of two scalars.

<html>
<!--   CDN Link that delivers the Tensorflow.js framework -->
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs"></script>

<body>
<script>
//scalar1
let  value1 = tf.scalar(30);

//scalar2
let  value2 = tf.scalar(70);

document.write("Scalar-1: ",value1);

document.write("<br>");
document.write("<br>");

document.write("Scalar-2: ",value2);
</script>
<h3>Tensorflow.js - tf.div() </h3>

<script>
//tf.div(value1,value2)
document.write(tf.div(value1,value2));
</script>

</body>
</html>

Output

Working
30/70 = 0.4285714030265808.

Scenario 2: Work With Tensor

A tensor can store multiple values; it can be single or multi-dimensional.

Syntax

tf.div(tensor1,tensor2)

Parameters
tensor1 and tensor2 are the tensors that can take only single or multiple values as a parameter.

Return
Return quotient of two tensors concerning each element.

We must notice that the total number of elements in both the tensors must be equal.

Example 1
Create two one-dimensional tensors and return the quotient using tf.div().

<html>
<!--   CDN Link that delivers the Tensorflow.js framework -->
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs"></script>

<body>
<script>
//tensor1
let  values1 = tf.tensor1d([10,20,30,40,50]);

//tensor2
let  values2 = tf.tensor1d([1,2,3,4,5]);

document.write("Tensor-1: ",values1);

document.write("<br>");
document.write("<br>");

document.write("Tensor-2: ",values2);
</script>
<h3>Tensorflow.js - tf.div() </h3>

<script>
//tf.div(values1,values2)
document.write(tf.div(values1,values2));
</script>

</body>
</html>

Output

Working
[10/1,20/2,30/3,40/4,50/5] => Tensor [10, 10, 10, 10, 10].

Example 2
Create 2 two-dimensional tensors with 2 rows and 3 columns and apply tf.div().

<html>
<!--   CDN Link that delivers the Tensorflow.js framework -->
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs"></script>

<body>
<script>
//tensor1
let  values1 = tf.tensor2d([1,2,3,4,5,6],[2,3]);

//tensor2
let  values2 = tf.tensor2d([34,10,20,30,40,50],[2,3]);

document.write("Tensor-1: ",values1);

document.write("<br>");
document.write("<br>");

document.write("Tensor-2: ",values2);
</script>
<h3>Tensorflow.js - tf.div() </h3>

<script>
//tf.div(values1,values2)
document.write(tf.div(values1,values2));
</script>

</body>
</html>

Output

Working
[[1/34,2/10,3/20],[4/30,5/40,6/50]] => [[0.0294118, 0.2 , 0.15], [0.1333333, 0.125, 0.12]].

Scenario 3: Work With Tensor & Scalar

It can be possible to divide each element in a tensor by a scalar.

Syntax

tf.div(tensor,scalar)

Example
Create a one-dimensional tensor and a scalar and perform division using tf.div().

<html>
<!--   CDN Link that delivers the Tensorflow.js framework -->
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs"></script>

<body>
<script>
//tensor
let  values1 = tf.tensor1d([10,20,30,4,5,6]);

//scalar
let  value2 = tf.scalar(10);

document.write("Tensor: ",values1);

document.write("<br>");
document.write("<br>");

document.write("Scalar: ",value2);
</script>
<h3>Tensorflow.js - tf.div() </h3>

<script>
//tf.div(values1,value2)
document.write(tf.div(values1,value2));
</script>

</body>
</html>

Output

Working
[10/10, 20/10, 30/10, 4/10, 5/10, 6/10] =>  [1, 2, 3, 0.4, 0.5, 0.6].

Conclusion

tf.div() in tensorflow.js is used to perform division and return element-wise quotients. We discussed three scenarios to divide a tensor by a scalar.

Also, we noticed that scalar will store only one value and returns a tensor. While performing tf.div() on two tensors, ensure that the number of elements in two tensors must be the same.