划分训练集与验证集
您将创建训练集和验证集。保留一个验证集并在训练过程中监控模型在该集合上的表现,是避免过拟合的良好实践。
在本练习中,已为您提供 en_text(英文句子)和 fr_text(法文句子)。
本练习是课程的一部分
使用 Keras 的机器翻译
练习说明
- 使用
np.arange()定义一个从 0 开始、长度为en_text的索引序列。 - 将序列中的前
train_size个索引定义为train_inds。 - 定义
tr_en和tf_fr,它们分别包含列表en_text与fr_text中位于train_inds指定索引处的句子。 - 定义
v_en和v_fr,它们分别包含列表en_text与fr_text中位于valid_inds指定索引处的句子。
交互式实操练习
通过完成这段示例代码来试试这个练习。
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])