命名实体连接发现最关键的部分是消歧的问题,普通的文本大多数时候不会提全名,如科大讯飞大家不会说「科大讯飞股份有限公司」,而会说「讯飞」。因为人们会使用缩写、昵称、绰号以及上下文指代的内容,使得命名实体连接时的消歧会非常难做。 还有一个比较有意思的事情是,去年 KBP 比赛时杰布?布什正在竞选美国总统,新闻中会出现很多「布什一家」,其中以杰布?布什居多。但是因为训练语料中老布什和小布什出现的频率更高,所以在去年的比赛中,大多数参与的系统都会将杰布?布什连接到乔治?布什上。 另外,在语料中的昵称缩写也很容易连接错误,或错标为非实体。除了这些,偏谈论性的语调中会出现「希拉里这个女人……」。这里的「这个女人」在实体发现中被标为实体会很难;其次把「这个女人」连接到希拉里是另外一个比较有难度的事情。 机器之心:这个任务更偏向于 NLP 中的语义理解方向吗? 刘丹:应该算语义理解。与之相似的是最近几年发展的「抽象语义表示」,希望将文本中的句子抽象出和语言无关的实体,以及实体关系、动作之间的图像表示。 机器之心:KBP 任务的评判标准是什么? 刘丹:评判标准是正确率与召回率两者兼顾的,j2直播,采用的是 NLP 中常用的 f-score。 如果语料中出现了一百个实体,系统标出了 105 个,其中 80 个是正确的实体,另外 25 个是系统错标的,正确率就是标出的正确实体数除以系统标出数(80/105=0.7619);一共有 100 个实体,直播,召回了 80 个,召回率就是召回数比总数(80/100=0.8)。 如果正确率和召回率只考虑一部分,往往可以做到很高,比如系统尽可能只找绝对有把握的(名词实体),或者文本中出现了 100 个实体,只找到 1 个实体并且是正确的,那么正确率总是 100%。 机器之心:因为 KBP 任务包含中文、英文、西班牙文,那么多语言之间连接部分的难点在那里? 刘丹:如果按照传统 NLP 做法,会根据每个语言精细定义比较复杂的规则,系统的调节也会倾向于抽取非常大的规模特征。做传统 NLP 中国人做中文是最好的,英文还能做得来,但是西班牙文是没办法做的。 我们在解决 KBP 任务是采用的是基于深度学习框架下发展的技术,特点是用比较复杂的神经网络和端到端的学习,尽可能多的靠数据驱动并尽量减少人工定义的规则和特征。我们参加本次比赛的模型结构很有自己的特色,在三个语种中使用的是同一个系统,取得的结果都不错。 虽然西班牙文我们完全看不懂,但在西班牙文命名实体发现的部分,最终结果是我们做得最好,领先第二名不少。命名实体连接部分我们是第二,比第一差了 1.9 分(讯飞成绩为 63.5,最优为 65.4)。
KBP 任务可提交参赛系统可提交两次,该图表为第一次提交时的指标结果。其中,1 号系统为讯飞与 USTC 实验室联合提交的系统。
该图表为第二次提交的指标结果。其中,2 号系统为讯飞与约克大学联合实验室共同提交的系统。两个系统共同囊括了 EDL 任务的冠亚军。 机器之心:西班牙语比较难做的原因是因为训练语料较少吗? 刘丹:有两方面原因。一个是传统 NLP 依赖的规则资源在西班牙语方面比较少,我们中文做的比较多,至少对于人名判断有姓氏列表,中国所有的省份也有列表,想去做规则总是做得出来。西班牙文的类似列表做得少,相关资源也很少。 另外研究者不是母语使用者(Native Speaker),想要进一步调试系统都没有办法。 机器之心:比赛使用的输入语料是随机语料吗? 刘丹:是官方提供的。今年比赛和此前相比还有一点不同,前面几年的语料非常少,每个语种只有 500 篇。今年规则改为一共提供 90003 篇,每个语种平均 30001 篇。需要将 90003 篇中的实体都找出,并连接起来。 机器之心:我们在比赛中主要用到的技术有哪些? (责任编辑:本港台直播) |