ÎncepețiÎncepe gratuit

Partea 1: Vânătoarea de comori

Ai câștigat recent o călătorie plătită integral pe o insulă tropicală luxuriantă. În timp ce explorai insula, ai găsit o hartă antică a unei comori care indica un tezaur prețios – cu câteva mesaje secrete scrise folosind 1 și 0. Datorită acestui curs, recunoști imediat că este o secvență de vectori codificați onehot. Ai avut și norocul să găsești maparea de la cuvânt la index, ca să știi ce ID corespunde fiecărui cuvânt.

Acum trebuie să decriptezi mesajul secret și să afli ce spune această hartă. Ți-a fost furnizat treasure_map – o matrice de dimensiune număr de propoziții × număr de cuvinte × lungimea vectorului onehot. Ai la dispoziție și dicționarul Python index2word, care mapează un ID la un cuvânt.

Acest exercițiu face parte din cursul

Traducere automată cu Keras

Vezi cursul

Instrucțiuni pentru exercițiu

  • Obține ID-urile cuvintelor pentru vectorii codificați onehot din treasure_map (dimensiunea vectorului onehot este ultima dimensiune).
  • Obține lungimea secvenței (adică numărul de pași de timp) din treasure_map și atribuie-o lui seq_len.
  • Obține ID-ul cuvântului din propoziția i la poziția t.
  • Adaugă cuvântul de tip String (adică nu ID-ul cuvântului) corespunzător lui wid la lista words.

Exercițiu interactiv practic

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

# Get the word IDs from the treasure map
word_ids = ____.____(____, axis=____)
# Get the sequence length from the treasure map
seq_len = treasure_map.shape[____]

for i in range(treasure_map.shape[0]):
	words = []
	for t in range(seq_len):
      	# Get the word ID for the i-th sentence and t-th position
	    wid = word_ids[i, ____]
	    if wid != 0:
          	# Append the word corresponding to wid
	        words.append(____[____])
	print("Instruction ", i+1, ": ", ' '.join(words))
Editează și rulează codul