CommencerCommencer gratuitement

Préparer les données texte pour l’entrée du modèle

Vous avez déjà appris à créer des dictionnaires d’index vers mots et l’inverse. Dans cet exercice, vous allez découper le texte en caractères et continuer à préparer les données pour l’apprentissage supervisé.

Découper les textes en caractères peut sembler étrange, mais c’est fréquent pour la génération de texte. Le processus de préparation des données reste le même ; seule la façon de scinder les textes change.

Vous allez créer les données d’entraînement contenant une liste de textes de longueur fixe et leurs étiquettes, qui sont les caractères suivants correspondants.

Vous continuerez d’utiliser le jeu de données contenant des citations de Sheldon (The Big Bang Theory), disponible dans la variable sheldon_quotes.

La fonction print_examples() affiche les paires pour vous permettre de voir comment les données ont été transformées. Utilisez help() pour plus de détails.

Cet exercice fait partie du cours

Réseaux de neurones récurrents (RNN) pour la modélisation du langage avec Keras

Afficher le cours

Instructions

  • Définissez step égal à 2 et chars_window égal à 10.
  • Ajoutez la phrase suivante à la variable sentences.
  • Ajoutez la position correcte du texte sheldon à la variable next_chars.
  • Utilisez la fonction print_examples() pour afficher 10 phrases et leurs caractères suivants.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Create lists to keep the sentences and the next character
sentences = []   # ~ Training data
next_chars = []  # ~ Training labels

# Define hyperparameters
step = ____          # ~ Step to take when reading the texts in characters
chars_window = ____ # ~ Number of characters to use to predict the next one  

# Loop over the text: length `chars_window` per time with step equal to `step`
for i in range(0, len(sheldon_quotes) - chars_window, step):
    sentences.____(sheldon_quotes[i:i + chars_window])
    next_chars.append(sheldon_quotes[____])

# Print 10 pairs
print_examples(____, ____, 10)
Modifier et exécuter le code