医疗大数据的认知命名实体识别分析

2021-11-05 07:47浙江万里学院竺佳琦谢宇涛林施婷钟逸伦
电子世界 2021年17期
关键词:信息检索词组语料

浙江万里学院 竺佳琦 谢宇涛 林施婷 钟逸伦 陈 浩 董 晨 金 冉

近几年来,医疗健康大数据呈现蓬勃发展的态势。在医疗领域已经积累了足够规模的临床数据的基础上,同时拥有规范的数据采集流程,保障了持续的数据更新和足够的可靠性。然而数据的利用率依然问题涌现,既包括数据本身的问题,也有数据管理问题和数据使用权限问题。针对医疗药品数据中的自然语言的关系抽取和信息检索任务,命名实体识别(Named Entity Recognition,NER)是一个高效且强有力的重要工具。

1 NER网络架构

1.1 NER引入

命名实体识别是自然语言处理办法中的一项基础任务,也是NLP领域中进行例如关系抽取、信息检索等复杂任务的基础任务。其主要作用就是从输入的自然语言文本中抽取相关实体,标注出其位置以及类型,并可以按照项目需求识别其他相关实体。

NER作为NLP领域中的研究热点,正在不断的实践中逐步成长起来,从早期基于词典和规则的方法、无监督学习方法,到传统机器学习的方法,再到近年来基于深度学习的方法,命名实体识别技术也在逐步精进,在计算机视觉、语音识别、自然语言处理等领域都发挥了极为重要的作用。

但仍有部分问题还没有得到很好地解决,例如:能够使命名实体识别充分发挥效果的文本类型和实体类别是有限的;信息检索领域更注重高准确率,命名实体识别则更侧重高召回率;与其他信息检索领域相比,实体命名评测预料较小,容易产生过拟合;面对识别多种类型时命名实体的系统性能较差等。对此,本项目开始了进一步的探索。

1.2 搭建标注框架

在实现算法标注之前,搭建切实符合项目需求及源数据特征的标注框架尤为重要,知识图谱(Knowledge Graph)主要由实体、关系和属性构成,信息抽取(Information Extraction)是构建知识图谱的重要环节,用于实现从文本中抽取出三元组信息,然后将抽取后的多个三元组信息储存到关系型数据库中,便可得到一个简单的知识图谱,为接下来的算法标注明确了实体结构。

1.3 算法标注

自然语言普遍利用连贯的词汇来描述事物、表达情感、阐述观点等,同时不同语种词汇的组合方式也不同,例如在词法结构上中文与英文就存在较大的差异,其中最为明显的差别是英文将词组以空格的形式区分开来,所以自动化抽取的过程也相对简便,而中文的词组彼此相连,且一个词组往往由两个及以上的字来组成,则需要通过分词工具来将语句拆分,正确实现拆分,才能进一步理解自然语言的内容和意图。

关系抽取的常用算法一般有三种:基于规则的方法、监督学习的方法、半监督学习的方法。本项目结合了前面两种方法,即保证了标注的召回率,同时也大大提高了效率和准确度,下面是方法介绍。

基于规则的方法。例如找出尽可能多的拥有”is-a”关系的实体对(entity,is-a,entity),提取出前后两个实体。这个方法在工业实践中被普遍利用,其优点是不需要训练数据且结果比较准确,但召回率较低,且规则难以设计。

监督学习的方法。该方法需要定义实体类型以及关系类型,同时准备足够比例的训练数据以确保实体标注和关系标注的准确率,利用NER实体识别工具定义出实体类型,再提取其特征放入分类算法。还可以通过抽取位置特征:如单词是否在第一位,两个实体单词之间还有多少单词。最后将训练数据放入LR,SVM或者神经网络模型中进行训练。

1.4 搭建神经网络

如图1所示,应用于NER中的biLSTM-CRF模型主要由Embedding层,双向LSTM层,以及CRF层构成。NER方法中的主流模型biLSTM-CRF,可利用窗口方法与句子方法两种网络结构来进行NER。

图1 NER网络架构

窗口方法是指仅使用当前预测词的上下文窗口进行输入,然后使用传统的NN结构;句子方法则是以整个句子作为当前预测词的输入,以便加入句子中相对位置特征来实现词组区分,然后使用了一层循环神经网络CNN结构。从而摒弃了原始的特征工程,使用词向量和字符向量完成了较为精确的词组区分,如果词典特征可以有更高的质量,还能实现更好的效果。

2 NER网络架构训练结果

2.1 语料准备

Embedding:我们选择Medscape语料来训练字向量和词向量。

基础语料1:采用Medscape2011语料作为训练语料。

基础语料2:Medscape语料作为官方语料,其权威性与标注正确率是有保障的。但由于时间相隔较久,且实体类型种类较少。为了提升对新类型实体的识别能力,我们收集了Medscape2013语料。主要包括Drug,Brand,Group,Drug_n,包含了人类药品、品牌名、药物组乃至人类无法使用的物质,例如农药或毒素。

2.2 标注样式

本项目选用BIO标注法,实体起始位置以“B”标注,实体内容位置以“I”标注,非实体则以“O标注”。在本项目利用的语料库中包含“DDI2011数据集”以及“DDI2013数据集”。

其中“DDI2011数据集”中只含有一种实体名称:药物。于是我们将句子中的每个单词都标记为“B/I-DRUG”或“O”训练和测试的数据集分别包含435和144个文档,4267和1539个句子,11,260和3689种药物。

而“DDI2013数据集”中含有四种实体名称:Drug,Brand,Group,Drug_n。包含了人类药品、品牌名、药物组乃至人类无法使用的物质。训练和测试的数据集分别包含507和163个文档,5239和2095个句子,13,875和4972种药物。

实际应用中,NER模型通常只要识别出人名、地名、组织机构名、日期时间即可,一些系统还会给出专有名词结果(比如缩写、药物组、产品名等)。货币、百分比等数字类实体可通过正则搞定。

2.3 识别结果

训练集、验证集、测试集以“7:1:2”的比例划分。其中训练集达到49600条的样本数,标注实体共88192个。

命名实体识别结果案例:

结合Bert-NER和特定的分词、词性标注等中文语言处理方式,获得更高的准确率和更好的效果,能在特定领域的信息抽取任务中取得优异的效果。

2.4 数据增强

对于深度学习方法,一般需要大量标注语料,否则极易出现过拟合,无法达到预期的泛化能力。我们在实验中发现,通过数据增强可以明显提升模型性能。具体地,我们对原语料进行分句,然后随机地对各个句子进行bigram、trigram拼接,最后与原始句子一起作为训练语料。

2.5 训练结果

本项目结合了基于规则的方法和监督学习的方法,即保证了标注的召回率,同时也大大提高了效率和准确度。顺利的在医疗药物领域的信息抽取任务中取得优异的效果,组准确率为0.94。

总结:基于神经网络结构的NER方法,继承了深度学习方法的优点,无需大量人工特征,只需词向量和字符向量就能达到主流水平,加入高质量的词典特征能够进一步提升效果。本项目结合了基于规则的方法和监督学习的方法,即保证了标注的召回率,同时也大大提高了效率和准确度。针对医疗药品数据中的自然语言的关系抽取和信息检索任务,命名实体识别是一个高效且强有力的重要工具,推动了本项目的顺利进行。

猜你喜欢
信息检索词组语料
基于语料调查的“连……都(也)……”出现的语义背景分析
医学期刊编辑中文献信息检索的应用
在网络环境下高职院校开设信息检索课的必要性研究
基于神经网络的个性化信息检索模型研究
华语电影作为真实语料在翻译教学中的应用
《苗防备览》中的湘西语料
国内外语用学实证研究比较:语料类型与收集方法
副词和副词词组
公共图书馆信息检索服务的实践探索——以上海浦东图书馆为例