人工智能经常“看不懂”中文句子,让人哭笑不得。在日前举行的自然语言处理领域(NLP)顶级学术会议ACL 2020上,来自创新工场大湾区人工智能研究院的两篇论文入选。这两篇论文均聚焦自然语言处理中文分词领域。
据研究人员介绍,分词及词性标注是中文自然语言处理的基本任务,但当前没有比较好的一体化解决方案,而且中文分词普遍存在歧义和未登录词的难题。
基于此,两篇论文各自提出了键-值记忆神经网络的中文分词模型和基于双通道注意力机制的分词及词性标注模型,将外部知识(信息)融入分词及词性标注模型,剔除了分词“噪音”误导,提升了分词及词性标注效果。
中文分词主要面临歧义和未登录词两大难点
据介绍,中文分词的目的是在中文的字序列中插入分隔符,将其切分为词。例如,“我喜欢音乐”将被切分为“我/喜欢/音乐”。
创新工场大湾区人工智能研究院执行院长宋彦分析,中文语言因其特殊性,在分词时面临着两个普遍的主要难点。
一是歧义问题,由于中文存在大量歧义,一般的分词工具在切分句子时可能会出错。例如,“部分居民生活水平”,其正确的切分应为“部分/居民/生活/水平”,但存在“分居”“民生”等歧义词。
二是未登录词问题。未登录词指的是不在词表,或者是模型在训练的过程中没有遇见过的词。这类问题在跨领域分词任务中尤其明显。宋彦介绍,这些未登录词,会非常影响分词和词性标注模型和系统的性能。
利用记忆神经网络提升中文分词性能
对此,其中一篇论文提出了基于键-值记忆神经网络的中文分词模型。
宋彦介绍,该模型利用n元组(即一个由连续n个字组成的序列,比如“居民”是一个2元组,“生活水平”是一个4元组)提供的每个字的构词能力,通过加(降)权重实现特定语境下的歧义消解。并通过非监督方法构建词表,实现对特定领域的未标注文本的利用,进而提升对未登录词的识别。
把可能成词的组合全部找到以后,加入到该分词模型中。然后通过神经网络,学习哪些词对于最后完整表达句意的帮助更大,进而分配不同的权重。例如,在“部分居民生活水平”这句话中,“部分”“居民”“生活”“水平”这些词会被突出,而“分居”“民生”会被降权处理,从而预测出正确的结果。
据介绍,为了检验该模型的分词效果,论文进行了严格的标准实验和跨领域实验。“我们在5个经常使用的标准中文分词数据集(MSR、PKU、AS、CityU、CTB6)上面,都达到了最好的效果,在这五个数据集上的分数都刷到了历史新高。” 宋彦说。
双通道注意力机制剔除“噪音”误导
第二篇论文则提出了一种基于双通道注意力机制的分词及词性标注模型。
据介绍,中文分词和词性标注是两个不同的任务。词性标注是在已经切分好的文本中,给每一个词标注其所属的词类,例如动词、名词、代词、形容词。词性标注对后续的句子理解有重要的作用。
“‘他马上功夫很好’这句话,在使用外部的句法知识的时候,可能会存在‘马上’这个词被分错的情况。正确的结果应该是‘马’和‘上’分开,但是这儿如果被分成一个词,就会被识别为一个副词。” 宋彦举例说。
研究人员介绍,针对这一问题,该论文提出的模型将中文分词和词性标注视作联合任务,可一体化完成。模型分别对自动获取的上下文特征和句法知识加权,预测每个字的分词和词性标签,不同的上下文特征和句法知识在各自所属的注意力通道内进行比较、加权,从而识别特定语境下不同上下文特征和句法知识的贡献。
为了测试该模型的性能,论文在一般领域和跨领域分别进行了实验。宋彦介绍,一般领域实验结果显示,该模型在5个数据集(CTB5,CTB6,CTB7,CTB9,Universal Dependencies)的表现(F值)均超过前人的工作。(记者 刘园园)