我正在尝试训练双向 LSTM 来执行顺序文本标记任务(特别是,我想做自动标点符号)。
我使用字母作为构建块:我用 50 维嵌入向量表示每个输入字母,馈入单个 100 维隐藏层,馈入 100 维输出层,然后馈入 MLP。
对于训练,我有一个包含大约 18 百万个字母的语料库——大约有 70,000 个句子,每个句子中大约有 250 个字母。(我在 Ubuntu 16.04 系统上的 Python 3 上使用过 DyNet)。
主要问题是训练非常缓慢:每次训练迭代大约需要半天时间。由于训练通常需要大约 100 次迭代,这意味着我必须等待一个多月才能获得合理的结果。
我问了其他一些做深度学习的人,他们告诉我“深度学习很慢,你必须习惯它”。尽管如此,等待一个多月的培训似乎非常缓慢。
这些时间对于训练 LSTM 模型很常见吗?如果没有,我做错了什么,我能做些什么来加快训练速度?