首页 > 解决方案 > 用于机器翻译的 Transformers 架构

问题描述

我已经为我的阿拉伯语-英语对齐句子语料库调整了基本转换器模型。因此,该模型已经训练了 40 个 epoch,并且每个 epoch 的准确性(SparseCategoricalAccuracy)提高了 0.0004 倍。为了获得好的结果,我的估计是在 0.5 左右的任何地方达到最终准确度,40 个 epoch 后的准确度为 0.0592。

我在 tesla 2 p80 GPU 上运行模型。每个 epoch 需要约 2690 秒。这意味着我至少需要 600 个 epoch,训练时间为 15-18 天。我应该继续训练吗?还是因为研究论文中的基础转换器是在英法语语料库上训练的,所以程序有问题吗?

主要亮点:

  1. 句子的字节对(编码)
  2. maxlen_len =100
  3. 批量大小= 64
  4. 没有使用预训练的嵌入。

标签: nlp

解决方案


您是指 aws p2.xlarge 实例上的 Tesla K80。如果是这种情况,这些 gpus 就非常慢。您应该在带有 V100 gpus 的 aws 上使用 p3 实例。您将获得大约 6-7 倍的加速。结帐以获取更多详细信息。

此外,如果您没有使用标准模型并且对模型或数据集进行了一些更改,请尝试调整超参数。最简单的是尝试降低学习率,看看是否能得到更好的结果。

此外,首先尝试使用标准数据集运行标准模型以基准化在这种情况下所花费的时间,然后进行更改并继续。查看模型何时开始在标准情况下收敛。我觉得它也应该在 40 个 epoch 之后给出一些结果。


推荐阅读