Open In App

Tensorflow.js tf.data.Dataset class.mapAsync() 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 .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



Last Updated : 22 Apr, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads