¿Quizás elegir una celda LSTM es una mejor idea?
Lea más aquí: Redes neuronales recurrentes
Lea también esto para una gran introducción a LSTM:
- ¿Cuál es la diferencia entre el análisis factorial y las técnicas de selección de características, como el análisis de componentes principales y la asignación de dirichlet latente?
- ¿Cómo funciona el mecanismo de atención de múltiples cabezas en el aprendizaje profundo?
- ¿Cómo es el nano grado de aprendizaje automático de Udacity en comparación con la especialización de aprendizaje automático de Coursera, cuál es mejor?
- ¿Qué es una función de costo?
- ¿Qué está haciendo Wavii con el aprendizaje automático para redefinir cómo se realiza la búsqueda en la web?
Comprender las redes LSTM
lstm = rnn_cell.BasicLSTMCell (lstm_size)
# Estado inicial de la memoria LSTM.
estado = tf.zeros ([lote_tamaño, lstm.state_size])
probabilidades = []
pérdida = 0.0
para current_batch_of_words en words_in_dataset:
# El valor del estado se actualiza después de procesar cada lote de palabras.
salida, estado = lstm (current_batch_of_words, estado)
# La salida LSTM se puede usar para hacer predicciones de la siguiente palabra
logits = tf.matmul (salida, softmax_w) + softmax_b
probabilidades.append (tf.nn.softmax (logits))
pérdida + = pérdida_función (probabilidades, palabras_objetivas)