Tensorflow.js tf.data.Dataset class.mapAsync() Método

Tensorflow.js es una biblioteca de código abierto desarrollada por Google para ejecutar modelos de aprendizaje automático, así como redes neuronales de aprendizaje profundo en el entorno del navegador o del Node.

El método .mapAsync() se usa para mapear el conjunto de datos indicado sobre una conversión asíncrona de uno a uno.

Sintaxis:

mapAsync(transform)

Parámetros:

  • transform: es la función indicada que mapea un conjunto de datos de elementos en una Promesa para un conjunto de datos convertido de elementos. Además, dicha conversión es responsable de descartar algunos tensores intermediarios como en el método tf.tidy() donde su cálculo está envuelto y esto no se puede programar aquí como lo es en el caso map() de tipo síncrono. Puede ser de tipo (valor: T) => Promise(tf.void, number, string, TypedArray, tf.Tensor, tf.Tensor[], {[key: string]:tf.Tensor, number, or string} ).

Valor devuelto: Devuelve tf.data.Dataset.

Ejemplo 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());

Producción:

32, 24, 26

Ejemplo 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());

Producción:

20.25, 72.25

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

Publicación traducida automáticamente

Artículo escrito por nidhi1352singh y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *