ComenzarEmpieza gratis

Preprocesamiento con Keras

El segundo módulo más importante de Keras es keras.preprocessing. Verás cómo utilizar los módulos y funciones más importantes para preparar los datos sin procesar y darles la forma correcta para su introducción. Keras proporciona funcionalidades que sustituyen el enfoque del diccionario que aprendiste anteriormente.

Utilizarás el módulo keras.preprocessing.text.Tokenizer para crear un diccionario de palabras utilizando el método .fit_on_texts() y cambiarás los textos a identificadores numéricos que representan el índice de cada palabra en el diccionario utilizando el método .texts_to_sequences().

A continuación, utiliza la función « .pad_sequences() » (Reducir secuencias de caracteres) de keras.preprocessing.sequence para que todas las secuencias tengan el mismo tamaño (necesario para el modelo) añadiendo ceros en los textos pequeños y recortando los grandes.

Este ejercicio forma parte del curso

Redes neuronales recurrentes (RNN) para el modelado del lenguaje con Keras

Ver curso

Instrucciones del ejercicio

  • Importa Tokenizer y pad_sequences desde los módulos pertinentes.
  • Ajusta el objeto « tokenizer » a los datos de muestra almacenados en texts.
  • Transforma los textos en secuencias de índices numéricos utilizando el método .texts_to_sequences().
  • Fija el tamaño de los textos rellenándolos.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Import relevant classes/functions
from tensorflow.keras.preprocessing.text import ____
from tensorflow.keras.preprocessing.sequence import ____

# Build the dictionary of indexes
tokenizer = Tokenizer()
tokenizer.fit_on_texts(____)

# Change texts into sequence of indexes
texts_numeric = tokenizer.____(texts)
print("Number of words in the sample texts: ({0}, {1})".format(len(texts_numeric[0]), len(texts_numeric[1])))

# Pad the sequences
texts_pad = ____(texts_numeric, 60)
print("Now the texts have fixed length: 60. Let's see the first one: \n{0}".format(texts_pad[0]))
Editar y ejecutar código