Open In App

Tensorflow.js tf.data.Dataset class.mapAsync() Method

Last Updated : 22 Apr, 2022
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 .mapAsync() method is used to map the stated dataset over an asynchronous one to one conversion.

Syntax:

mapAsync(transform)

Parameters:

  • transform: It is the stated function that maps a dataset of items into a Promise for a converted dataset of items. Moreover, such conversion is accountable for discarding some intermediary tensors as in  tf.tidy() method where its calculation is wrapped and this can not be programmed here as it is in the synchronous type map() case. It can be of type (value: T) => Promise(tf.void, number, string, TypedArray, tf.Tensor, tf.Tensor[], {[key: string]:tf.Tensor, number, or string}).

Return Value: It returns tf.data.Dataset.

Example 1:  

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Defining dataset formed of an array of
// numbers and calling mapAsync() method
const res = tf.data.array([16, 12, 13]).mapAsync(
    y => new Promise(function(rsol){
        setTimeout(() => {
            rsol(y + y);
        }, Math.sqrt()*400 + 300);
}));
  
// Calling toArray() method and
// Printing output
console.log(await res.toArray());


Output:

32, 24, 26

Example 2:

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Calling mapAsync() method and
// Printing output
console.log(await tf.data.array([4.5, 8.5])
    .mapAsync(y => new Promise(function(tm) {
        setTimeout(() => {
            tm(y * y);
        })
    })).toArray());


Output:

20.25, 72.25

Reference: https://js.tensorflow.org/api/latest/#tf.data.Dataset.mapAsync



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads