Împărțirea datelor în seturi de antrenament și validare
Vei crea seturi de date pentru antrenament și validare. Păstrarea unui set de validare și monitorizarea performanței modelului pe acel set este o practică bună pentru a evita supraajustarea (overfitting).
Pentru acest exercițiu ai la dispoziție en_text (propoziții în engleză) și fr_text (propoziții în franceză).
Acest exercițiu face parte din cursul
Traducere automată cu Keras
Instrucțiuni pentru exercițiu
- Definește o secvență de indici folosind
np.arange(), care să înceapă de la 0 și să aibă dimensiunea egală cuen_text. - Definește
train_indsca primiitrain_sizeindici din secvența de indici. - Definește
tr_enșitf_fr, care conțin propozițiile de la indicii specificați detrain_indsîn listeleen_textșifr_text. - Definește
v_enșiv_fr, care conțin propozițiile de la indicii specificați devalid_indsîn listeleen_textșifr_text.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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])