Función Tensorflow.js tf.layers.averagePooling3d()

Tensorflow.js es un conjunto de herramientas de código abierto desarrollado por Google para ejecutar modelos de aprendizaje automático y redes neuronales de aprendizaje profundo en el navegador o en la plataforma del Node. También permite a los desarrolladores crear modelos de aprendizaje automático en JavaScript y utilizarlos directamente en el navegador o con Node.js.

La función tf.layers.averagePooling3d() se utiliza para aplicar la operación de agrupación promedio para datos 3D. Si su campo dataFormat se establece en CHANNEL_LAST, toma el tensor como entrada con forma 5d [tamaño de lote, profundidades, filas, columnas, canales] y genera el tensor con forma de 5d: [tamaño de lote, profundidades agrupadas, filas agrupadas, columnas agrupadas, canales]. Su archivo de formato de datos se establece en CHANNEL_FIRST, toma el tensor como entrada con forma 4d: [tamaño de lote, canales, profundidades, filas, columnas] y genera el tensor con forma: [tamaño de lote, canales, profundidades agrupadas, filas agrupadas, columnas agrupadas].

Sintaxis: 

tf.layers.averagePooling3d( args )

Parámetros:

  • args: Es un objeto con las siguientes propiedades:
    • poolSize: se utiliza para factores de reducción de escala en cada dimensión, es decir, [profundidad, altura, ancho]. Es un número entero o se espera una array de tres números enteros. 
    • zancadas: en cada dimensión de la ventana de agrupación, el tamaño de la zancada. Es un número entero o se requiere una array de tres números enteros.
    • relleno: el tipo de relleno que se utilizará para la capa de agrupación.
    • dataFormat: el formato de datos que se utilizará para la capa de agrupación
    • inputShape: si se especifica, se utiliza para crear la capa de entrada que se inserta antes de esta capa.
    • batchInputShape: si se especifica, se utiliza para crear la capa de entrada que se inserta antes de esta capa.
    • batchSize: se utiliza para crear batchInputShape con la ayuda de inputShape.
    • dtype: Es el tipo de datos para estas capas. Estos parámetros se aplican exclusivamente a las capas de entrada. 
    • nombre: Es de tipo string. Es el nombre de estas capas. 
    • entrenable: si se establece en verdadero, solo los pesos de esta capa cambiarán por ajuste. 
    • pesos: Los valores de peso iniciales de la capa. 

Devoluciones: Devuelve AveragePooling3D

Ejemplo 1:  

Javascript

import * as tf from "@tensorflow.js/tfjs"
const model = tf.sequential();
  
// First layer must have a defined input shape
model.add(tf.layers.averagePooling3d({
    poolSize: 4, 
    strides: 5, 
    padding: 'valid',
    inputShape: [4, 3, 5, 2], 
    batchSize: 2, 
    dataFormat: 'channelsFirst'
}));
  
// Afterwards, TF.js does automatic shape inference
model.add(tf.layers.dense({ units: 5 }));
  
// Inspect the inferred shape of the model's output
console.log(JSON.stringify(model.outputs[0].shape));

Producción:

[2,4,0,1,5]

Ejemplo 2:

Javascript

import * as tf from "@tensorflow/tfjs";
const Input = tf.input({ shape: [2, 2, 2, 3] });
const averagePooling3dLayer =
    tf.layers.averagePooling3d({ 
        poolSize: 3, 
        strides: 2, 
        padding: 'same', 
        dataFormat: 'channelsLast', 
        bactchSize: 3 
    });
  
const Output = averagePooling3dLayer.apply(Input);
const model = tf.model({ inputs: Input, outputs: Output });
const Data = tf.tensor5d([8, 2, 2, 6, 8, 9, 9, 4, 8, 9, 
    3, 8, 3, 8, 9, 4, 5, 2, 5, 9, 6, 8, 9, 3],
    [1, 2, 2, 2, 3]
);
  
model.predict(Data).print();

Producción:

Tensor
     [ [ [ [[6.5, 6, 5.875],]]]]

Referencia: https://js.tensorflow.org/api/latest/#layers.averagePooling3d

Publicación traducida automáticamente

Artículo escrito por satyam00so 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 *