ÎncepețiÎncepe gratuit

Partea 1: Model de inversare a textului - Encoder

Crearea unui model simplu de inversare a textului este o metodă excelentă pentru a înțelege mecanica modelelor encoder-decoder și modul în care acestea se conectează. Vei implementa acum partea de encoder a unui model de inversare a textului.

Implementarea encoder-ului a fost împărțită în două exerciții. În acest exercițiu, vei defini funcția helper words2onehot(). Funcția words2onehot() ar trebui să primească o listă de cuvinte și un dicționar word2index, apoi să convertească lista de cuvinte într-un array de vectori one-hot. Dicționarul word2index este disponibil în spațiul de lucru.

Acest exercițiu face parte din cursul

Traducere automată cu Keras

Vezi cursul

Instrucțiuni pentru exercițiu

  • Convertește cuvintele în ID-uri folosind dicționarul word2index în funcția words2onehot().
  • Convertește ID-urile cuvintelor în vectori one-hot cu lungimea 3 (folosind argumentul num_classes) și returnează array-ul rezultat.
  • Apelează funcția words2onehot() cu cuvintele I, like și cats și atribuie rezultatul variabilei onehot.
  • Afișează cuvintele și vectorii one-hot corespunzători folosind funcțiile print() și zip(). Funcția zip() îți permite să iterezi mai multe liste în același timp.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

import numpy as np

def words2onehot(word_list, word2index):
  # Convert words to word IDs
  word_ids = [____[w] for w in ____]
  # Convert word IDs to onehot vectors and return the onehot array
  onehot = ____(____, num_classes=3)
  return ____

words = ["I", "like", "cats"]
# Convert words to onehot vectors using words2onehot
onehot = ____(____, ____)
# Print the result as (, ) tuples
print([(w,ohe.tolist()) for ____,____ in zip(words, ____)])
Editează și rulează codul