Python Tensorflow – Función tf.keras.layers.Conv1DTranspose()

La función tf.keras.layers.Conv1DTranspose() se usa para aplicar la operación de convolución 1D transpuesta, también conocida como deconvolución, en los datos.

Sintaxis: tf.keras.layers.Conv1DTranspose( filtros, kernel_size, strides=1, padding=’valid’, output_padding=Ninguno, data_format=Ninguno, dilation_rate=1, activación=Ninguno, use_bias=True, kernel_initializer=’glorot_uniform’, bias_initializer=’ceros’, kernel_regularizer=Ninguno, bias_regularizer=Ninguno, activity_regularizer=Ninguno, kernel_constraint=Ninguno, bias_constraint=Ninguno, **kwargs)

Forma de entrada: un tensor 3D de forma: (batch_size, pasos, canales)

Forma de salida: tensor de forma A3D: (batch_size, new_steps, filtros)

Parámetros:

  • filtros (Entero): La dimensionalidad del espacio de salida (es decir, el número de filtros de salida en la convolución).
  • kernel_size (Integer): la longitud del entero de la ventana de convolución 1D.
  • zancadas: La zancada de la convolución a lo largo de la dimensión del tiempo.
  • relleno: El modo de relleno.
  • relleno_salida:
  • data_format: El formato de datos. Esto especifica el orden en el que se ordenan las dimensiones en las entradas. channel_last es el valor predeterminado.
  • dilation_rate: en cada dimensión, la tasa de dilatación que se utilizará para la convolución dilatada. Debería ser un número entero.
  • activación: La función de activación de la capa.
  • use_bias (booleano): si la capa tiene un vector de sesgo o no. Verdadero es el valor predeterminado.
  • kernel_initializer: El inicializador de la array de pesos del kernel convolucional.
  • bias_initializer: el inicializador del vector de polarización.
  • kernel_regularizer: la función de regularización aplicada a la array de pesos del kernel.
  • bias_regularizer: la función de regularizador aplicada al vector de sesgo.
  • activity_regularizer: La función de regularizador aplicada a la activación.
  • kernel_constraint: La restricción para los pesos del kernel convolucional.
  • bias_constraint: La restricción para el vector de sesgo.

Devuelve: un tensor 3D que representa la activación (conv1dtranspose (entradas, núcleo) + sesgo).

Ejemplo 1:

Python3

import tensorflow as tf
  
tensor_shape=(4, 28, 1)
input_shape=tensor_shape[1:]
X=tf.random.normal(tensor_shape)
  
def model(input_shape):
    X_input=tf.keras.layers.Input(shape=input_shape)
    X_output=tf.keras.layers.Conv1DTranspose(filters=8, 
                                             kernel_size=4,
                                             strides=2)(X_input)
    model=tf.keras.models.Model(inputs=X_input, 
                                outputs=X_output)
    return model
    
model=model(input_shape)
  
Y=model.predict(X, steps=2)
print(Y.shape)

Producción: 

(4, 58, 8)

Ejemplo 2:

Python3

import tensorflow as tf
  
tensor_shape = (4, 4, 1)
input_shape = tensor_shape[1:]
X = tf.random.normal(tensor_shape)
  
  
def model(input_shape):
    X_input = tf.keras.layers.Input(shape=input_shape)
    X_output = tf.keras.layers.Conv1DTranspose(
        filters=3, kernel_size=3, strides=1)(X_input)
    model = tf.keras.models.Model(inputs=X_input, outputs=X_output)
    return model
  
  
model = model(input_shape)
  
Y = model.predict(X, steps=2)
print(Y)

Producción:

[[[-0.30124253 -0.36105427 -0.2042067 ]
 [ 0.02215503 -0.02281483  0.06209912]
 [ 0.00216722 -0.06402665 -0.45107672]
 [ 0.61782545  0.6981941   0.5305761 ]
 [ 0.38394764  0.49401727 -0.32046565]
 [-0.72445303 -0.70179087  0.51991314]]
[[-0.21620852 -0.25913674 -0.14656372]
 [-0.42101222 -0.5400373  -0.2516055 ]
 [ 1.1399035   1.2468109   0.51620144]
 [ 0.45842776  0.60374933 -0.43827266]
 [-0.996245   -0.97118413  0.717214  ]
 [ 0.03621851  0.03508553 -0.02599269]]
[[-0.23306094 -0.27933523 -0.15798767]
 [ 0.22609143  0.23278703  0.18968783]
 [ 0.2541324   0.2872892  -0.21050403]
 [ 0.47528732  0.6270335   0.680698  ]
 [ 0.05677184  0.1858277  -0.08888393]
 [-0.7763872  -0.75210047  0.5571844 ]]
[[ 1.2402442   1.4864949   0.8407385 ]
 [-0.580338   -0.49230838 -0.5872358 ]
 [-1.7384369  -1.8894652   0.76116455]
 [ 0.8071178   0.74401593 -0.37187982]
 [ 0.41134852  0.42184594 -0.30380705]
 [-0.13865426 -0.13431692  0.09950703]]]

Publicación traducida automáticamente

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