Division des données d'entraînement et de validation
Vous serez chargé de créer des ensembles de données de formation et de validation. Conserver un ensemble de données de validation et surveiller les performances du modèle sur cet ensemble constitue une bonne pratique pour éviter le surapprentissage.
Pour cet exercice, vous disposez des documents suivants : en_text
(phrases en anglais) et fr_text
(phrases en français).
Cet exercice fait partie du cours
Traduction automatique avec Keras
Instructions
- Définissez une séquence d'index à l'aide d'
np.arange()
, qui commence par 0 et a une taille deen_text
. - Définissez l'
train_inds
comme le premier ensemble d'train_size
s de la séquence d'indices. - Définissez
tr_en
ettf_fr
, qui contiennent les phrases trouvées aux indices spécifiés partrain_inds
dans les listesen_text
etfr_text
. - Définissez
v_en
etv_fr
qui contiennent les phrases trouvées aux indices spécifiés parvalid_inds
dans les listesen_text
etfr_text
.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
train_size, valid_size = 800, 200
# Define a sequence of indices from 0 to size of en_text
inds = np.____(len(____))
np.random.shuffle(inds)
# Define train_inds as first train_size indices
train_inds = inds[:____]
valid_inds = inds[train_size:train_size+valid_size]
# Define tr_en (train EN sentences) and tr_fr (train FR sentences)
tr_en = [en_text[ti] for ti in ____]
tr_fr = [____[____] for ti in ____]
# Define v_en (valid EN sentences) and v_fr (valid FR sentences)
v_en = [en_text[____] for vi in ____]
v_fr = [____[____] for vi in ____]
print('Training (EN):\n', tr_en[:3], '\nTraining (FR):\n', tr_fr[:3])
print('\nValid (EN):\n', v_en[:3], '\nValid (FR):\n', v_fr[:3])