Paper: https://arxiv.org/pdf/2201.01647


摘要


生物医学研究正以如此指数级的速度增长,以致于科学家、研究人员和从业人员不再能够处理该领域中大量出版的文献。在文献中呈现的知识需要系统化,以使主张和假设能够很容易地被发现、获取和验证。知识图可以为文献中的语义知识表示提供这样的框架。然而,为了构建知识图,需要以生物医学实体之间关系的形式提取知识,并对实体和关系类型进行规范化。在本文中,我们提出并比较了一些基于规则和基于机器学习的方法(以朴素贝叶斯和随机森林为例的传统机器学习方法和以t5模型为例的现代深度学习方法),从生物医学文献中提取可扩展的关系,并将其集成到知识图中。我们检查这些不同的方法对不平衡和相当小的数据集有多大的弹性,这表明T5模型可以很好地处理小数据集和不平衡数据, 因为它在大型C4数据集上进行预训练。表现最好的模型为平衡数据微调的T5模型,f1-score为0.88。

关键字: 知识图,信息提取,机器学习,自然语言处理,文本挖掘,文本到文本模型,链接数据

介绍


发表的科学文献,特别是生物医学文献的数量呈指数增长。2020年,生物医学文献库Medline (National Library of Medicine, 2020)新增文献95万余篇,平均每天发表生物医学论文2600余篇。科学家、研究人员和专业人员无法处理他们所在领域发表的大量研究,需要工具来帮助他们找到相关文章,审查和验证声明和假设。

寻找相关文章是自然语言处理的信息检索子领域所承担的任务。研究了多种信息检索方法,并建立了生物医学领域特定信息检索应用程序,如PubMed、PubMedCentral、Quertle、Embase等。信息检索引擎可以使用命名实体识别算法和实体规范化技术(通常使用字典或术语),通过返回与搜索概念在语义上最相关的文章来改进搜索结果,而不考虑搜索实体使用的形式或同义词(Jonnalagadda和)Topham, 2010;Jonnagaddala等人,2015年;哈卡拉等人,2016)。然而,信息检索只提供搜索词或概念的相关文章列表。为了验证假设或主张,研究人员仍然需要阅读大量的文献,这可能是耗时的。

研究人员经常想要验证的假设和主张可以用一个简单的句子概括,其中包含两个相互作用的概念和一个描述它们相互作用的谓词(例如阿司匹林 治疗 扭伤)。假设和主张被称为概念之间的关系。这些命名的关系可以从生物医学文献的证据(文章中的句子,陈述它们)中提取出来。此外,实体可能会与许多其他实体建立关系,最终生成一个大型的知识图。这个知识图可以通过连接(A->B,B->C,因此A->C)来推断知识,甚至可以应用图机器学习来发现可能缺失的边(关系),或者发现药物发现过程中潜在的线索和靶点。

验证声明的方法,以及从知识图中的语句推断新知识的方法,已经在知识图数据库领域进行了研究,语义网和图机器学习。然而,为了能够对知识图进行推理和验证,需要从文本中提取知识并将其归一化。生物医学领域的大多数非规范化研究主要考虑命名实体的规范化,如疾病、基因和复合体。另一方面,对生物医学关系的正常化却没有给予足够的重视。规范化关系(图边)是知识图成功系统化的支柱。

本文提出了一种药物、靶点和疾病之间关系归一化的数据模型。我们还研究和比较了几种基于规则和基于机器学习的方法。最后讨论了知识图创建方法的结果。

背景


知识图的历史很长,一直延伸到20世纪70年代(Schneider, 1973)。知识图是一种灵活的知识表示框架,将知识表示为相互关联的概念图。用图表示知识在场景中有很多实际的好处, 这涉及到集成、管理和从不同的和异构的数据源中提取价值。以图形表示知识的想法,特别是语义网的影响,以及谷歌在2012年宣布的知识图开发,随后其他主要的技术行业参与者(Hogan et al., 2021)。最近,我们可以看到知识图在问答产品中的应用得到了更广泛的应用,如Alexa、谷歌Assistant或Siri (Zhang et al., 2018)。同样,制药行业识别出的潜在利益知识边缘图可以加速药物发现、药物开发、现有药物适应症的扩展和药物免疫。

为了提取信息并将其结构化以进入知识图,需要对相关实体(对于生物医学,这些可能是基因/靶标,群,疾病,疾病,细胞系,途径,器官等)进行命名实体识别,将所有可能的同义词规范化为一致的术语,最后找到共同提及的实体之间的关系,并将其规范化为一致的数据模型或本体。

自20世纪90年代末以来,生物医学命名实体识别和命名实体规范化有着悠久的研究传统。许多方法可以分为基于字典的开发,基于机器学习通常使用隐马尔可夫模型或条件随机场和基于深度学习,经常使用语言模型,如Word2vec,Elmo,Bert和其他人,Transformer。

为了将抽取的实体系统化并输入到知识图中,需要对其进行规范化处理。规范化是将表示一个概念的所有可能的术语和变体映射到一个唯一的实体id或首选术语的过程(例如,癌症的概念可以用不同的表达,如肿瘤,肿瘤,癌症,恶性肿瘤等)。长期以来,命名实体规范化依赖于好的字典和基于规则的方法。然而,近年来,已有几种基于深度学习的方法对候选实体进行排序,并使用卷积神经网络进行规范化或语言模型,如Word2Ve或BERT。

从句子中提取实际关系是构建信息的最终步骤。过去,人们对结构关系的几种研究方法进行了探讨:

•实体之间的关系的存在: 分类两个实体之间是否有实际的语义关系,或者这些实体被提到,但它们之间没有实际的关系。这种提取关系普遍存在性的方法常用于蛋白质-蛋白质相互作用或基因疾病相互作用的提取。
提取谓词动词作为关系类型:谓词不是一组可能的集合。任何出现在句子中表示实体之间关系的谓语动词都被视为关系类型。关系类型的规范化留给进一步的处理或分析。一些研究数据库,如Open Targets使用这种方法,以及一些允许关系提取的商业工具。
正常化关系类型: 谓词被规范化为一组定义良好的类型。这种方法需要精心设计的可能关系的数据模型,以及精心开发的用于机器学习或提取规则的数据集。这种方法的数据集很少。BioCreative VI和Biocreative VII提供了关于化学-蛋白相互作用的数据和共享任务。
从方法的角度来看,可以使用基于机器学习或基于规则的方法进行关系提取。基于规则的方法包括使用与关系相关的关键字列表以及概念和关键字之间的距离, 为我们提供依赖解析器,并评估概念在语法意义上是否相关。另一方面,机器学习方法可以分为两类(1)监督学习,精心制作数据集(2)半监督或远程学习方法,其中数据集是基于已知的关系扩展的,假设提到相同的实体会产生相同的关系。自2009年以来,远程学习方法越来越流行,并被证明是有效的关系提取方法,尽管假设相同实体的所有提及都包含相同的关系,但这并不总是正确的,而且会增加噪音。除了这两种常用的方法外,混合方法,结合规则、依赖树和机器学习方法已经成为关系抽取的流行方法。

方法


在本文中,我们比较了关系提取方法。我们所有的方法都使用内部改进的Linnaeus工具进行命名实体识别和规范化。对于关系抽取,我们提出并比较了三种方法:(1)基于规则的方法,基于句型和触发动词和短语的词典 (2)基于传统机器学习模型的机器学习方法(即朴素贝叶斯、随机森林) (3)基于文本到文本转换器T5模型的深度学习方法。

命名实体识别与规范化(Linnaeus修改)
命名实体识别是由内部修改版的Linnaeus工具完成)。我们添加了许多特征,使我们能够执行更灵活的实体匹配,同时依赖于快速可靠的Linnaeus算法和好的字典。添加特征介绍:

