開始使用免費開始

切分訓練與驗證資料

你將建立訓練與驗證資料集。保留一組驗證資料集,並持續監控模型在該資料集上的表現,是避免過度擬合(overfitting)的好做法。

在本練習中,已提供 en_text(英文句子)與 fr_text(法文句子)。

本練習屬於課程

使用 Keras 進行機器翻譯

檢視課程

練習說明

  • 使用 np.arange() 定義一個從 0 開始、長度為 en_text 的索引序列。
  • 將序列中前 train_size 個索引指定為 train_inds
  • 定義 tr_entf_fr,其內容為在 train_inds 指定索引處,分別從 en_textfr_text 清單中取得的句子。
  • 定義 v_env_fr,其內容為在 valid_inds 指定索引處,分別從 en_textfr_text 清單中取得的句子。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

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])
編輯並執行程式碼