Kom igångKom igång gratis

Generera en mening med kontext

I den här övningen ska du experimentera med en förtränad modell för textgenerering. Modellen är redan inläst i miljön via variabeln model, tillsammans med funktionerna initialize_params() och get_next_token().

Den sistnämnda använder den förtränade modellen för att förutsäga nästa tecken och returnerar tre variabler: nästa tecken next_char, den uppdaterade meningen res och den förskjutna texten seq som används för att förutsäga nästa tecken.

Du ska definiera en funktion som tar emot en förtränad modell och en sträng – som utgör början på den genererade meningen – som indata. Det här är ett bra sätt att generera text med kontext. Teckengränsen på 100 tecken är ett exempel; du kan använda andra gränser (eller inga alls) i dina egna tillämpningar.

Den här övningen är en del av kursen

Återkommande neurala nätverk (RNN) för språkmodellering med Keras

Visa kurs

Övningsinstruktioner

  • Skicka variabeln initial_text till funktionen initialize_params().
  • Skapa villkor för att avbryta loopen när räknaren når 100 eller en punkt (r'.') påträffas.
  • Skicka startvärden res, seq till funktionen get_next_token() för att hämta nästa tecken.
  • Skriv ut den exempelfras som den definierade funktionen genererar.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

def generate_phrase(model, initial_text):
    # Initialize variables  
    res, seq, counter, next_char = initialize_params(____)
    
    # Loop until stop conditions are met
    while counter < ____ ____ next_char != r'.':
      	# Get next char using the model and append to the sentence
        next_char, res, seq = get_next_token(model, ____, ____)
        # Update the counter
        counter = counter + 1
    return res
  
# Create a phrase
print(____(model, "I am not insane, "))
Redigera och kör kod