•使用空格将定义的字符集为,并将多个顺序空格字符处理为单个空格字符。
•实现全局标志,允许在需要时忽略匹配中的字母大小写。
•字典术语自动复数(添加-s和-es后缀)的标志。
•一种能够处理和改写希腊文字(如β - β)的功能,以及能够处理希腊文字位置变化的功能(如干扰素-α vs α -干扰素)。
•去掉或忽略变音符
•同义词级别精确、区分大小写和正则表达式匹配
•标记只匹配最长的匹配
用于命名实体识别和规范化实体的字典,在过去的15年里,由我们内部的信息科学家仔细地开发、扩展和完善。我们已经使用了人类基因、疾病和已批准药物的字典。

关系数据模型


关系是指药物、基因和疾病实体之间的关系。感兴趣的三对关系是 (1) Drug-Gene, (2) Drug-Disease和 (3) Gene-Disease。每一对都可能有一些不同的关系类型。

Drug-Gene 关系


化学和蛋白质之间的关系是BioCreative在2017年1月和2020年2月最后两个共同任务的主题。

这两个任务都定义了相同的交互类型。这些可以在表1中看到。但是,出于大多数目的,某些定义的类型可能是多余的。因此,我们通过合并一些类并排除文本中很少提到的类来简化数据模型。最后,我们的Drug-Gene模型有如下关系类:

Up-regulator/activator
Down-regulator/inhibitor
Regulator
Part of
Modulator
Co-factor
Substrate or product of
注意,Regulator是一种关系,在这种关系中,不可能从句子中确定监管的方向。

Drug-Disease 关系


药物和疾病之间的关系没有任何以前共享任务中使用的黄金标准数据模型。因此,提出了一个包含以下关系类的新模型:

Therapeutic use/Treatmen
Cause/Adverse event
Decrease Disease
Increase Disease
Effect on
Biomarker
在 Therapeutic use 和Decrease Disease classes, 或者 between Cause 和Increase Disease classes 似乎存在冗余。然而, Therapeutic use 和Cause指出疾病是表现还是给定药物表现。Increase 和 Decrease disease可以指任何一种发现,即给定的药物改善或恶化了疾病的状态,因此两者之间的关系较弱。最弱的关系是Effect on,因为在这种情况下,我们只知道药物对疾病有一些影响,而不知道任何其他细节(例如,它是改善疾病还是使疾病恶化)。

化合物可作为某些疾病的生物标志物。在医学和药物发现中,有一个生物标记物的发现是很重要的,因此它被包括在模型中。

Gene-Disease关系


基因与疾病的关系是三种类型中范围最复杂的一种。这是因为单个基因可以改善、恶化甚至导致某种疾病。因此,通常仅对关系类型进行分类是不够的,算法还需要提取对基因的作用模式。根据可能的关系类型,我们已经确定了以下几种:

•Plays a role:从这句话可以清楚地得出结论,基因和疾病之间有联系。然而,目前尚不清楚基因在该疾病中发挥着什么样的作用,只是它起着一些作用。
•Target:
General: 该基因或蛋白质可以被认为是特定疾病的靶点,没有更多关于疾病调节的具体信息。
•Cause: 这句话表明,基因的激活、突变或抑制或任何其他作用正在引起特定的疾病。
Modulator:
Decrease disease: 有明确的迹象表明,基因是减少和减轻这种疾病的原因。
Increase Disease: 有明确的迹象表明,基因是导致这种疾病增加和恶化的原因。
•Biomarker: 特定gene/protein的存在或缺失是诊断疾病或病理的标志物。


作用方式


与关系类一起,如果可以的话,作用模式是基因-疾病关系的重要修饰。它确定了一个基因所采取的行动,以使关系发生。例如,基因可能减少或导致疾病,这取决于该基因是被激活还是被抑制。可能的作用模式是(1) inhibition or down-regulation, (2) activation or up-regulation, (3) mutation or modification.

否定和猜测


句子中实体之间的关系可以被否定,从而使语义关系发生逆转。因此,重要的是检测关系是否为负。

同样,文本中的陈述可以是事实的、众所周知的事实或推测性的。推测需要更加谨慎,因此,推测检测包括在我们的模型。

基于规则的关系抽取方法


