ComenzarEmpieza gratis

2.ª parte: Modelo de inversión de texto - Codificador

Ahora implementarás el resto del codificador del modelo de inversión de texto. El codificador se alimenta de los vectores «one-hot» producidos por la función « words2onehot() » que implementaste anteriormente.

Aquí implementarás la función « encoder() ». La función « encoder() » toma un conjunto de vectores «one-hot» y los convierte en una lista de identificadores de palabras.

Para este ejercicio, se han proporcionado la función « words2onehot() » y el diccionario « word2index » (que contiene las palabras « We », « like » y « dogs »).

Este ejercicio forma parte del curso

Traducción automática con Keras

Ver curso

Instrucciones del ejercicio

  • Convierte onehot en un arreglo de ID de palabras utilizando la función np.argmax() y devuelve los ID de las palabras.
  • Define una lista de palabras con las palabras « We », « like » y « dogs ».
  • Convierte la lista de palabras en vectores onehot utilizando la función « words2onehot() ». Recuerda que words2onehot() toma una lista de palabras y un diccionario Python como argumentos.
  • Obtén el vector de contexto de los vectores onehot utilizando la función « encoder() ».

Ejercicio interactivo práctico

Prueba este ejercicio completando el código de muestra.

def encoder(onehot):
  # Get word IDs from onehot vectors and return the IDs
  word_ids = np.____(____, axis=____)
  return ____

# Define "We like dogs" as words
words = ____
# Convert words to onehot vectors using words2onehot
onehot = ____(____, ____)
# Get the context vector by using the encoder function
context = encoder(____)
print(context)
Editar y ejecutar código