在句子中对命名实体类别进行分类的最佳实践是什么

数据挖掘 机器学习 数据挖掘 分类 nlp
2022-02-16 20:18:17

我有来自维基百科的 1-4 克文本数据,用于 14 个类别,我将其用于 NE 分类。我将句子中的命名实体提供给 lucene 索引器,该索引器从这 14 个类别中搜索命名实体。我面临的问题是,对于单个实体,我得到多个类,结果是相同的分数。就像搜索时一样titanic,索引器会给出这个结果

分数 - 11.23 标题 - 泰坦尼克号 - 书籍

分数 - 11.23 标题 - 泰坦尼克号 类别 - 电影

分数 - 11.23 标题 - 泰坦尼克号 类别 - 产品

现在的问题是要考虑哪个类?

我已经尝试过使用分类器(NB,ME in nltk,scikit learn),但是由于它将数据集中的每个实体都视为特征,因此它仅用作索引器。

为什么是卢森?

在此处输入图像描述

1个回答

我不确定我是否完全理解您的问题,但在我看来,您正在尝试断章取义地确定字符串/实体“泰坦尼克号”的类别。您的数据告诉您,“泰坦尼克号”可能是一本书、一部电影或一种产品,您想弄清楚哪个是正确的——这就是您想要做的吗?

如果是这样,问题是您已经删除了字符串/实体“titanic”出现在原始文本中的上下文。例如...

  • 在“我无法停止阅读泰坦尼克号”这句话中,“泰坦尼克号”一词指的是一本书。
  • 在“泰坦尼克号是有史以来票房最高的电影之一”这句话中,“泰坦尼克号”一词指的是一部电影。
  • 在“泰坦尼克号是世界上最大的远洋客轮”这句话中,“泰坦尼克号”一词指的是一种产品。

没有这个上下文,就无法知道哪个是正确的类别。我建议研究一下斯坦福 NER等命名实体识别工具的工作原理——这将帮助您更好地理解如何做这样的事情。您会看到 NER 工具的输入通常需要是一个句子,以便利用上下文对提取的实体进行正确分类。