4

我一直在用二进制数据和 gigaword 数据测试 textsum,训练模型并进行测试。波束搜索解码器为我提供了包含数据集和模型的所有“UNK”结果。我使用的是默认参数设置。

我首先更改了data.py和batch_reader.py中的数据接口,从gigaword数据集中读取和解析文章和摘要。我在大约 170 万个文档上训练了一个包含超过 90K 小批量的模型。然后我在不同的测试集上测试了模型,但它返回了所有结果。 使用 gigaword 训练的模型的解码器结果

然后我使用 textsum 代码附带的二进制数据来训练一个少于 1k 小批量的小型模型。我测试了相同的二进制数据。它给出了解码文件中的所有结果,除了一些“for”和“.”。 使用二进制数据训练的模型的解码器结果 我还查看了关于训练损失的张量板,它显示训练收敛。

在训练和测试中,我没有更改任何默认设置。有没有人尝试过和我一样的事情并发现了同样的问题?

4

1 回答 1

2

我想我找到了为什么至少在给定的玩具数据集上会发生这种情况。就我而言,我使用给定的相同玩具集(数据和词汇文件)进行了训练和测试。我在解码器结果中得到 [UNK] 的原因是词汇文件不包含玩具数据集摘要中出现的任何单词。由于这个原因,解码器找不到要解码的单词,因此在最终结果中使用 [UNK]

于 2016-09-28T00:34:08.573 回答