开源地址: https://github.com/yahoo/FEL
你每次打开客户端(如 Yahoo News 或者 Yahoo Sports),你想优先获得什么样的文本信息?虽然每个人的喜好不同,但你想知道的永远有关文本中的人物,组织和位置信息。自动搜寻此类信息的系统被称为「实体名称识别和链接系统(named entity recognition and linking systems)」。它是文本分析中最重要的系统,许多应用都会使用到它,例如搜索引擎、推荐系统、问答系统和情绪分析系统。
实体名称识别和链接系统使用统计模型,通过大量经过标记的文本进行训练。这种方法面临的主要挑战是在不同语言、长文本、缺乏标记的数据中准确探测实体,同时不需要耗费过多的系统资源(内存和处理器资源)。
在雅虎长期研究和不断应用这些解决方案之后,我们很高兴为开源社区贡献我们的这一工具:Fast Entity Linker,我们的无监督、准确、可扩展多语言实体名称识别和链接系统,同时也包含英语、西班牙语和中文数据包。
为了增加可用性,我们的系统将文本实体链接至维基百科。例如,当语句中出现「雅虎是一家总部位于加州 Sunnyvale 的公司,CEO 是 Marissa Mayer」时,这一系统会点出以下实体:
Yahoo – linked to https://en.wikipedia.org/wiki/Yahoo!
Sunnyvale, CA – linked to https://en.wikipedia.org/wiki/Sunnyvale,_California
Marissa Mayer – linked to https://en.wikipedia.org/wiki/Marissa_Mayer
在算法上,我们使用了实体嵌入,click-log 数据和高效聚类等方法来实现高精度。该系统通过使用压缩数据结构和主动散列函数以实现低内存占用和快速执行。
「实体嵌入(Entity embeddings)」是基于向量的表示,它捕获上下文中引用实体的方式。我们使用维基百科文章训练实体嵌入,并在文章中使用超链接格式来创建规范实体。使用下图中的神经网络架构来建模实体的上下文和表征,其中实体向量经过训练不仅会预测其周围实体,而且可以预测包含词序列的全局上下文。这种方式分为两层,一层实体上下文模型,另一层表征上下文模型。我们使用和用于训练段落向量的相同技术(Quoc 和 Mikolov,2014)来连接这两个层。
同时训练字嵌入和实体嵌入的架构。「Ent」表示实体,「W」表示它们的上下文单词
搜索 click-log 数据提供了非常有用的信号来消除局部歧义或实体歧义。例如,搜索「Fox」的人倾向于点击「Fox News」而不是「20th Century Fox」,我们可以使用这些数据来识别文档中的「Fox」。为了消除实体歧义,并确保文档具有一致的实体集合,我们的系统支持三个实体消歧算法:
Forward Backward Algorithm (Austin et al. 91)
Exemplar Clustering (Frey and Dueck 『07)
Label Propagation (Talukdar and Crammer 『09)
目前,只有前向后向算法(Forward Backward Algorithm)在我们的开源版本中是可用的,其他两个算法将很快可用!
当常用候选项是实体歧义的错误选项时,这些算法非常有助于精确地链接实体。在下面的例子中,这些算法利用周围语境能准确地将 Manchester City、Swansea City、 Liverpool、Chelsea 和 Arsenal 等词组连接到它们各自的足球俱乐部。模糊提及能用红色突出指明多个实体,例如 Chelsea 可以指纽约或伦敦的 Chelsea 区,或一家著名的足球俱乐部。明确的实体命名以绿色突出显示,在上例中引用的模糊和无歧义示例的实体链接候选项进行检索过程中,正确的候选项就以绿色突出显示。
目前,快速实体链接器(Fast Entity Linker)是仅有的三个可用于多语言实体命名识别和链接系统(其他是 DBpedia Spotlight 和 Babelfy)之一。除了独立的实体链接器,这一软件还包括了可用于创建和压缩来自维基百科的不同语言中的词/实体嵌入和数据包等工具。其中,包含了所有英语维基百科信息的数据包只有 2GB!
这个系统的技术基础在下面两篇科学论文中被详细论述:
Roi Blanco, Giuseppe Ottaviano, and Edgar Meij:「Fast and space-efficient entity linking in queries.」In Proceedings WDSM 2015.
Aasish Pappu, Roi Blanco, Yashar Mehdad, Amanda Stent, and Kapil Thadani:「Lightweight multilingual entity extraction and linking.」In Proceedings WSDM 2017.
开源工具包中有许多可用的应用程序,其中之一是将情绪归于文本中检测到的实体,而不是整个文本本身。例如考虑以下来自 MetaCritic 用户对电影《但丁密码》的实际评论:「虽然汤姆·汉克斯的表演很好,制片商也创造了一个神秘而生动的电影,但是剧情还是很难理解。虽然这部电影情节婉转有趣,但我对哥伦比亚影业的期待不止如此」。所以虽然最后的评论是中立的,但是它同样传递了对于汤姆·汉克斯积极情绪和对哥伦比亚电影公司的消极情绪。
许多现有的情绪分析工具将与文本相关联的情感值整理作为一个整体处理,这使得系统很难跟踪用户对任何单独实体的情绪。使用我们的工具包,开发者们可以让系统自动提取给定文本中的「正面」和「负面」信息,从而更清楚地了解用户对各个单独实体的情绪。
原文链接:https://yahooresearch.tumblr.com/post/154110423951/presenting-an-open-source-toolkit-for-lightweight