基于前面描述的关系模型,我们开发了一种基于规则的关系抽取方法。该方法依赖词汇来获取关系触发词、否定线索、推测线索、动作模式(MoA)线索和语法规则集。该方法依赖词汇来获取关系触发词、否定线索、推测线索、动作模式(MoA)线索和语法规则集。该方法依赖词汇来获取关系触发词、否定线索、推测线索、动作模式(MoA)线索和语法规则集。词汇的例子和规则集中的模式,以及使用给定的规则和词汇抽取关系的例子句子,如图1所示



触发词词汇包含一个关系触发词和短语列表,带有元数据,例如给定的单词或短语映射到哪个关系,在哪个实体之间,实体是否必须按照给定的提及顺序或可以倒序(例如,对于药物-疾病关系,是否允许在句子中药物位于疾病之后),以及该短语是否应解释为正则表达式。

动作模式线索映射到动作类型的模式(即抑制、激活、突变), 否定和推测线索的词汇表是简单的词汇表(例如:no, not for negation;假设(assume)。

在语法中是为了提取关系而需要匹配的已定义序列。该语法中有几个关键词,如“Subject”指的是主语实体,“Predicate”指的是谓语实体,“Trigger”指的是触发线索。”Speculation”指的是推测,”Negation”指的是否定, “Subject type”,是指当前评价对实体中不属于主体,但与主体实体类型相同的实体。“Predicate type”,指的是具有与谓词相同类型的实体,但未在当前对中进行评估。此外,在标签实体、触发词、否定和推测短语之间可能定义了许多词。例如下面的模式:

将匹配以下序列:推测线索后面跟着最多3个token,后面跟着Subject,后面跟着最多3个token,后面跟着触发短语,后面跟着另外三个token和谓词。这意味着它将匹配以下句子: “We hypothesise that aspirin can alleviate most cases of headache”, 假设,如果token“hypothesise”在推测线索列表中,“”aspiri” 被标记为 drug,是subject。“”headache”是disease和predicate。“alleviate”是一个触发词。

匹配算法在每个句子中迭代标记的实体,并找到所有可能构成关系的对。它用潜在的触发短语、推测线索和否定来注释句子。最后,该算法尝试将语法中的任何模式与句子中的序列进行匹配。如果匹配成功,则提取关系,并将其映射到关系类型和元数据,例如动作模式、否定和猜测线索。

置信度得分通过在句子中精确匹配命名短语的单词比例(主语、谓语、触发、猜测、否定),除以模式中的所有单词来计算(这包括作为允许距离标记的一部分匹配的命名短语和标记,例如语法中每个W3语句最多三个单词)。

此外,该方法还对共现进行了提取,使其固定置信度为0.0001,并对其进行”Cooccurrence“标记。

每个提取的关系包含关于实体(entity string, type, preferred term, internal ID)、关系类型、是否为负、是否为推测以及置信度的信息。关系类型,是否否定,是否推测,以及置信度得分。此外,评估语句和发现证据的文章的Medline ID也被记录下来。

Machine learning


我们开发了两种机器学习方法。第一种方法是基于传统的机器学习算法,如随机森林,朴素贝叶斯的句子分类。另一种方法是使用被称为T5的经过微调的文本到文本算法。

训练数据集和测试数据集


使用基于规则的Gene-Disease关系提取器来收集数据。评估我们对基因疾病数据的方法,因为它被证明具有最复杂的数据模型,因此是最复杂的正确提取关系。此外,从生物医学的角度来看,这种关系类型也很重要,因为它可以为治疗各自疾病的潜在目标提供见解。在这个数据集中,有2000个句子被人类注释者审查和修正。为此,我们与一家名为Molecular Connections的公司签订了合同。采用基于规则的方法获得10000个句子,置信度为1。这些句子将匹配正确的句子,因为它们不允许任何可能改变上下文的标记,除了命名短语。因此,该数据集包含大约12,000个句子。数据被分割为90%的训练数据和10%的测试数据,用于机器学习方法的训练和测试。

为了创建一个更加平衡的数据集,我们使用2000个人工标注的句子来生成第二个数据集,然后添加基于规则的方法的句子,置事度为1,这样每个关系类至少有1500个句子。

我们还创建了一个数据集分类的行动模式。我们再次创建了一个不平衡和平衡的数据集。因为对于突变类我们只有140个例子,所以我们最初通过从每个类中取140个例子来平衡数据集。这是一个相当小的数据集,可以通过添加examples来提升。我们已经创建了一个额外的数据集,从每个类中获取300个数据样本,允许重复示例,因为没有足够的样本(突变)。

随机森林和朴素贝叶斯分类器


在随机森林分类器和朴素贝叶斯分类器中,都使用Porter Stemmer对句子进行tokenized和stemmed。由于在关系提取中,单词序列的检查是很重要的,所以我们的分类器的特征是uni-grams, bi-grams, tri-grams and four-grams。最后,利用随机森林和朴素贝叶斯分类器对数据进行训练。

Text-to-text 模型


我们有经过微调的T5模型,可以在huggingface上轻松获得。T5模型是一个可以进行微调的多任务模型,在对模型进行微调时可以添加新的任务。这个模型是文本到文本的模型,这意味着输入和输出都是文本。输入文本通常带有前缀,用于指定任务。我们为gene-disease关系分类和基因作用模式分类增加了一个新的前缀(有四类:activation, inhibition, mutation, and not reported。我们使用Adafactor优化器对数据集上的模型进行了微调。

在训练和测试句子时,在训练和测试句子中,预先准备文本的方式是,关系的主语(如基因)被关键字subject替换,关系的谓语(如疾病)被关键字PREDICATE替换。因此,我们假设该模型的内部注意机制能够学习如何处理关系中的主语和谓语的邻近关系。

结果

基于规则的关系提取


到2021年1月为止,我们已经处理了基本Medline数据,其中包含约3500万篇摘要。在一台机器上,使用Linnaeus和关系提取引擎进行处理大约需要7天。我们成功地提取了总计4,784,985个关系(共发生次数为3,5,900,521)。药物-基因(Drug-Genes)之间有635573种已命名关系(68885810种包括共发病),药物-疾病(Drug-Diseases)之间有1468639种关系(8378599种包括共发病),基因与疾病之间有2684742种关系(20,065385种包括共发病)。

提取的关系可以加载到图或关系数据库中,这些关系作为证据可以回答复杂的医学问题。通过将置信分数相加,就有可能检索出与给定药物相互作用的基因(例如,Tolvaptan药物的最佳结果是抑制AVPR2,而第二个结果是抑制抗利尿激素受体家族),对某种疾病有效果的药物(例如,对于常染色体显性多囊肾病,获得Tolvaptan(已批准用于常染色体显性多囊肾病),西罗莫司(可抑制mTOR,也常用于多囊肾病),以及生长抑素,这是一种在治疗常染色体显性多囊肾病方面具有潜在作用的激素(Messchen- dorp et al., 2020)。或者什么基因对给定疾病是重要的(例如,对于常染色体显性多囊肾病,将PKD1和PKD2作为两者都发挥作用并与疾病有因果关系的靶点, 以及mTOR、REN、CCL2。)我们评估了一项与常染色体显性多囊肾病相关的病例研究。我们绘制了一张图其边缘在常染色体显性多囊肾病中。为了减少噪声,我们只考虑那些在PubMed中被提到至少5次的代表关系的边。然后,我们已经评估了图表,所有实体确实是从文献到专家的。以ADPKD为结束关系的部分知识图如图2所示。



图2:知识图谱切片显示与常染色体显性多囊肾病(ADPKD)相关的节点。橙色实体是疾病(ADPKD),蓝色的实体是药物,绿色是基因/蛋白质。边缘上的标签表示两个实体之间给定关系的关系类型、提及次数和累积置信度。

我们评估了100篇包含至少一种关系的摘要,并手工计算了精度、召回率和F1-score。评估取决于触发短语的程度和语法的完整性,这些都是随着时间的推移而改进的。测量的成绩为0,88精度,0,74召回和0,80 F1-score。预期基于规则的方法具有较高的准确率和较低的查全率,因为它会遗漏一些关系,但注释的误报相对较少。尽管建立了一些假阳性关系,但在回答基因、药物和疾病之间的相关生物医学问题时表现良好。累积效应是,可以通过设置一个阈值来忽略噪声,并在必要时手动验证低于给定阈值的结果。

基于朴素贝叶斯和随机森林的关系提取
机器学习方法在两个集合(2000个人工标注的关系+ 10000个置信度为1的随机关系-不平衡集和2000年,手动注释关系+随机关系与置信度为1的每个类别至少有1,500例 - 平衡集)上进行评估。我们的评价结果见表2。



平衡数据显著提高了两个分类器的精确度和召回率。在不平衡数据的情况下,朴素贝叶斯学会了总是选择最有可能的类-结果最多的类。随机森林分类器在学习如何识别类方面表现较好。然而,平衡数据在朴素贝叶斯中获得26%的f1得分,在随机森林中获得14%的总结果。最差的性能有一个类,由于缺少标注例子,我们无法平衡它–No Explicit relationships。其他类别的f1分数超过70%。

T5-based关系提取
通过在不平衡和平衡数据上添加新的前缀(”Relationship extraction:”),我们对关系提取的基础T5模型进行了微调。我们已经监测了多个epochs的算法性能。结果如图3所示。



平衡数据也改善了T5模型,尽管性能只增加了2% (f1得分在5个epoch后从0.86增加到0.88)。但在非平衡数据集中,某些关系类型的查全率与查准率之间存在较大差距(例:” No Explicit relationship” P=0.88, R=0.26)而在平衡数据集中,准确度和召回率更接近(同一类P=0.88, R=0.72)。

我们在表3中给出了五个时期后的关系分类结果。



我们还创建了一个作用模式模型,将与基因相关的作用模式分为四种可能的类别:激活、抑制、突变和未报告。该模型在非平衡和平衡数据集上进行训练(每个类包含300个样本)。模型经过5个epochs的训练。结果如表4所示。



动作模式检测在数据量很小的情况下表现良好。这是因为用于动作模式的术语处于相对闭合的组(activation, inhibition, inhibitor, agonist, antagnonist, mutation, modulation, etc.等),语言模型能够从时间模型转移和推断它们预先在C4数据集上训练。然而,添加数据有助于改善它。然而,由于第一个平衡数据集的测试数据相当小(包含56个样本),当测试不同批次的未见数据时,性能可能会有差异。

讨论及结论
在本文中,我们提出了一种基于规则的方法,它主要作为获取生物医学关系数据的起点。此外,我们将传统的机器学习方法与现代的、最先进的语言模型和Transformer方法(T5模型)进行了比较。在所有方法中,当我们使用平衡数据集时,都得到了明显的改善,然而,经过微调的T5模型更有弹性,不像一些旧的和传统的方法那样依赖于平衡数据集。而T5模型,由于它对更大的数据进行了预训练,所以能够很好地从较少量的数据中归纳出结论。

为关系提取等任务开发机器学习数据集可能非常昂贵。在市场上,一个带注释的句子的价格可以在1-3欧元之间,取决于任务的复杂性。但是,一旦数据集有7个注释类,并且数据集中每个注释类需要超过1000个示例,这种方法就会迅速扩展。我们的数据集(总共约7000句话)的委托手工注释花费了1.62万欧元。进一步的成本来自云基础设施和机器学习工程。开发关系抽取模型和方法的成本仍然是主要的挑战之一。

然而,对T5模型进行微调被证明是一种很有前途的方法。首先,该模型的性能优于所有其他方法,总体上接近90%的f1分,大多数标注类超过85%的f1分。此外,该模型在准确率和查全率方面都表现出了稳定性,在大多数类别中,两者都是相似的(不像基于规则的方法,有很高的准确率,但查全率相当低)。另一方面,T5模型是多任务模型,它可以用一个模型成功地解决多个问题,这在管理和更新模型方面节省了宝贵的费用。最后,经过微调的T5模型,因为它们是文本到文本的模型,很容易使用,数据准备也很简单。

就局限性而言,T5模型属于大型多任务模型,其基模型包含2.2亿个参数。例如,它的大小是BERT基模型的两倍,它极大地提高了微调的速度,使过程变慢。