2013-05-08 70 views
0

我正在处理分类任务,我们正在构建检测文本范围(即注释)中存在的实体类型的模型。使用命名实体数据集

  • 上下文前:注释之前文档文本这些模型可以用其中每个实例是由三个独立的文本变量表示的数据集来构建。
  • 注释:我们想要检测实体类型的文档范围。如果不存在实体,则所有实体类型列(isPerson,isOrganization,isTime)都标记为0
  • 后上下文:文档文本注释之后。

数据集1:文本跨度中的实体类型分类。

preContext | annotation  | postContext | isOrganization | isPerson | isTime 
....  | on July 12, 2011 | ....  | 0    | 0  | 1 
With over 8 | million invested | in Chrysler | 0    | 0  | 0 

数据集2:边界检测 - “启动的实体”

在第一示例中,preContext和文字之间的过渡标志着一个组织型实体的开始。在第二个示例中,preContext和text之间的过渡不存在实体,因此所有从属变量列都标记为零。

preContext   | text 
    | isStartOfOrganization | isStartOfPerson | isStartOfTime 
Private equity firm | Westbridge Capital could exit part or all of its stake in Hyderabad-based technology firm. 
    | 1 | 0 | 0 

我被使用基本NLP技术如TF/IDF,N-克,断词,词干,POS标记加注者,非索引字表对上述问题。但我现在真正想做的是尝试一些除了我尝试过的新技术。这是我的问题,我无法找到任何有效的技术。如果你能建议我这将是伟大的,唯一的方法来获得更大的收益是开始思考超越! 你能否建议我解决上述问题的一些新技术?

+0

为了更好地理解它,我已经重新设置了这个问题的格式。但我仍然不确定你想知道的是什么。您描述了名称实体注释的两种格式,并且您正在寻找问题的解决方案,但我不明白这是什么问题。 – jogojapan 2013-05-09 00:57:43

+0

抱歉jogojapan。我编辑了我的问题,并重寄希望它会帮助你理解。 – 2013-05-09 04:54:42

+0

这两个数据集的格式与问题无关,是吗?你基本上在问:有什么技术来检测人名,组织名称和时态表达?正确? (如果是这样,这个问题可能太宽泛,太开放了,对于Stackoverflow。) – jogojapan 2013-05-09 05:15:52

回答

1

命名实体识别是规范序列标签任务之一。通常的做法,你接近但有点不同,就是给你的句子中的每个单词添加一个标签。像下面的内容:

有/无过/无第八讲/ NONE万元/ NONE投资/无/无克莱斯勒/ BEGIN - 公司

开/ NONE周二/ NONE,先生/ BEGIN人X/PERSON,CEO/NONE of/NONE Technology/BEGIN-COMPANY产品/ COMPANY Inc/COMPANY,说/ NONE ...

我相信有一个单独的开始标记是常见的(BEGIN-COMPANY vs COMPANY),因为它有助于学习NONE和类别之间的转换。你可以尝试两种。

因为你做出的决定是相互依赖的,所以你不会想把它看作一堆独立的决策(分类)。相反,使用特定的序列标签模型。如果你有权访问一个工具包(有很多可用的工具),那么最容易和最容易接受的就是一个条件随机场,因为你可以为每个单词定义任意特征函数,而不用担心分布假设。常见的功能有word-id,以前的标签id,单词是否大写,是否存在于各种专有名词列表中,等等。然后,您可以从标签数据中学习模型并将其应用于新文本。

+0

谢谢本·阿利森。 – 2013-05-08 10:47:05

+0

@kishore我仍然不明白这个问题,但无论如何,如果你喜欢这个答案,你应该放弃它。这就是Stackoverflow的工作原理。 – jogojapan 2013-05-09 00:59:16

+0

@jogojapan k我明白了 – 2013-05-09 10:36:33