深度学习中的强化学习与阅读理解模型
1. 数组操作与符号循环
在数组操作中,我们可以使用 scatter 方法将值分散到数组的指定位置。该方法的第一个参数是一个索引列表,用于指定要将对应值分散到的位置;第二个参数是无序分配权重。以下是一个示例代码:
empty_at = torch.empty(N)
a_t = empty_at.scatter(0, free_list, out_of_location_at)
在实现过程中,控制器循环是需要循环的最后一部分。由于向量化操作仅在按元素定义操作时有效,因此控制器循环无法进行向量化。不过,PyTorch 提供了符号循环的方法来避免 Python 的 for 循环及其带来的性能损失。符号循环的工作方式与大多数符号操作类似,它不会将实际循环展开到图中,而是定义一个节点,在图执行时作为循环执行。关于在 PyTorch 中使用符号循环的更多信息,可以在 torch.fx 文档中找到。TensorFlow 中符号循环的实现可以在代码仓库的 train_babi.py 文件中找到。
2. 训练 DNC 进行阅读理解
2.1 bAbI 数据集介绍
bAbI 数据集是一个合成数据集,由 20 组故事、关于这些故事的问题及其答案组成。每个集合代表一个特定且独特的文本推理和推断任务。在我们使用的版本中,每个任务包含 10,000 个训练问题和 1,000 个测试问题。例如,以下故事来自列表和
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



