Preparación del texto de salida
En este ejercicio, prepararás los textos de salida que se utilizarán en el modelo de traducción. Además de transformar el texto en secuencias de índices, también debes codificar cada índice con codificación one-hot.
Los textos en inglés se cargan en la variable en_sentences, el tokenizador ajustado en la variable output_tokenizer y el tamaño del vocabulario en inglés en en_vocab_size.
Además, ya se ha creado una función para realizar los primeros pasos de la transformación del idioma de salida (transformación de textos en secuencias de índices). La función se carga en el entorno como « transform_text_to_sequences() » y tiene dos parámetros: « sentences », que espera una lista de frases en inglés, y « tokenizer », que espera un objeto « Tokenizer » ajustado del módulo « keras.preprocessing.text ».
numpy se carga como np.
Este ejercicio forma parte del curso
Redes neuronales recurrentes (RNN) para el modelado del lenguaje con Keras
Instrucciones del ejercicio
- Pasa las variables «
en_sentences» y «output_tokenizer» a la función «transform_text_to_sequences()» para inicializar la variable «Y». - Utiliza la función «
to_categorical()» para codificar las frases con «one-hot». Utiliza la variable «en_vocab_size» como número de clases. - Transforma la lista temporal en un arreglo numpy y remodela para que tenga una forma igual a
(num_sentences, sentences_len, en_vocab_size). - Imprime el texto sin procesar y el transformado.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Initialize the variable
Y = transform_text_to_sequences(____, ____)
# Temporary list
ylist = list()
for sequence in Y:
# One-hot encode sentence and append to list
ylist.append(____(sequence, num_classes=____))
# Update the variable
Y = np.array(ylist).reshape(____, Y.shape[1], en_vocab_size)
# Print the raw sentence and its transformed version
print("Raw sentence: {0}\nTransformed: {1}".format(____, Y[0]))