命名实体识别算法

6

我正在尝试构建一个实体解析系统,我的实体是:

(i) General named entities, that is organization, person, location,date, time, money, and percent.
(ii) Some other entities like, product, title of person like president,ceo, etc. 
(iii) Corefererred entities like, pronoun, determiner phrase,synonym, string match, demonstrative noun phrase, alias, apposition. 

我从各种文献和其他参考资料中得出结论,我认为每个实体的模糊性不应超出其实体类别的范围。也就是说,我认为牛津大学的“牛津”与地方的“牛津”是不同的,因为前者是组织实体的第一个单词,而后者是位置实体。

我的任务是构建一个解析算法,其中我会提取和解析实体。

因此,我首先正在开发一个实体提取器。其次,如果我试图将核心指代关系与我在各种文献中找到的内容联系起来,如这一开创性工作,他们试图设计一种基于决策树的算法,并使用一些功能,例如距离、i-pronoun、j-pronoun、字符串匹配、明确名词短语、指示性名词短语、数字协议特征、语义类协议、性别协议、两个专有名词、别名、同位语等。

该算法似乎是一个很不错的算法,其中实体是通过隐马尔可夫模型(HMM)提取的。

我可以用HMM构建一个实体识别系统。现在我正在尝试开发一个指代关系和实体解析系统。我正在尝试使用一个带有注释的语料库,直接训练HMM基础标记器,以解决关系提取问题。

*"Obama/PERS is/NA delivering/NA a/NA lecture/NA in/NA Washington/LOC, he/PPERS knew/NA it/NA was/NA going/NA to/NA be/NA
small/NA as/NA it/NA may/NA not/NA be/NA his/PoPERS speech/NA as/NA Mr. President/APPERS"

where, PERS-> PERSON
       PPERS->PERSONAL PRONOUN TO PERSON
       PoPERS-> POSSESSIVE PRONOUN TO PERSON
       APPERS-> APPOSITIVE TO PERSON
       LOC-> LOCATION
       NA-> NOT AVAILABLE*

我做了一个大约有10,000个单词的实验,我觉得结果是令人鼓舞的。我正在尝试在标记集中加入一些语义信息,例如 PERSUSPOL、 LOCCITUS、PoPERSM 等等,以便在一次操作中进行实体消歧。我的感觉是关系抽取现在会更好。请参考这个新想法。我还用朴素贝叶斯分类器获得了一些不错的结果,其中将主要具有一组关键字的句子标记为一类。
如果有人有任何不同的建议,请随时提出。
我在 MS-Windows 上使用 Python2.x,并尝试使用 NLTK、Scikit-learn、Gensim、pandas、Numpy、Scipy 等库。
提前致谢。

出现了一个发布问题。自动文本编辑器将这两个示例都认作代码。但它们并不是代码,只是示例而已。 - Coeus2016
1个回答

3

看起来你正在走三条完全不同的道路,每个方向都可以作为一个独立的博士项目完成。有很多文献可以参考。我的第一条建议是专注于主要任务,将其余部分外包。如果你要开发的是非常著名的语言,也可以借鉴他人的经验。

命名实体识别

Standford NLP 在这方面取得了很大的进展,尤其是针对英语。它们能够很好地解决命名实体问题,被广泛使用,并拥有良好的社区。

其他解决方案可能存在于 Python 的 openNLP 中。

一些人试图扩展到不寻常的细粒度类型,但需要更大的训练数据来覆盖这些情况,决策会变得更加困难。

编辑:Stanford NER 存在于 NLTK Python 中。

命名实体解析/链接/消歧

这与将名称链接到某个知识库有关,解决了“牛津大学”和“牛津城市”之类的问题。

AIDA:是其中一种最先进的技术,它们使用不同的上下文信息和连贯性信息。此外,他们尝试支持多种语言,并且有一个良好的基准。

Babelfy:提供有趣的API,用于实体和概念的命名实体识别(NER)和命名实体消歧(NED)。此外,他们支持许多语言,但效果并不理想。

其他像tagme和wikifi等

会议决议

另外,斯坦福CoreNLP在这个方向上也有一些好的工作。我还可以推荐this work,他们将会议决议与NED相结合。


希望这能有所帮助。 - Mohamed Gad-Elrab
谢谢你的回答。我会仔细阅读你的文献,但似乎有一个核心要点、实体。我正试图围绕它展开。任务很庞大,我理解。 - Coeus2016

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接