Ver fuente en GitHub

LSTM convolucional.

Hereda de: RNN, Layer, Module

Ver alias

Compat alias para la migración

Ver Guía de migración para más detalles.

tf.compat.v1.keras.layers.ConvLSTM2D

tf.keras.layers.ConvLSTM2D(
    filters, kernel_size, strides=(1,1), padding='valid',
    data_format=None, dilation_rate=(1,1), activation='tanh',
    recurrent_activation='hard_sigmoid', use_bias=True,
    kernel_initializer='glorot_uniform',
    recurrent_initializer='orthogonal',
    bias_initializer='zeros', unit_forget_bias=True,
    kernel_regularizer=None, recurrent_regularizer=None, bias_regularizer=None,
    activity_regularizer=None, kernel_constraint=None, recurrent_constraint=None,
    bias_constraint=None, return_sequences=False, return_state=False,
    go_backwards=False, stateful=False, dropout=0.0, recurrent_dropout=0.0,**kwargs
)

Es similar a una capa LSTM, pero las transformaciones de entrada y las transformaciones recurrentes son convolucionales.

Argumentos
filters Entero, la dimensionalidad del espacio de salida (es decir, el número de filtros de salida en la convolución).
kernel_size Un número entero o tupla / lista de n números enteros, que especifica las dimensiones de la ventana de convolución.
strides Un número entero o tupla / lista de n números enteros, que especifica los pasos de la convolución. ¡Especificar cualquier valor de zancada! = 1 es incompatible con especificar cualquier dilation_rate valor! = 1.
padding Uno de "valid" o "same" (no distingue entre mayúsculas y minúsculas). "valid" significa que no hay relleno. "same" da como resultado un relleno uniforme hacia la izquierda / derecha o hacia arriba / abajo de la entrada, de modo que la salida tiene la misma dimensión de altura / ancho que la entrada.
data_format A string, uno de channels_last (predeterminado) o channels_first. El orden de las dimensiones en las entradas. channels_last corresponde a entradas con forma (batch, time, ..., channels) tiempo channels_first corresponde a entradas con forma (batch, time, channels, ...). Por defecto es image_data_format valor encontrado en su archivo de configuración de Keras en ~/.keras/keras.json. Si nunca lo configura, será “channels_last”.
dilation_rate Un número entero o tupla / lista de n números enteros, que especifica la tasa de dilatación que se utilizará para la convolución dilatada. Actualmente, especificando cualquier dilation_rate valor! = 1 es incompatible con especificar cualquier strides valor! = 1.
activation Función de activación a utilizar. Por defecto, se aplica la función de activación de la tangente hiperbólica (tanh(x)).
recurrent_activation Función de activación a utilizar para el paso recurrente.
use_bias Booleano, si la capa utiliza un vector de sesgo.
kernel_initializer Inicializador para el kernel matriz de ponderaciones, utilizada para la transformación lineal de las entradas.
recurrent_initializer Inicializador para el recurrent_kernel matriz de ponderaciones, utilizada para la transformación lineal del estado recurrente.
bias_initializer Inicializador para el vector de polarización.
unit_forget_bias Booleano. Si es verdadero, agregue 1 al sesgo de la puerta de olvido en la inicialización. Usar en combinación con bias_initializer="zeros". Esto se recomienda en Jozefowicz et al., 2015
kernel_regularizer Función de regularizador aplicada al kernel matriz de pesos.
recurrent_regularizer Función de regularizador aplicada al recurrent_kernel matriz de pesos.
bias_regularizer Función de regularizador aplicada al vector de sesgo.
activity_regularizer Se aplica la función de regularizador a.
kernel_constraint Función de restricción aplicada a la kernel matriz de pesos.
recurrent_constraint Función de restricción aplicada a la recurrent_kernel matriz de pesos.
bias_constraint Función de restricción aplicada al vector de sesgo.
return_sequences Booleano. Ya sea para devolver la última salida en la secuencia de salida o la secuencia completa. (predeterminado falso)
return_state Booleano Si se debe devolver el último estado además de la salida. (predeterminado falso)
go_backwards Booleano (por defecto Falso). Si es Verdadero, procese la secuencia de entrada al revés.
stateful Booleano (por defecto Falso). Si es Verdadero, el último estado de cada muestra en el índice i en un lote se utilizará como estado inicial para la muestra del índice i en el siguiente lote.
dropout Flotar entre 0 y 1. Fracción de las unidades a eliminar para la transformación lineal de las entradas.
recurrent_dropout Flotar entre 0 y 1. Fracción de las unidades a eliminar para la transformación lineal del estado recurrente.

Argumentos de llamada:

  • inputs: Un tensor 5D.
  • mask: Tensor binario de forma (samples, timesteps) que indica si se debe enmascarar un intervalo de tiempo determinado.
  • training: Python booleano que indica si la capa debe comportarse en modo de entrenamiento o en modo de inferencia. Este argumento se pasa a la celda al llamarlo. Esto solo es relevante si dropout o recurrent_dropout se establecen.
  • initial_state: Lista de tensores de estado inicial que se pasarán a la primera llamada de la celda.

Forma de entrada:

  • Si data_format = ‘channels_first’ tensor 5D con forma: (samples, time, channels, rows, cols)
  • Si data_format = ‘channels_last’ tensor 5D con forma: (samples, time, rows, cols, channels)

Forma de salida:

  • Si return_state: una lista de tensores. El primer tensor es la salida. Los tensores restantes son los últimos estados, cada tensor 4D con forma: (samples, filters, new_rows, new_cols) if data_format = ‘channels_first’ o tensor 4D con forma: (samples, new_rows, new_cols, filters) si data_format = ‘channels_last’. rows y cols los valores pueden haber cambiado debido al relleno.
  • Si return_sequences: Tensor 5D con forma: (samples, timesteps, filters, new_rows, new_cols) if data_format = ‘channels_first’ o tensor 5D con forma: (samples, timesteps, new_rows, new_cols, filters) si data_format = ‘channels_last’.
  • De lo contrario, tensor 4D con forma: (samples, filters, new_rows, new_cols) if data_format = ‘channels_first’ o tensor 4D con forma: (samples, new_rows, new_cols, filters) si data_format = ‘channels_last’.
Eleva
ValueError en caso de argumentos de constructor no válidos.

Referencias:

  • Shi et al., 2015 (la implementación actual no incluye el circuito de retroalimentación en la salida de las celdas).
Atributos
activation
bias_constraint
bias_initializer
bias_regularizer
data_format
dilation_rate
dropout
filters
kernel_constraint
kernel_initializer
kernel_regularizer
kernel_size
padding
recurrent_activation
recurrent_constraint
recurrent_dropout
recurrent_initializer
recurrent_regularizer
states
strides
unit_forget_bias
use_bias

Métodos

reset_states

Ver fuente

reset_states(
    states=None)

Restablezca los estados registrados para la capa RNN con estado.

Solo se puede usar cuando la capa RNN se construye con stateful = True. Args: states: matrices Numpy que contienen el valor para el estado inicial, que se alimentará a la celda en el primer paso de tiempo. Cuando el valor es Ninguno, cero lleno numpy array se creará en función del tamaño del estado de la celda.

Eleva
AttributeError Cuando la capa RNN no tiene estado.
ValueError Cuando se desconoce el tamaño del lote de la capa RNN.
ValueError Cuando la entrada numpy array no es compatible con el estado de la capa RNN, ya sea por tamaño o por tipo.