Función Tensorflow.js tf.separableConv2d()

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.

La función .separableConv2d() se usa para determinar una complicación 2D junto con filtros que son separables. Ejecuta una complicación profunda que funciona claramente en los canales perseguidos por medio de una complejidad puntual que es útil para mezclar canales. Además, especifica separabilidad dentro de [1, 2] y 3 dimensiones, absolutamente no separabilidad estructural dentro de 1 y 2 dimensiones.

Sintaxis:

tf.separableConv2d(x, depthwiseFilter, pointwiseFilter, 
        strides, pad, dilation?, dataFormat?)

Parámetros:

  • x: El tensor de entrada indicado que es de rango 3 o de rango 4 y de forma: [lote, altura, ancho, canales]. Además, en caso de que el rango sea 3, se presume el lote de tamaño 1. Puede ser del tipo tf.Tensor3D, tf.Tensor4D, TypedArray o Array.
  • depthwiseFilter: el tensor de filtro de profundidad   declarado de rango 4 y forma: [filterHeight, filterWidth, inChannels, channelMultiplier]. Sin embargo, se utiliza en la etapa inicial. Puede ser de tipo tf.Tensor4D, TypedArray o Array.
  • pointwiseFilter: el tensor de filtro puntual declarado de rango 4 y forma: [1, 1, inChannels * channelMultiplier, outChannels]. Sin embargo, se utiliza en la segunda etapa de la operación. Puede ser de tipo tf.Tensor4D, TypedArray o Array.
  • zancadas: Las zancadas indicadas de la complicación de la forma: [strideHeight, strideWidth]. En caso de que los pasos indicados sean un número singular, entonces strideHeight == strideWidth. Puede ser de tipo [número, número] o número.
  • pad: el tipo de algoritmo indicado para el relleno. Puede ser de tipo válido o igual.
    • Aquí, para ‘igual’ junto con el paso 1, la salida tendría un tamaño idéntico al de la entrada, independientemente del tamaño del filtro.
    • Para ‘válido’, la salida será más pequeña que la entrada en caso de que el tamaño del filtro sea mayor que 1*1×1.
  • dilatación: La dilatación indicada. Es opcional y es de tipo [número, número] o número.
  • dataFormat: la string electiva indicada de «NHWC» o «NCHW». Especifica la forma de datos de la entrada indicada, así como los datos de salida. El valor predeterminado es ‘NHWC’. Además, los datos aquí se guardan en el siguiente orden: [lote, alto, ancho, canales]. Es opcional y es de tipo ‘NHWC’.

Valor devuelto: Devuelve tf.Tensor3D o tf.Tensor4D.

Ejemplo 1:

Javascript

// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Defining input tensor
const x = tf.tensor4d([1, 2, 3, 4], [1, 1, 2, 2]);
  
// Defining depthwise filter tensor
const y = tf.tensor4d([1, 1, 0, 4], [1, 1, 2, 2]);
  
// Defining pointwise filter tensor
const z = tf.tensor4d([1, 1, 0, 4], [1, 1,     4, 1]);
  
// Calling separableConv2d() method
const result = tf.separableConv2d(x, y, z, 2, 'valid');
  
// Printing output
result.print();

Producción:

Tensor
     [ [ [[34],]]]

Ejemplo 2:

Javascript

// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Calling separableConv2d() method
tf.separableConv2d(
    tf.tensor4d([1.1, 2.2, 3.3, 4.4], [1, 1, 2, 2]), 
    tf.tensor4d([1.2, 1.1, 0.3, 4.5], [1, 1, 2, 2]),
    tf.tensor4d([1.4, 1.6, 0.5, 4.8], [1, 1,     4, 1]),
    1, 'same', 1, 'NHWC').print();

Producción:

Tensor
    [[[[51.6340065 ],
       [107.0520096]]]]

Referencia: https://js.tensorflow.org/api/latest/#separableConv2d

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 *