0

这可能是一个经典的 NLP 问题,但是如何在一堆推文中提取 FULL 实体?

例如,假设有一堆推文提到“波士顿”和“马拉松”,两者都在同一条推文中。我怎么知道我应该提取“波士顿马拉松”,而不仅仅是波士顿或马拉松?

同样,假设有很多推文提到“权力的游戏”。我怎么知道要提取的实体是《权力的游戏》,而不仅仅是《游戏》?

4

4 回答 4

2

另一件要尝试的事情可能是提取搭配。有关此方法的介绍,请参阅以下文章。

于 2013-04-23T11:46:43.900 回答
2

大多数命名实体识别器使用所谓的 IOB(inside-outside-beginning)标记方案正是因为您要询问的场景。例如,句子

John saw Game of Thrones.

应标记为

John/B-PERSON saw/O Game/B-MISC of/I-MISC Thrones/I-MISC.

请注意“权力的游戏”的第二个和第三个标记是如何被标记为在一个命名实体内的,该实体从“游戏”开始。当然,不能保证您使用的标记器会产生这个精确的标记序列。

您可以在NLTK book中阅读有关 IOB 的更多信息。

于 2013-04-23T11:05:06.627 回答
0

You can also try with DBpedia-Spotlight endpoint..

http://spotlight.dbpedia.org/rest/spot/?text=

于 2014-02-21T05:31:45.357 回答
0

我目前正在从事件数据库中提取命名实体。我已经尝试了几个库 NLTK、PHP 脚本等。但我发现最好的是斯坦福 NER:http ://nlp.stanford.edu:8080/ner/ 。

English.all.3class.dissim.crf.ser.gz

<PERSON>John</PERSON> saw Game of Thrones.

英语.conll.4class.dissim.crf.ser.gz

John saw <ORGANIZATION>Game of Thrones</ORGANIZATION>.

只需忽略分类类型。

我使用不同的分类器从文本中提取实体。之后我使用斯坦福解析器:http ://nlp.stanford.edu:8080/parser/

类型化依赖,折叠

nsubj(saw-2, John-1)
root(ROOT-0, saw-2)
dobj(saw-2, Game-3)
prep_of(Game-3, Thrones-5)

http://nlp.stanford.edu/software/dependencies_manual.pdf

指定我想要或不想要的命名实体。

于 2014-10-30T13:29:26.000 回答