RNN-Keras

Neuronal-Networking

Nota: (Creación con Frameworks-Kera de una Red-Neuronal-Recurrente RNN el cual lo generaremos con la herramienta el la nube como Google-Colaboratory).

 

Network-Neuronal-Recurrente-RNN (Keras)

-. Recapitulemos sobre las Red-Neuronal-Recurrente RNN donde las conexiones entre nodos pueden crear un ciclo, que permite que la salida de algunos nodos afecte la entrada posterior a los mismos nodos. Tiene un comportamiento dinámico temporal. Las RNN pueden usar su estado interno llamaremos memoria para procesar secuencias de entradas procedente de la salida).

-. En Deep-Learning tenemos diferentes Frameworks, unos de estos quizás el mas recomendable es Api-Keras dentro del mundo de las Red-Neuronal-Artificial; Biblioteca de código abierto y trabaja con TensorFlow, por esta razón es ideal para emplearla en el análisis, creación de Redes-Neuronales-Profundas.

-. En esta Red-Neuronal-Recurrente RNN donde usaremos el tipo de RNNLSTM esta se define por ser capaz de aprender dependencias en períodos prolongados, recuerda hechos durante un largo intervalo de tiempo. Cada módulo LSTM puede tener tres puertas denominadas puerta de olvido, puerta de entrada, puerta de salida.

 

Descripción Red-Neuronal-Artificial-Recurrente-(RNN-LSTM)

-. Pasemos a la generación de la Red-Neural-Recurrente-LSTM para ello usaremos la API funcional de Keras, es del tipo memoria a corto plazo (LSTM) para la clasificación de secuencias. El modelo tiene como entrada 100 pasos de tiempo, una capa oculta tipo LSTM la cual extrae las características de la secuencia, una capa completamente conectada (dense) y por ultimo una capa de salidad.

Nota: API funcional en Keras es una forma alternativa de crear modelos que ofrece mucha más flexibilidad

definir modelos simples de perceptrón multicapa, red neuronal convolucional y red neuronal recurrente. Los modelos se definen creando instancias de capas y conectándolas directamente entre sí, luego definiendo un modelo que especifica las capas para que actúen como entrada y salida del modelo.

Pongamos un ejemplo:

  • In: from keras.layers import Input
  • In: from keras.layers import Dense
  • In: visible = Input(shape=(2,))
  • In: hidden = Dense(2)(visible)

Nota: Convertir el modelo de Keras a formato de puntos y lo guarda en un archivo.

Utilidades de trazado de modelos:

  • In: from keras.utils import plot_model

Agrupa capas, funciones de entrenamiento e inferencia (deducir)

  • In: from keras.models import Model

Capa punto de entrada a la red:

  • In: from keras.layers import Input

Capa densamente conectada:

  • In: from keras.layers import Dense

Creamos la RedRecurrenteLSTM:

  • In: from keras.layers import LSTM
  • In: visible = Input(shape=(100,1))
  • In: hidden1 = LSTM(10)(visible)
  • In: hidden2 = Dense(10, activation=‘relu’)(hidden1)
  • In: output = Dense(1, activation=‘sigmoid’)(hidden2)
  • In: model = Model(inputs=visible, outputs=output)

Imprir un resumen de capas de la red:

  • In: model.summary()

Utilidades de trazado de modelos:

  • In: plot_model(model, to_file=Red_Neural_Recurrente_LSTM .png’)

Nota: con estos tenemos un archivo Red_Neural_Recurrente_LSTM .png

 

Recopilando:

En esta implementación de Red-Neural-Recurrente-LSTM con keras, es básica he utilizado API funcional en Keras es una forma alternativa de crear modelos que ofrece mucho más simples y nos sirve de introducción a la Red- Recurrente, el próximo Post dedicado a las Red-Neural-Recurrente un poco mas complejas.

 

  • Referencias: (Entorno-Moreluz)
  • Referencias: (Keras)
  • Referencias: (unipython)