CN114582443A - 一种基于知识图谱的药物关系抽取方法 - Google Patents

一种基于知识图谱的药物关系抽取方法 Download PDF

Info

Publication number
CN114582443A
CN114582443A CN202210166924.3A CN202210166924A CN114582443A CN 114582443 A CN114582443 A CN 114582443A CN 202210166924 A CN202210166924 A CN 202210166924A CN 114582443 A CN114582443 A CN 114582443A
Authority
CN
China
Prior art keywords
drug
knowledge
classification
medicine
relationship
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210166924.3A
Other languages
English (en)
Other versions
CN114582443B (zh
Inventor
孙霞
金鑫
陈嘉诚
卞婷
王明磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shaanxi Jinzhong Qintong Digital Technology Co.,Ltd.
Original Assignee
Northwest University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northwest University filed Critical Northwest University
Priority to CN202210166924.3A priority Critical patent/CN114582443B/zh
Publication of CN114582443A publication Critical patent/CN114582443A/zh
Application granted granted Critical
Publication of CN114582443B publication Critical patent/CN114582443B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/90Programming languages; Computing architectures; Database systems; Data warehousing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2415Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/70Machine learning, data mining or chemometrics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A90/00Technologies having an indirect contribution to adaptation to climate change
    • Y02A90/10Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Biology (AREA)
  • Chemical & Material Sciences (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Medical Informatics (AREA)
  • Animal Behavior & Ethology (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

本发明涉及一种基于知识图谱的药物关系抽取方法,通过PubmedBERT并结合注意力获取药物描述的语义特征,用药物关系抽取数据集和DrugBank数据库构建药物关系知识图谱,通过RotatE模型得到药物的知识嵌入特征;同时获取药物关键路径特征;最后组合药物描述的语义特征、知识嵌入特征和关键路径特征送入多层感知机中分类,同时使用基于知识嵌入的多分类FocalLoss损失函数训练神经网络分类模型,并根据分类模型结果计算分类准确率。通过使用注意力机制获取更符合药物关系抽取任务的语义特征,同时使用知识图谱嵌入,使网络模型具有更好的可解释性,最后通过改进的多分类Focal loss损失函数,有效缓解了数据集分布不均衡问题,使最终分类结果有所提高。

Description

一种基于知识图谱的药物关系抽取方法
技术领域
本发明涉及自然语言处理、关系抽取和计算生物医学等技术领域,具体而言,具体涉及一种基于知识图谱和KE-MFL Loss的药物关系抽取方法。
背景技术
药物在我们的日常生活中具有重要的作用,能够帮助我们维护身体的健康。当我们同时服用两种以上的药物时,药物之间会可能会发生拮抗作用,而药物之间拮抗作用会危害我们的身体健康,严重情况下,会危及我们的生命安全。因此,需要及时的获悉两种药物之间是否会产生拮抗作用,是否会对我们的生命健康产生危害。
目前,已经存在一些药物关系查询数据库,如DrugBank和PharmGKB等。但是这些数据库的内容均是由人工来维护的,数据更新不及时而且要耗费大量的人力物力。所以,自动的从海量的生物医学文献中抽取药物之间关系(Drug-drug Interaction Extraction,DDIE)的需求应运而生,而当前主要使用的便是神经网络的方法。
神经网络模型方法主要步骤是:使用海量的数据训练出一个神经网络模型,该模型能够学习到数据中的一些特征,然后使用该训练好的模型来预测新的药物之间关系。但神经网络由于其黑盒特性,对其预测结果往往没有较好的可解释性。
目前经常使用的药物关系抽取数据集是SemEval 2013年一个共享任务所公开的数据集,即DDIE 2013。但该数据集的正负例分布极不均衡,其中负例占比更是超过了80%。同时,该数据集只提供了药物相互作用关系的描述文本,所包含的知识内容比较有限,不能够提供更多的外部知识,导致网络模型分类结果不准确。
综上所述,可以看出现有的神经网络分类方法中,主要存在数据集分布不均衡,以及包含外部知识较少的问题,进而导致了现有模型分类不准确的结果。
发明内容
针对于目前药物关系抽取领域中,数据集包含的知识有限以及数据集分布不均衡等缺陷或者不足,本发明的目的在于,提供一种基于知识图谱的药物关系抽取方法,该方法使用基于知识图谱的神经网络模型结构来补充外部知识,使用基于知识嵌入的多分类Focal Loss损失函数来缓解数据分布不均衡及样例错分的问题,然后进行药物关系的分类。
为了实现上述任务,本发明采用如下的技术解决方案予以实现:
2、一种基于知识图谱的药物关系抽取方法,其特征在于,包括以下步骤:
步骤S1:数据预处理
将原始的药物数据集进行处理,并按以下三种规则进行:
规则1:一个实例中是否包含相同药物名;
规则2:两种药物之间是否有一个药物为另一个药物的子类;
规则3:两种药物之间是否存在关键路径;
根据上述三种规则去除掉负例数据实例,得到预处理后的数据集;
步骤S2:语义特征表示
所得到预处理后的数据集,将这些数据实例,依次送入PubmedBERT中获取语义特征,同时使用注意力机制来获取每个实例的语义特征,这些语义特征是考虑了不同语法特征的综合语义特征;
步骤S3:药物关系知识图谱构建
将原本药物关系抽取数据集融入到DrugBank数据库之中,形成需要的药物关系知识图谱;
步骤S4:知识嵌入特征表示
在构建好需要的药物关系知识图谱之后,将得到的药物关系知识图谱,选择RotatE知识嵌入模型来得到对应的知识嵌入特征;
步骤S5:关键路径特征表示
使用Stanza工具获取两个药物实体间的关键路径信息,在此基础之上,获取原始药物描述文本的关键路径特征;
步骤S6:神经网络分类
将得到的语义特征、关键路径特征以及知识嵌入特征拼接之后,能够得到包含不同特征的向量集合,接着将这些向量平均化之后送入到多层感知机中进行分类,将多层感知机分类的结果送入到Softmax中,进行归一化;
最后将得到的向量进行五分类,得到最终的分类结果;同时选择使用基于知识嵌入的多分类Focal Loss损失函数训练神经网络,该损失函数能够有效的缓解数据分布不均衡以及神经网络错分的问题,使神经网络模型的最终分类结果取得较高值;
步骤S7:药物关系查询原型系统设计
通过前述步骤抽取出需要的药物关系,接着将抽取出的药物关系存储至数据库之中,然后,设计药物关系抽取原型系统,以方便用户查询相关的药物信息;该药物关系查询原型系统包括用户注册、用户登录、药物关系查询以及药物信息管理模块。
上述基于知识图谱的药物关系抽取方法构建的药物关系分类模型,包括依次连接的数据预处理模块、语义特征表示模块、药物关系知识图谱构建模块、知识嵌入特征表示模块、关键路径特征表示模块、神经网络分类模块和药物关系查询原型系统设计模块。
本发明的基于知识图谱的药物关系抽取方法,与现有技术相比,带来的技术创新在于:
通过使用PubmedBERT和注意力机制来获取药物关系抽取数据集实例的语义特征,通过这种方式获取的特征能够考虑不同的语法结构信息,得到的语义特征更贴近于药物关系抽取任务,进一步使最终的分类结果也更准确。
首次将知识图谱应用于药物关系抽取领域,通过融合药物关系抽取数据集和DrugBank数据库中包含的药物关系数据,形成我们需要的药物关系知识图谱,融合了更丰富的外部知识,进而使得最终的模型包含了更多的先验知识。
提出了基于知识嵌入的多分类Focal Loss损失函数,该损失函数能够有效的缓解数据集分布不均衡的问题以及样例错分的问题。同时,通过该损失函数,也能够增加模型的可解释性。相较于以前学者的工作,本申请的基于知识图谱的药物关系抽取方法提高了模型的可解释性,缓解了神经网络黑盒的特点,以及不可解释的问题。
附图说明
图1为本发明的基于知识图谱的药物关系抽取方法整体流程图;
图2为药物关系查询原型系统结构示意图;
以下结合附图和实施例对本发明作进一步的详细说明。
具体实施方式
以下实施例中,所列的参考文献被应用:
【1】Liu,S.et al.Drug-drug interaction extraction via convolutionalneural networks.Comput.Math.Methods Med,2016。
【2】Peng,Y.et al.Transfer learning in biomedical natural languageprocessing:an evaluation of BERT and ELMo on ten benchmarking datasets.In:Proceedings of BioNLP,2019。
【3】Xia Sun,Ke Dong.et al.Drug-Drug Interaction Extraction viaRecurrent Hybrid Convolutional Neural Networks with an Improved FocalLoss.Entropy,2019。
【4】Zhu Y,Li L,Lu H,et al.Extracting drug-drug interactions from textswith BioBERT and multiple entity-aware attentions.Journal of biomedicalinformatics,2020。
【5】Asada M,Miwa M,Sasaki Y.Using Drug Descriptions and MolecularStructures for Drug-Drug Interaction Extraction fromLiterature.Bioinformatics,2021。
除非有特殊的说明,本发明中的相关术语和方法均根据本领域中普通技术人员的认识理解或者采用已有相关方法实现。
参照图1,本实施例给出一种基于知识图谱的药物关系抽取方法,主要包括的步骤有:数据预处理、语义特征表示、药物关系知识图谱构建、知识嵌入特征表示、关键路径特征表示、神经网络分类,其中:
步骤S1:数据预处理
将原始的药物数据集进行处理,并按如下规则:
规则1:一个实例中是否包含相同药物名;
规则2:两种药物之间是否有一个药物为另一个药物的子类;
规则3:两种药物之间是否存在关键路径;
根据上述规则去除掉负例数据实例;
首先将原始的药物数据集处理,形成所有药物两两实体之间相互作用的数据集。对数据集中的药物实体进行掩码标记,分别标记为Drug0,Drug1和Drug2。其中,当前关注的两个药物实体则标记为Drug1和Drug2,表明这两种药物实体之间有某种相互作用关系,而当前不关注的其他药物实体,则用Drug0来标记。
接着根据一定的过滤规则,如Drug1和Drug2表示同一个药物实体,或Drug1为Drug2的子类等,去除掉这些负例数据。同时,通过使用斯坦福大学发布的工具Stanza,获取两个药物实体Drug1和Drug2之间的关键路径,如果这两个药物实体之间无关键路径时,认为该实例为负例,也将其过滤,即可构成所需要处理的数据集;
步骤S2:语义特征表示
所得到预处理后的数据集,将这些数据实例,依次送入PubmedBERT中获取语义特征,同时使用注意力机制来获取每个实例的语义特征,这些语义特征是考虑了不同语法特征的综合语义特征;
步骤S3:药物关系知识图谱构建
将原本药物关系抽取数据集融入到DrugBank数据库之中,形成需要的药物关系知识图谱;实现的方法是:
首先将原始的药物关系数据集整理为知识图谱需要的三元组格式,形成知识图谱{KG_DDIE};然后,从DrugBank数据库中抽取出药物关系的三元组集合,形成知识图谱{KG_DrugBank};最后,将上述两个三元组集合融合,形成最终需要的药物关系知识图谱{KG_DRUG};
步骤S4:知识嵌入特征表示
在构建好需要的药物关系知识图谱之后,将得到的药物关系知识图谱,选择RotatE知识嵌入模型来得到对应的知识嵌入特征;
步骤S5:关键路径特征表示
通过使用斯坦福大学所提供的自然语言处理工具Stanza,来获取两个药物实体之间的关键路径信息;在此基础之上,获取原始药物描述文本的关键路径特征;
首先使用Stanza工具,处理数据预处理之后得到的数据集,得到分词之后的文本数据,之后标记该实例中的药物实体Drug1和Drug2;然后使用Stanza工具获取Drug1和Drug2的关键路径信息,通过设置关键路径中的关键词为1,非关键词为0,即可得到数据集中该实例所对应的关键路径信息;
步骤S6:神经网络分类
将得到的药物关系描述的语义特征、知识嵌入特征以及关键路特征,合并之后送入多层感知机中进行分类,然后将多层感知机分类的结果送入到Softmax层中进行归一化;同时使用基于知识嵌入的多分类Focal Loss损失函数训练神经网络,最后通过多层感知机输出进行分类;
最后将上述步骤得到的特征使用分类网络分为5类,得到最终的分类结果,而分类神经网络模型则使用基于知识嵌入和多分类的Focal Loss损失函数来训练,该损失函数能够有效缓解药物关系抽取数据集分布不均衡以及样例错分的问题,进而使得最终的分类结果取得较高值。
步骤S7:药物关系查询原型系统设计
通过前述步骤已经抽取出需要的药物关系,然后将得到的这些药物关系存储至数据库之中。设计药物关系抽取原型系统,以方便用户及时查询某两种药物之间的信息。该药物关系查询原型系统主要包括了用户注册、用户登录、药物关系查询以及药物信息管理等模块。
实施例1:
采用上述基于知识图谱的药物关系抽取方法,构建基于知识图谱的药物关系分类模型;包括依次连接的数据预处理模块、语义特征表示模块、药物关系知识图谱构建模块、知识嵌入特征表示模块、关键路径特征表示模块、神经网络分类模块和药物关系查询原型系统设计模块。其中:
数据预处理模块:
该模块中,使用的数据集来源于SemEval 2013年共享任务发布的一个数据集,称为DDIExtraction 2013。同时,也可以使用从生物医学文献或网络中抓取的论文部分内容或整体内容,但应该确保所收集的数据符合语言规范,且收集的数据集中应该对相关文本进行标注,如标注对应药物实体和实例标签等信息。
一个具体示例如:“These alterations in digoxin pharmacokineticsproduced by amiodarone explain the increase in serum digoxin level that hasbeen observed when this drug combination has been used clinically.”其中,黑色字体标记的实体digoxin和amiodarone为药物实体,其余单词为普通单词,同时,该示例对应的标签类别为“Mechanism”。
同时,因为一个描述文本中,往往包含不止一种药物实体,比如“Thebenzodiazepines are a family of anxiolytic and hypnotic drugs.”,该句子中包含了三种药物实体,但是我们只关心当前句子中的某两个实体,故选择使用掩码方式,将当前关心的实体标记为Drug1和Drug2,不关注的实体标记为Drug0,则上述句子在掩码之后,变为“The Drug0are a family of Drug1and Drug2.”,这样在每个句子实例中,就只需要关注Drug1和Drug2药物实体相关信息。
该数据集包括五种类别的标签,分别为:“Int”、“Advice”、“Mechanism”、“Effect”和“Negative”。其中,“Int”类型标签表示两个药物实体可能会有影响,“Advice”类型标签表示从建议方面描述了两种药物实体之间的作用关系,“Mechanism”类型标签表示该实例从作用机理方面描述了两种药物实体之间的作用关系,“Effect”类型标签表示从作用结果方面描述了两种药物实体之间作用关系,“Negative”类型标签则说明这两个药物之间无相互作用。
得到如上述示例的数据集之后,需要使用一些过滤策略来初步过滤掉数据集中的负例数据,比如一个描述文本中,两个药物实体是相同的,此时,相同的药物实体之间是没有相互作用的,即为负例“Negative”,或者一个药物实体为另一个药物实体的子类别,这两种药物实体之间也是没有相互作用的,通过这些过滤策略可以初步过滤掉一部分负例数据。
进一步,通过使用Stanza工具,获取两个药物实体之间的关键路径信息,如果两个药物实体之间存在关键路径信息,则认为该实例是正例,并根据找出的两个药物实体间的关键路径中,设置关键词为1,非关键词为0,即可找出一个包含0或1的关键路径信息;反之,如果两个药物实体之间不存在关键路径时,则认为该实例是负例,进行过滤。
通过上述步骤之后,就能够从原始的药物关系抽取数据构建出我们所需要的数据集,通过简单的规则过滤掉一些显而易见的负例,使数据集更干净可靠,进而使分类的结果更准确。
语义特征表示模块:
该模块使用生物医学领域的PubmedBERT来获取语义特征。具体说来,首先使用BERT的分词工具tokenizer来获取对文本的分词结果,由于PubmedBERT使用生物医学领域的文本训练而成,所以PubmedBERT词库中包含的词更符合于生物医学领域相关的任务。因此,使用PubmedBERT切分出的药物关系抽取文本也更适合于该任务。接着在BERT的输出中,使用注意力机制来捕获不同层的权重,并通过和下游任务相结合,微调之后,即可得到最后的语义特征。
药物关系知识图谱构建模块:
首先从DrugBank数据库中,抽取出对应的药物关系三元组集合。DrugBank数据库是一个xml类型的文件,所以需要从该数据库中抽取当前药物实体与之有关系的药物实体,并查找出两种药物实体之间的关系。
例如,“Hexestrol”与“Olokizumab”之间关系为“Hexestrol may increase thethrombogenic activities of Olokizumab.”。由于该关系中包含了两个药物实体名称,所以需要进一步过滤掉药物实体名称,化简这种关系,以合并不同的药物实体间都具有的这种关系,则化简之后的关系为“A may increase the thrombogenic activities of B.”,所对应的三元组为:<Hexestrol,A may increase the thrombogenic activities of B,Olokizumab>,其中三元组第一个位置代表药物实体A,第二个位置代表关系类别,第三个位置代表药物实体B。其他的两种药物实体“Hexestrol”和“Racotumomab”也具有这种关系,对应的三元组为:<Hexestrol,A may increase the thrombogenic activities of B,Racotumomab>,进一步化简药物实体之间关系的种类。
通过如上所述的步骤之后,即可形成DrugBank数据库所组成三元组集合。接着,抽取DDIExtraction 2013数据集中包含的三元组关系集合,因为该数据集已经标注,且只包含五种关系类别:“Int”、“Advice”、“Effect”、“Mechanism”和“Negative”。所以形成的三元组集合也只包含了五种类别,如<EQUETROTM,mechanism,doxycycline>、<VIRACEPT,advice,astemizole>及<Cholestyramine,negative,fat soluble vitamins>等。
最后将上述两个数据集形成的三元组集合合并,形成完整的三元组集合,就构成了药物关系知识图谱{KG_DRUG},以方便后续获取对应的知识嵌入特征。
知识嵌入特征表示模块:
该模块选择使用RotatE知识嵌入模型获取对应的知识嵌入特征。RotatE知识嵌入模型能够同时建模对称关系、反对称关系、反转关系以及组合关系等不同种类的关系。同时,该知识嵌入对应的距离函数为:
Figure BDA0003516623270000111
其中
Figure BDA0003516623270000112
表示元素乘积,使用该距离函数来优化约束模型的结果。RotatE知识嵌入模型将向量投影到复数空间中,能够同时建模多种知识图谱中的关系,使用该方法在{KG_DRUG}知识图谱中训练,即可得到最终的知识嵌入特征,以供下游神经网络使用。
关键路径特征表示模块:
前述已经使用Stanza工具获取了关键路径信息,然后将得到的关键路径信息与原始的语义特征一起送入到神经网络的卷积层中,通过卷积操作Conv1d()函数,获取原始语义中关键路径的信息。通过该步骤之后,即可得到原始文本之中,在药物实体的关键路径之中的关键路径表示信息。
神经网络分类模块:
首先将前述得到的语义特征Semantic_vector、关键路径特征KeyPath_vector以及知识图谱嵌入特征KnowledgeEmbedding_vector拼接。然后将这三种特征向量送入到多层感知机模块中,得到降维之后的融合不同模块的特征向量,然后将该向量送入到Softmax层,归一化之后进行最后的分类,得到该实例属于哪一类别。
神经网络分类时所使用的损失函数为基于知识嵌入的多分类Focal Loss损失函数,具体说来,该损失函数可表示为:Loss=αLossMFL+(1-α)N(KEdrugb-KEdruga);其中,α为一个系数变量,LossMFL表示的是Multi Focal Loss损失函数,N为一个分类网络,KEdrugb和KEdruga分别表示Drugb和Druga的知识嵌入特征。
该损失函数能够有效的缓解DDIExtraction 2013数据集分布不均衡的问题和数据样例错分的问题,增加了神经网络模型的可解释性,因而提高了模型分类的准确率。通过上述步骤之后,就能判断最终该实例中的两个药物实体之间具有哪种关系。
药物关系查询原型系统设计模块:
如图2所示,该药物关系查询原型系统设计模块应该至少包括以下模块:用户注册、用户登录、药物关系查询和药物信息管理。其中用户注册指的是该系统应该提供注册功能,以方便新用户加入至系统之中;用户登录指的是在用户注册成功之后,根据相关凭证信息登入到系统之中;药物关系查询功能应该根据用户输入的药物信息,显示两种或者多种药物之间是否有相互作用关系;药物信息管理功能应方便管理人员,针对不正确或者需要补充的药物信息,能及时进行更正。
本实施例中,采用如前所述的DDIExtraction 2013数据集,通过从原始的药物关系抽取数据集中整理数据,得到的数据集总共包含了30980条实例,其中训练集有25674条,测试集有5306条。经过负例过滤预处理之后,形成的数据集总共有27325条,其中训练集有22710条,测试集有4615条数据。同时由于数据集中没有验证集,所以划分出4500条实例作为验证集,最后得到的数据集为:18210条训练集、4500条验证集和4615条测试集。
以文本“The benzodiazepines are a family of anxiolytic and hypnoticdrugs.”作为具体实例来进行描述。
首先将对应的文本分别用Drug0、Drug1和Drug2替换,成为“The Drug1 are afamily of Drug2 and Drug0.”。接着使用BertTokenizer进行分词,得到【“the”、“drug”、“##1”、“are”、“a”、“family”、“of”、“drug”、“##2”、“and”、“drug”、“##0”、“.”】。同时,由于原始的药物实体分别被Drug1和Drug2替换掉,所以在该文本之后,拼接原本的药物实体,以补充对应药物实体信息。所以最后的文本为“The Drug1 are a family of Drug2 andDrug0.Benzodiazepines anxiolytic”,而分词之后,则成为了【“the”、“drug”、“##1”、“are”、“a”、“family”、“of”、“drug”、“##2”、“and”、“drug”、“##0”、“.”、“benzodiazepines”、“anxiolytic”】。接着将分词结果转换为PubmedBERT词库对应的索引id,转换的结果为【1920、2838、1009、2032、43、3416、1927、2838、1028、1930、2838、1009、18、26555、28932】。
将上述结果送入到PubmedBERT中,同时结合下游药物关系分类网络进行微调,即可得到需要的语义特征。同时,因为BERT不同层学习到的语言特征不同,所以在BERT输出时,需要设置输出对应的隐藏层神经单元的值,以使用注意力机制来动态调节BERT不同隐藏层的权重值。遍历整个数据集,分别对每个实例按照上述操作,即可得到整个数据集语义特征的表示。
在药物关系知识图谱模块中,首先从DrugBank数据库的xml文件中抽取出符合<Subject,Relation,Object>格式的三元组集合{KG_DrugBank},其中,Subject和Object分别表示不同的药物实体,Relation则表示这两种药物实体之间的关系。按照前述的方法,化简DrugBank数据库中的药物实体之间的关系后,得到DrugBank数据库构成的知识图谱{KG_DrugBank},该知识图谱包含了3942个实体,以及273种关系。同样地,按照上述方式从DDIExtraction 2013数据集中抽取构成知识图谱{KG_DDIE},该知识图谱包含了3193个实体,5种关系。然后将两个知识图谱三元组合并,形成最后的药物关系知识图谱{KG_DRUG},这三个知识图谱包含的三元组个数如表1所示。
通过上述步骤之后,即可形成一个包含了7135个药物实体,278种关系,同时有2706564条三元组实例的知识图谱。为后续知识嵌入以及神经网络融合外部知识提供了基础。
表1:不同知识图谱三元组个数
知识图谱 训练集 验证集 测试集 总计
KG_DrugBank 1691187 495446 495524 2682157
KG_DDIE 15377 4554 4476 24407
KG_DRUG 1706564 500000 500000 2706564
知识嵌入模块中,在形成知识图谱{KG_DRUG}之后,选择RotatE知识嵌入模型获取知识嵌入特征。其中训练集有1706564条,验证集有500000条,测试集有500000条。将知识图谱中的实体集合和关系集合分别形成id到实体值或关系值的一个映射,因知识图谱嵌入中需要对应的实体或关系的id值,而非文本值。所以将关系三元组从文本映射到对应的实体id和关系id。例如,原本的关系三元组为<Zopiclone,The metabolism of A can bedecreased when combined with B,Repaglinide>映射之后对应的关系三元组为<3231,70,2563>,依次将知识图谱中所有的三元组都映射之后,送入到知识嵌入模型之中。
在知识嵌入模型RotatE中,其头实体和尾实体之间的关系符合距离函数:
Figure BDA0003516623270000141
的限制,同时设置得到的实体嵌入向量和关系嵌入向量为1000维,并进行150000次的训练迭代,即可将对应的知识特征向量和关系特征向量从稀疏空间降维到低维稠密空间之中,得到最终需要的知识嵌入特征向量。
关键路径特征表示中,通过前述步骤,已经获得了两个药物实体之间的关键路径信息,但是并没有关键路径中的语义信息表示,使用卷积操作来获取关键路径所对应的关键语义信息表示。
其中:
前述的语义特征可表示为【batch_size,seq_length,embedding_size】维度的向量,其中,batch_size为神经网络训练时,一个batch的大小,seq_length是当前bert处理文本的最长长度,embedding_size为需要得到的词嵌入长度。具体表示为【16,390,768】维的向量,而关键路径的向量维度为【batch_size,seq_length,keypath_embedding】,具体可表示为【16,390,30】,即神经网络训练的batch_size为16,处理最长文本为390,以及关键路径信息长度嵌入为30维。
接着,通过使用卷积操作,并选择最大池化操作,得到最终的基于语义的关键路径信息向量,其维度为【batch_size,embedding_size】,具体可表示为【16,768】的一个向量。
在神经网络分类模块中,首先将前述得到的文本语义特征向量、知识嵌入向量和关键路径语义特征向量相拼接,得到一个包含了不同特征的向量,该向量维度为【batch_size,embedding_size*3】,即一个【16,768*3】的向量,然后将该综合向量送入到多层感知机MLP模块中,进行降维得到一个200维的向量,即MLP(16,768*3)之后得到的向量维度为【16,200】。
然后将降维之后的向量送入到最终分类器中,即Classifier(16,200)之后得到一个【16,5】维的向量。再将结果再送入到Softmax层归一化,选择最大概率的索引为最终的预测值,即得到一个【16,1】的向量,表示最终预测的实例标签。然后使用基于知识嵌入的多分类Focal Loss损失函数,即为Loss=αLossMFL+(1-α)N(KEdrugb-KEdruga);
其中,α选择0.4,多分类Focal Loss可表示为Loss=MultiFocalLoss(5,[0.8,0.07,0.08,0.04,0.01]),其中,5表示该多分类网络是一个5分类模型,数组中小数表示不同类别数据所占的比例,依次为“Negative”、“Mechanism”、“Effect”、“Advice”和“Int”类型所占的比例。
该损失函数能够缓解数据分布不均衡及样例错分问题,通过约束正确的标签与预测标签之间的距离,多次循环训练之后,即可得到分类网络模型。
对比实例1:
该对比实例与实施例1不同的是分类网络所采用的损失函数为交叉熵损失(Reuven Rubinstein.The cross-entropy method for combinatorial and continuousoptimization.Methodology and computing in applied probability,1999.)。
对比实例2:
该对比例与实施例1不同的是分类网络所采用的损失函数为Focal Loss损失(Tsung-Yi Lin,Priya Goyal,Ross Girshick et al.Focal loss for dense objectdetection.Proceedings of the IEEE International Conference on ComputerVision,2017)。
实施例2:
通过实施例1,构建出一个分类网络模型,只使用了训练集和验证集数据,接下来,通过在测试集中来查看该模型分类结果的准确率。
语义特征表示模块中,将测试集数据依次送入到PubmedBERT中,通过注意力机制获取语义特征。例如,选择测试集文本“Combination therapy with Drug1(imiglucerase)and Drug2 is not indicated.Cerezyme ZAVESCA”作为示例。分词之后为【“combination”、“therapy”、“with”、“drug”、“##1”、“(”、“im”、“##igl”、“##uce”、“##ras”、“##e”、“)”、“and”、“drug”、“##2”、“is”、“not”、“indicated”、“.”、“cere”、“##zyme”、“za”、“##ves”、“##ca”】,下一步将对应的token转换为对应的id,得到的结果为【3921,3181,1956,2838,1009,12,2042,17780,3005,29375,102,13,1930,288,1028,1977,284,339,18,4267,9318,26112,2940,3375】,进一步即可得到语义特征。
知识图谱已经构建完成,且已经训练出知识嵌入模型,所以只需要根据对应文本查找对应的id,即可知道该药物实体的嵌入特征向量,通过查找,可以知道药物实体“Cerezyme”和“ZAVESCA”分别对应的id为4268和6423,进一步即可得到对应的知识嵌入特征。
然后在关系分类模型中,输出药物实体“Cerezyme”和“ZAVESCA”之间的关系类别。依次输出的概率分别为P(negative,mechanism,advice,effect,int)=[0.02,0.05,0.86,0.06,0.01],表示这两种药物实体之间存在负例的概率为0.02,存在“mechanism”关系的概率为0.05,而存在有“advice”关系的概率为0.86,存在“effect”类型的关系概率为0.06,存在“int”关系的概率为0.01。即可以判断出该实例类别为“advice”类别。
本实施例给出的基于知识图谱的药物关系抽取方法以及构建的药物关系分类模型,与现有技术以及对比例中的已经有的神经网络分类模型相比,各个方面参数的对比结果如表2所示。其中的准确率(P)、召回率(R)以及F值表示了评价的结果,这三个评价参数越高,模型的结果也就越好。
通过下表2中的数据可以看出,由于所使用的词嵌入模型考虑了不同的语法特征,同时通过知识图谱嵌入了外部知识,通过所提出的KE-MFL损失函数能够有效的缓解数据分布不均衡问题以及样例错分问题,进而使得模型在各个方面均有所提高,表现结果突出。
表2:与现有方法对比
Figure BDA0003516623270000181

Claims (5)

1.一种基于知识图谱的药物关系抽取方法,其特征在于,包括以下步骤:
步骤S1:数据预处理
将原始的药物数据集进行处理,并按以下三种规则进行:
规则1:一个实例中是否包含相同药物名;
规则2:两种药物之间是否有一个药物为另一个药物的子类;
规则3:两种药物之间是否存在关键路径;
根据上述三种规则去除掉负例数据实例,得到预处理后的数据集;
步骤S2:语义特征表示
所得到预处理后的数据集,将这些数据实例,依次送入PubmedBERT中获取语义特征,同时使用注意力机制来获取每个实例的语义特征,这些语义特征是考虑了不同语法特征的综合语义特征;
步骤S3:药物关系知识图谱构建
将原本药物关系抽取数据集融入到DrugBank数据库之中,形成需要的药物关系知识图谱;
步骤S4:知识嵌入特征表示
将得到的药物关系知识图谱,使用RotatE知识嵌入模型,得到知识嵌入特征;
步骤S5:关键路径特征表示
使用Stanza工具获取两个药物实体间的关键路径信息,在此基础之上,获取原始药物描述文本的关键路径特征;
步骤S6:神经网络分类
将得到的语义特征、关键路径特征以及知识嵌入特征拼接之后,能够得到包含不同特征的向量集合,接着将这些向量平均化之后送入到多层感知机中进行分类,将多层感知机分类的结果送入到Softmax中,进行归一化;
最后将得到的向量进行五分类,得到最终的分类结果;同时选择使用基于知识嵌入的多分类Focal Loss损失函数训练神经网络,该损失函数能够有效的缓解数据分布不均衡以及神经网络错分的问题,使神经网络模型的最终分类结果取得较高值;
步骤S7:药物关系查询原型系统设计
通过前述步骤抽取出需要的药物关系,接着将抽取出的药物关系存储至数据库之中,然后,设计药物关系抽取原型系统,以方便用户查询相关的药物信息;该药物关系查询原型系统包括用户注册、用户登录、药物关系查询以及药物信息管理模块。
2.如权利要求1所述的方法,其特征在于:所述步骤S1中,首先将原始数据集处理,形成所有药物实体之间相互作用的数据集;对文本中包含的药物实体进行标记,分别标记为Drug0,Drug1,Drug2;其中,Drug1和Drug2表示当前有药物相互作用的两种药物,Drug0表示非当前实例所考虑的药物实体;接着根据步骤S1中的前两种规则,将原始数据集进行过滤,去除一部分负例数据;
同时,通过Stanza工具不能够得到药物描述文本中两个药物实体之间的关键路径时,则认为这样的数据实例也是负例,根据步骤S1中的规则三将其过滤掉,形成最终需要处理的数据集。
3.如权利要求1所述的方法,其特征在于:所述步骤S3中,首先将原始的药物关系数据集整理为知识图谱需要的三元组格式,形成知识图谱{KG_DDIE};然后,从DrugBank数据库中抽取出药物关系的三元组集合,形成知识图谱{KG_DrugBank};最后,将上述两个三元组集合融合,形成最终需要的药物关系知识图谱{KG_DRUG}。
4.如权利要求1所述的方法,其特征在于,所述步骤S5中,首先使用Stanza工具,处理数据预处理之后得到的数据集,得到分词之后的文本数据,之后标记该实例中的药物实体Drug1和Drug2;然后使用Stanza工具获取Drug1和Drug2的关键路径信息,设置关键词为1,非关键词为0,即得到该实例文本中两个药物实体之间的关键路径信息。
5.权利要求1至4其中之一所述方法构建的药物关系分类模型,包括依次连接的数据预处理模块、语义特征表示模块、药物关系知识图谱构建模块、知识嵌入特征表示模块、关键路径特征表示模块、神经网络分类模块和药物关系查询原型系统设计模块。
CN202210166924.3A 2022-02-23 2022-02-23 一种基于知识图谱的药物关系抽取方法 Active CN114582443B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210166924.3A CN114582443B (zh) 2022-02-23 2022-02-23 一种基于知识图谱的药物关系抽取方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210166924.3A CN114582443B (zh) 2022-02-23 2022-02-23 一种基于知识图谱的药物关系抽取方法

Publications (2)

Publication Number Publication Date
CN114582443A true CN114582443A (zh) 2022-06-03
CN114582443B CN114582443B (zh) 2023-08-18

Family

ID=81775037

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210166924.3A Active CN114582443B (zh) 2022-02-23 2022-02-23 一种基于知识图谱的药物关系抽取方法

Country Status (1)

Country Link
CN (1) CN114582443B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109325131A (zh) * 2018-09-27 2019-02-12 大连理工大学 一种基于生物医学知识图谱推理的药物识别方法
CN110334219A (zh) * 2019-07-12 2019-10-15 电子科技大学 基于注意力机制融入文本语义特征的知识图谱表示学习方法
WO2021000362A1 (zh) * 2019-07-04 2021-01-07 浙江大学 一种基于深度神经网络模型的地址信息特征抽取方法
CN112507039A (zh) * 2020-12-15 2021-03-16 苏州元启创人工智能科技有限公司 基于外部知识嵌入的文本理解方法
WO2021189971A1 (zh) * 2020-10-26 2021-09-30 平安科技(深圳)有限公司 基于知识图谱表征学习的医疗方案推荐系统及方法
CN113806531A (zh) * 2021-08-26 2021-12-17 西北大学 药物关系分类模型构建方法、药物关系分类方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109325131A (zh) * 2018-09-27 2019-02-12 大连理工大学 一种基于生物医学知识图谱推理的药物识别方法
WO2021000362A1 (zh) * 2019-07-04 2021-01-07 浙江大学 一种基于深度神经网络模型的地址信息特征抽取方法
CN110334219A (zh) * 2019-07-12 2019-10-15 电子科技大学 基于注意力机制融入文本语义特征的知识图谱表示学习方法
WO2021189971A1 (zh) * 2020-10-26 2021-09-30 平安科技(深圳)有限公司 基于知识图谱表征学习的医疗方案推荐系统及方法
CN112507039A (zh) * 2020-12-15 2021-03-16 苏州元启创人工智能科技有限公司 基于外部知识嵌入的文本理解方法
CN113806531A (zh) * 2021-08-26 2021-12-17 西北大学 药物关系分类模型构建方法、药物关系分类方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
宁尚明;滕飞;李天瑞;: "基于多通道自注意力机制的电子病历实体关系抽取", 计算机学报, no. 05 *
黄培馨;赵翔;方阳;朱慧明;肖卫东;: "融合对抗训练的端到端知识三元组联合抽取", 计算机研究与发展, no. 12 *

Also Published As

Publication number Publication date
CN114582443B (zh) 2023-08-18

Similar Documents

Publication Publication Date Title
Kumar et al. Aspect-based sentiment analysis using deep networks and stochastic optimization
KR101999152B1 (ko) 컨벌루션 신경망 기반 영문 텍스트 정형화 방법
WO2020248391A1 (zh) 案由分类方法、装置、计算机设备和存储介质
US8738552B2 (en) Method and system for classifying documents
CN110717047A (zh) 一种基于图卷积神经网络的Web服务分类方法
CN106776562A (zh) 一种关键词提取方法和提取系统
CN110674252A (zh) 一种面向司法领域的高精度语义搜索系统
CN110020671B (zh) 基于双通道cnn-lstm网络的药物关系分类模型构建及分类方法
CN104346379B (zh) 一种基于逻辑和统计技术的数据元识别方法
Ding et al. Goldenbullet: Automated classification of product data in e-commerce
CN106096005A (zh) 一种基于深度学习的垃圾邮件过滤方法及系统
CN113806531B (zh) 药物关系分类模型构建方法、药物关系分类方法及系统
CN113157859B (zh) 一种基于上位概念信息的事件检测方法
CN109614484A (zh) 一种基于分类效用的文本聚类方法及其系统
Bayram et al. What’s in a word? Detecting partisan affiliation from word use in congressional speeches
CN115982379A (zh) 基于知识图谱的用户画像构建方法和系统
CN117235243A (zh) 民用机场大语言模型训练优化方法及综合服务平台
CN114547303A (zh) 基于Bert-LSTM的文本多特征分类方法及装置
Thandaga Jwalanaiah et al. Effective deep learning based multimodal sentiment analysis from unstructured big data
KR20220074576A (ko) 마케팅 지식 그래프 구축을 위한 딥러닝 기반 신조어 추출 방법 및 그 장치
Hua et al. A character-level method for text classification
CN114582443B (zh) 一种基于知识图谱的药物关系抽取方法
Chandrasekaran et al. Sarcasm Identification in text with deep learning models and Glove word embedding
Pathwar et al. Tackling COVID-19 infodemic using deep learning
Shah et al. Cyber-bullying detection in hinglish languages using machine learning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240118

Address after: Room C406-4, 4th Floor, Zhumengchuangyi Space, Textile Third Road, High tech Industrial Development Zone, Xianyang City, Shaanxi Province, 712000

Patentee after: Shaanxi Jinzhong Qintong Digital Technology Co.,Ltd.

Address before: 710069 No. 229 Taibai North Road, Shaanxi, Xi'an

Patentee before: NORTHWEST University