于彤 贾李蓉 张竹绿 朱玲
摘要:从中医药文献中提取语义关系的方法,能充实中医药知识库系统,提升知识获取效率,改进知识检索效果。本研究通过搜集中医药文献并从中找出在一起频繁出现的词对,基于中医药学语言系统判断语义关系的性质,再将所发现的语义关系交由领域专家进行检验。该方法向中医药领域专家提供了从文本中发现语义关系的新颖技术手段。
关键词:语义关系;中医药学语言系统;知识库
目前,中医药领域实用的知识库系统显现出大型化的趋势,往往包含百万条语义关系。例如,中医药学语言系统(Traditional Chinese MedicineLanguage System,TCMLS)已收录概念12万余条,术语30万余条,语义关系127万多条。由人工编辑如此大量的语义关系,是一个耗时费力的大工程。若能实现从文献中自动抽取语义关系,则可大幅提升知识获取效率。因此,语义关系发现方法对领域知识库的构建具有很大意义。本文介绍了一项基于TCMLS从文本中发现语义关系的初步尝试。该研究试图将文本中蕴含的语义关系挖掘出来,与TCMLS现有的语义关系结合,得到更为全面、准确的语义关系,并明确系统中语义关系的文献来源,从而扩充TCMLS的数据规模,提升TCMLS中语义关系的准确性和可靠性。
1、研究背景和相关工作
中医药学是经过几千年的发展而形成的,文献记载是其重要的知识流传的方式之一。近年来,中医团体开展了大量的知识工程工作,采用各种文献中的知识来构建中医药领域知识库,提供知识检索服务。以TCMLS为例,因缺乏实用的中医药文本挖掘方法,在语义关系抽取方面,主要依赖于加工人员的个人知识和手工操作。这种方法与加工人员个人的知识、素养和责任心有很大关系,造成数据准确性良莠不齐,难以对数据质量进行有效管理。随着系统规模的不断扩大,人工编辑的复杂性也不断增大,制约着TCMLS的进一步发展。鉴于此,拟对中医药文献内容进行语义关系提取,得到具体概念之间的语义关系,与TCMLS的语义关系进行比较,并对TCMLS进行进一步扩充。
从自由文本中挖掘语义关系是一个非常困难的问题,因为同一种关系在文本中会有多种表达方式。常见的语义关系发现方法,主要包括如下2大类。
1.1 基于语法分析的语义关系发现
此类方法的主要思路是:基于自然语言处理(NLP)技术,通过对文本进行语法分析,构建出语法树,再通过语法和词性的分析得到其中的语义关系。这类方法的优点是对语义关系定位比较准确,并可以通过语法特征得到文本中的隐含信息。但其缺点在于:此类方法的效果严重依赖于语法分析的结果,对于一些特殊的领域,现有的语法分析方法往往无法取得令人满意的结果。因此,基于语法分析的语义关系抽取算法其应用范围受到了很大的限制,特别是在一些有着独特语法规则的领域中更是如此,本文中提到的中医药领域就是一个例子。
1.2 基于模式匹配的语义关系发现
这种方法是用某种模式对文本进行匹配,根据匹配的情况得到相应的语义关系。根据匹配模式的不同来源,可以分为两类:基于领域知识的模式匹配和基于学习的模式匹配。基于领域知识的模式是由领域专家将其领域知识总结、升华得到的通用知识模式,然后再使用这些模式作为模板,从文献中找到相应的关系。基于学习的模式匹配方法,是指使用机器学习方法,通过对文献特征的分析得到有用的模式。这类方法的目标一般限定为仅挖掘某些特定类别的实体的几种特定关系,无法胜任中医药领域中语义关系种类很多的情况。
综上所述,这两类方法都不适合中医药领域的需求。本研究提出基于TCMLS的文本语义关系发现方法,该方法以TCMLS中的词汇为基础,发现语义关系中的主体和客体;以TCMLS中已有的语义关系为根据,推测从文本中挖出的语义关系的类型。本研究的基本策略,是基于TCMLS从文本中发现更多的关系,经用户验证后加入TCMLS之中,从而丰富TCMLS的语义关系;再用丰富后的TCMLS进行新一轮的文本挖掘,进一步丰富TCMLS;以此类推,从而形成一套基于文本语义关系发现来驱动TCMLS加工的技术方案。下面具体介绍基于TCMLS的语义关系发现方法。
2、文本语义关系发现方法
如图1所示,文本语义关系发现,是指从“……人参有‘补五脏、安精神、定魂魄、止惊悸、除邪气、明目开心益智的功效……”的文本中,发现“人参补五脏”、“人参安精神”、“人参止惊悸”、“人参除邪气”这样的关系。该方法会统计每条关系出现的频数:如果在文档D1,D2……Dn中都出现了某条关系R,则R出现的频数即为n。该方法的基本策略是:以TCMLS作为领域词库,从文献库中找出在同一文档中出现的两个领域术语(如“人参、邪气”、“人参、五脏”等),构成候选的文本语义关系,并统计每条关系的频数,以供语言学家进行检阅和处理。由机器判断语义关系的谓词(如“人参”与“邪气”之间的谓词为“除”)仍是一个技术难题。本方法会在这两个词附近找出一些候选性谓词(如“补”、“除”等)推荐给用户;并提供TCMLS中的相关用法,供用户参考(例如,针对“人参”和“肾阳虚证”,系统会根据TCMLS中的用法向用户推荐“治疗”这一谓词)。
为实现该策略,首先需要将中医药文本分解成一系列独立的语义单元。中医药文献资源包括书籍、期刊、会议论文集、病历、报告等,语义单元划分要针对不同类型的文献进行具体分析。本研究主要考虑书籍、期刊和会议论文集。这些文献都可被分为一系列“文章”(在书籍中对应一章或一节,在期刊和会议论文集中对应一篇论文),可对文章进一步细分,将文章分为小节,将小节分为段落,将段落分为句子。
理论上,在一篇文章中出现的任意两个词汇之间都可能存在或强或弱、或直接或间接的语义关系。因此也可将“文章”作为语义单元进行语义关系发现。但在语义关系识别阶段,关键词组过长会极大增加算法复杂性。为保证算法效率,关键词组内词汇数量不宜过多,因此本研究未将整篇文章作为语义单元进行挖掘。与全文相比,“句子”是一个相对较小、且有完整语义的单元。“句子”通常描述一个完整的意思,且其中的词汇之间通常有某种联系,因此“句子”为中文分词及后续处理提供了天然的单元。但语义关系的主体和客体也有可能分散在不同的句子中,仅以句子作为语义单元会遗失掉很多的关系。鉴于此,本项目分别以句子和小节作为基本的语义单元,进行语义关系发现,下面介绍其核心思想和设计原则。
第一,在文中距离越近的“名词、动词、名词”,越有可能表达一条语义关系。因此,本方法会记录语义关系中的词汇在文中的最短距离,作为反映语义关系真实性的一个参数。
第二,在各种文献中多次出现的“主语谓语宾语”,更有可能代表一条语义关系。若一条关系频繁出现于各种文献中,则其很可能是领域专家认可的。因此,本方法对从各种文献中发现的关系进行汇总,统计每条关系在文中共现的频数,将其作为一个参数提供给术语学家。
第三,文献量越大、越全面,所得到的语义网络就越具有统计价值。鉴于此,采用TCMLS对万方文献库进行检索,以期获得尽可能全面的文献。
第四,构建在中医药领域中常用的动词列表,以该表为基础推测语义关系中的谓词。将主语或宾语附近出现的动词记录下来,作为语义关系的候选谓词,推荐给术语学家。
第五,鉴于文本语义关系发现方法尚不能保证结果的准确性,开发了一个文本语义关系的检阅系统,对文本语义关系进行检查、分析和标注等工作,使术语学家了解语义关系与相关文本的关联。
3、文本语义关系发现和检阅系统
在本研究中,采用Java语言开发了一套文本语义关系发现程序,以实现文本语义关系发现方法。以TCMLS作为关键词,从万方数据知识服务平台检出了217 667条文献题录信息(含摘要),再用文本语义关系发现程序从摘要中挖出了87826条关系,其中部分的关系如表1所示。所得出的关系被存入一个关系型数据库(MySQL数据库)中,通过文本语义关系检阅系统展示出来,供语言学家进行检阅。
如图2所示,开发了一套文本语义关系的检阅系统,支持用户对文本语义关系进行检阅、分析和标注,查看文本语义关系的文献依据和相关网页,并将文本语义关系正式插入某个术语系统(如TCMLS)。在语义关系检索界面中,系统会将机器发现的语义关系分页列出。用户可输入关键词(如“阳痿肾阳虚证”)搜索个人关心的语义关系。系统列出了每条关系的主体和客体(如“益肾丸肾阳虚证”),给出每个概念的类型、正名和定义。用户可点击查看某个概念,系统会转到这一概念的信息页面。当用户在上文提到的“语义关系检索界面”中点击查看某条关系,系统就会跳转到这条语义关系的展示和处理界面。
在语义关系的展示和处理界面中,用户可以查看这条关系的主体信息、候选谓词、客体信息、参考性参数。其中,对于主体和客体,都给出了概念的类型、正名、定义以及概念信息页面的链接。候选谓词是基于TCMLS中的用法来生成的,例如,若主体为“人参”,客体为“肾阳虚证”,则系统会推荐“治疗”作为候选谓词。用户可以点击“文献资源”,查看该语义关系所出自的文献。对于每篇文献,系统都给出了题名和摘要。用户单击选择某篇文献的题名时,系统会跳转到该文献的题录信息页面。用户可以点击“百度搜索”,查看该语义关系相关的百度搜索结果,也可以点击“相关陈述”,查看该语义关系在TCMLS中的相关陈述,以供语言学家参考。用户还可通过系统提供的表单,将这条语义关系加入语言系统中。系统会根据TCMLS中的相关用法,列出一些相关属性以供用户选择。用户也可以输入新的属性,例如,为添加“人参除邪气”这条关系,用户可输入“除”这一新属性。用户也可以添加一些注释信息。另外,当关系被录入TCMLS后,系统会记录这条关系的文献来源。
4、小结
数字化文献是中医药知识密集型数据的基础。中医药语义网若与文献资源相脱节,则必成为无源之水、无本之木。从文献中提取语义关系的方法,能有效丰富中医药语义网的内容,建立中医药语义网和文献资源的有机联系,改进中医药文献检索的效果。本研究开展了中医药文献语义关系发现方法的初步探索:基于TCMLS,搜集中医药文献,对文献进行分词处理,从中找出在一起频繁出现的词对,判断语义关系的性质,交由领域专家进行检验。本研究所开发的文本语义关系发现和检阅系统,向术语专家提供从文本中发现新颖语义关系的技术能力。
这项工作尚存在一些局限性。例如,我们尚缺乏判断文本语义关系准确类型的有效手段,也尚未实现发现新词的方法。另外,有些中医药领域的词汇尚未收入TCMLS之中,这影响了语义关系发现的效果。在进一步研究中,拟对从文本中获得的语义关系与TCMLS现有的语义关系进行比较,补充完善TCMLS现有的语义关系网络。拟对从文本中获得的语义关系按概念的语义类型进行归纳,得到语义类型间的语义关系,融合成一个基于文献的顶层语义网络。对TCMLS的顶层语义网络和从文献中实际抽取的语义网络进行比较,对TCMLS现有的项层语义网络进行补充和修正,从而指导中医药学语言系统实际发展和应用。