如何训练具有 1 个实体的 Ner 模型?

数据挖掘 机器学习 深度学习 lstm
2022-02-13 01:54:39

我正在使用双向 LSTM 和 CRF 创建自定义 NER(命名实体识别)模型。

在研究 Ner 期间,我看到所有示例都包含每个句子的多个实体。例如,这句话包括 2 个实体

(jhon 住在美国) jhon = S-Per , US=S-Country

问题一:

我们可以使用 (bi lstm crf) 创建一个我们只想预测 1 个实体的模型吗?

问题2:

在 CRF 中,邻居的状态会影响当前的预测,因此每个句子预测 1 个实体似乎特别难于使用 CRF?

问题 3:

如果我无法使用 CRF 实现这一点,我可以使用 Bert 训练每个模型有 1 个实体的模型吗?

提前致谢。

1个回答

我们可以使用 (bi lstm crf) 创建一个我们只想预测 1 个实体的模型吗?

[编辑] 是的,我会使用的技巧是训练一个常规模型并预测每个句子的前 10 个最有可能的预测。这将为您提供按概率排序的不同可能标签。这个想法是选择包含单个实体的第一个标签,即在消除具有多个实体的预测之后最有可能的选项。

在 CRF 中,邻居的状态会影响当前的预测,因此每个句子预测 1 个实体似乎特别难于使用 CRF?

这里有一个混淆:这是真的,但“邻居”不是其他实体,它们是句子的其他词。这意味着如果一个词属于一个实体,那么下一个词也更有可能属于一个实体(即属于同一实体的一部分)。因此,使用 CRF 不会增加在句子中找到多个不同实体的概率。但是,如果所有目标实体都是单个单词,则可能不需要 CRF(我不确定是否有更好的选择)。

如果我无法使用 CRF 实现这一点,我可以使用 Bert 训练每个模型有 1 个实体的模型吗?

我不知道这个问题的答案,但我怀疑它是否需要。