Inizia subitoInizia gratis

Preparare il testo di input

Nel video hai visto come preparare i testi di input e output. Questo esercizio vuole mostrarti una pratica comune: usare la lunghezza massima delle frasi per effettuare il padding di tutte quante, così non si perde alcuna informazione.

Poiché i modelli RNN richiedono input della stessa dimensione, questo è un modo per fare il padding di tutte le frasi aggiungendo zeri a quelle più corte, senza tagliare quelle più lunghe.

Inoltre userai le parole, invece dei caratteri, per rappresentare i token: è un approccio comune per i modelli di NMT.

I testi in portoghese sono caricati nella variabile pt_sentences e un tokenizer già addestrato è nella variabile input_tokenizer.

Questo esercizio fa parte del corso

Reti Neurali Ricorrenti (RNN) per il Language Modeling con Keras

Visualizza corso

Istruzioni dell'esercizio

  • Usa il metodo .split() su ciascuna frase per dividere per spazio bianco e ottenere il numero di parole nella frase.
  • Usa il metodo .texts_to_sequences() per trasformare il testo in una sequenza di indici.
  • Usa la lunghezza massima delle frasi ottenuta per effettuare il padding.
  • Stampa la prima frase trasformata.

esercizio interattivo pratico

Prova questo esercizio completando questo codice di esempio.

# Get maximum length of the sentences
pt_length = max([len(sentence.____) for sentence in pt_sentences])

# Transform text to sequence of numerical indexes
X = input_tokenizer.____(pt_sentences)

# Pad the sequences
X = pad_sequences(X, maxlen=____, padding='post')

# Print first sentence
print(pt_sentences[0])

# Print transformed sentence
print(____)
Modifica ed esegui il codice