中成药数据图谱可视化与知识问答平台研究
本文围绕中成药数据的管理与应用展开研究,探讨了中成药数据的特性及其在知识图谱技术下的存储与管理方法。通过知识图谱技术构建中成药知识图谱数据库,并结合可视化技术开发中成药知识图谱可视化平台,以实现中成药数据的高效存储、管理和利用。系统设计包括数据爬取、关系抽取、知识融合等技术,最终搭建了基于Python Flask框架和Echarts的可视化平台。平台以多种图表形式展示中成药数据,包括知识图谱、表格、柱状图、折线图等,并支持智能问答功能。研究指出,基于知识图谱技术的中成药数据管理具有较大的应用潜力,未来将进一步优化问答功能,提升服务效果。
摘要
中成药数据呈现出数量丰富、关系错综复杂的特点,如何实现对众多中成药临床、流通及标准规范数据的有效存储、管理、追踪与应用,成为药品监管部门当前的重点工作。基于整合中成药知识、提升数据关联性及挖掘数据潜在价值的目标,通过采用知识图谱存储架构并结合可视化技术来组织中成药临床技术、商业流通及标准规范等信息,最终构建中成药知识图谱数据库体系,并开发相应的可视化平台。基于知识图谱技术的可视化平台不仅能够深入挖掘中成药数据的潜在价值,还能为智能问答研究提供丰富的数据资源,同时具备良好的知识服务前景。
关键词
中成药; 知识图谱; 可视化; 平台构建
0 引言
中医作为中华民族优秀传统文化的重要组成部分,现代中医干预疾病的主要手段是中药[1]。中药在新冠肺炎的预防与治疗中发挥了重要作用,值得注意的是,在疫情高峰期,湖北省的中药救治参与率达到了91.05%,而其他地区则达到了96.37%[2]。
中成药是中药的主要流通形式。与中成药相关的数据多为半结构化或非结构化形式,具有数据容量大(Volume)、增速快(Velocity)、来源广(Variety)以及真实性较低(Veracity)的4V特征[3]。传统的关系型数据库在关联效率方面表现不佳,且难以进行扩展,已无法满足中医药数据高度关联的需求。知识图谱技术能够有效捕捉和呈现领域概念之间的复杂关系,并将分散的知识系统性地连接起来。知识图谱技术在中医药领域能够有效解决知识岛问题,有助于整合知识资源,提升知识服务能力。基于此,本文旨在构建基于知识图谱技术的中成药可视化与知识问答平台,以实现对复杂、多样的中成药数据进行高效管理和存储。
1 研究现状
目前在市场上销售的中成药约有1万种[4],相关大数据亟待开发与利用,主要面临以下问题:①中成药数据分布广泛,但缺乏统一规范,导致数据质量难以确保;②中成药数据共享机制不完善,数据价值未得到充分挖掘;③中成药数据管理缺乏统一规范,存在数据滥用问题[5]。
数据可视化旨在将海量数据以图像形式呈现,并借助数据分析与开发工具揭示数据中的潜在信息。目前,数据可视化已从简单的图表展示发展为多维度的分析研究,主要涉及多维数据、层次关系及文本数据三个核心领域:多维数据方面,通过多种展示形式呈现数据间的多维关系,使用户只需简单操作即可完成数据观察与分析,从而获取所需信息;层次关系方面,大数据分析的重点通常在于不同实体之间的联系,因此需要采用多样化的图形,以尽可能全面地展现数据的层次关系;文本数据方面,为了帮助用户更好地理解信息,必须结合文本数据进行展示,同时应注重文本信息的视觉效果,以实现知识问答功能。
目前,多种医学数据可视化平台多以传统表格、折线图、柱状图等常见形式呈现海量的中成药数据[8],这些展示方式具有直观易懂的特点,但同时也存在诸多局限性[9]:其一,信息呈现维度单一,难以整合文献、临床和商业等多维度背景数据;其二,图形比例设置失衡,可能导致用户产生视觉误差;其三,平台在界面设计上过于简约,文字说明量不足,导致大量数据仅以简洁图形形式呈现,用户难以深入理解内容;其四,缺乏专业中医人员的参与,平台数据多为预先设定内容,难以满足用户个性化需求。针对此问题,众多学者致力于将知识图谱技术应用于中医辨证分析与案例研究的可视化展示,取得了一定的研究成果。例如,王菁薇等[10]基于中医经典文献《伤寒论》构建中医药知识图谱;贾李蓉等[11]开发了中医药知识图谱可视化平台;秦锦玉等[12]提出了一种中医药知识图谱可视化展示方法;陈姗姗等[13]利用知识可视化软件系统梳理中医药国际化发展文献;郑懿鸣等[14]开发了中医药知识图谱与知识卡片结合的用药推荐系统;孙华君等[15]系统分析了知识图谱技术在中医药各分支领域的具体应用。在此基础上,本文结合知识图谱技术和可视化方法,对中成药大数据进行深入研究分析,以期有效解决中医药资源利用不足及管理不规范等问题。
2 系统设计
首先,基于中成药数据的实际需求,识别关键实体及其相关属性;随后,通过网络爬虫技术从互联网资源中获取所需数据,并存储于对象关系型数据库PostgreSQL中。通过实体识别、关系抽取、数据整理分析等手段,构建中成药知识图谱并存储于Neo4j图形数据库中。最后,基于Python开发Flask框架搭建数据可视化平台,实现多维度数据展示及智能问答功能。具体操作流程如图1所示。

图****1****系统实现流程
Fig. 1****System implementation flow
2.1 数据选取与获取
基于实证调查,本文将中成药的实体属性归类为经济特性、安全性与基本属性三大类。其中,具体细分则可见于表1。
表****1****中成药细分属性
Table 1****Detailed properties of Chinese patent medicine
| 实体属性 | 属性内容 |
|---|---|
| 基本属性 | 商名、主要规格、用途(主治)、用法用量、组成、产品分类、生产厂家(数量)、性状 |
| 安全性 | 文献研究(数量)、药品禁忌、不良反应 |
| 经济性 | 基要目录、医保目录、标准来源 |
通过Python爬虫技术从站内多个开放网站中获取相关网页源码[16],利用正则表达式技术精准提取所需数据,并将其存储于PostgreSQL数据库中,从而实现中成药数据的动态更新。以中成药莱阳梨止咳糖浆为例,其属性如表2所示。
表****2****莱阳梨止咳糖浆属性示例
Table 2****Property examples of Laiyang pear cough syrup
| 属性 | 内容 |
|---|---|
| 商名 | 莱阳梨止咳糖浆 |
| 主要规格 | 100mL |
| 用 途(主治) | 镇咳祛痰,用于伤风感冒引起的咳嗽多痰 |
| 用法用量 | 口服,一次10mL,一日4次 |
| 组成 | 莱阳梨、麻黄、杏仁水、桔梗、远志、北沙参、百合、薄荷脑,辅料为蔗糖、苯甲酸钠 |
| 产品分类 | 药品/中成药/肺系病症 |
| 生产厂家(数量) | 10 |
| 性 状 | 棕黄色至棕褐色的浓稠液体;气香,味甜、微酸、凉 |
| 文献研究(数量) | 0 |
| 药品禁忌 | 忌食辛辣、油腻食物 |
| 不良反应 | 卫生部药品标准中药成方制剂第十四册 |
| 基要目录 | 否 |
| 医保目录 | 非医保 |
| 标准来源 | 卫生部药品标准中药成方制剂第十四册 |
2.2 中成药可视化与知识问答平台设计
基于Python语言的Web开发模块,采用Flask框架构建中成药知识图谱可视化平台。Flask框架是一种轻量级的Web开发框架,相较于同类框架,具有更高的灵活性、更强的安全性以及更简便的上手方式,能够有效开发出功能强大的网站。同时,采用Ajax技术进行网站交互设计。Ajax即Asynchronous JavaScript and XML(异步JavaScript和XML),是一种用于创建交互式、快速响应的网页应用开发技术,无需重新加载网页即可实现部分页面内容的实时更新。基于Ajax技术的异步交互方法[17],能够实现前端页面的无等待实时刷新,从而显著提升人机交互体验。
该中成药可视化与知识问答平台主要包含8个功能模块,具体信息可参考图2。用户可在搜索框录入中成药名称,触发搜索后,平台将自动呈现相关信息。

图****2****中成药可视化与知识问答平台设计
The platform design integrates visualization techniques with a knowledge-based Q&A system tailored for patent medicine.
用户可在搜索框内输入中成药名称,点击搜索按钮即可查询该中成药的相关数据。
(2)知识图谱模块。网站采用知识图谱的形式,将被搜索的成药相关数据进行展示。用户可依据个人需求,选择性地展示节点,刷新知识图谱,并保存、下载相关图片。
中成药属性信息展示模块:网站采用表格形式呈现被搜索中成药相关属性数据,便于用户查阅。
(4)药品生产企业模块:网站以词云的形式展示相关成药生产企业的相关信息,用户点击某个生产企业后,可以在药品[广告]流通信息模块单独查看该企业生产的药品流通信息。
药品广告流通信息模块:该系统模块采用折线图或柱状图的形式展示搜索范围内所有成药广告在不同年份的流通数量,用户还可以查看不同生产企业的广告流通信息。
药品产地信息模块:该系统模块以饼图形式展示被搜索的中成药产地信息,用户可通过该模块查询不同省份生产该类中成药的占比情况。
药品经济模块是通过折线图的形式呈现来自搜索结果中的成药市场售价信息的平台。
知识问答模块被用户所使用,用户能够在输入中找到中成药名称、药材名称、症状描述等关键词来检索相关信息。
3 数据可视化与知识问答应用
3.1 中成药知识图谱可视化应用
利用知识图谱对中成药数据进行存储,能够有效地避免传统关系型数据库存在的问题。通过这种方式,非结构化的中成药数据的关联性得到了显著提升,为文本处理提供了更加全面的语义特征[18]。
以中成药商品名作为实体结点,构建中成药知识图谱数据库系统。具体来说,该系统以基本属性、经济性、安全性作为一级属性结点。其中,主要规格、用途、用法用量、组成、产品分类、厂家数量、性状作为从属基本属性的二级属性结点;文献研究、药品禁忌、不良反应作为从属安全性的二级属性结点;基药目录、医保目录、标准来源作为从属经济性的二级属性结点。数据库中提取的中成药相关数据作为对应属性下的三级实例结点。通过以上信息构建中成药知识图谱数据库系统,具体结构示意图见图3、图4。

图****3****桔远止咳片知识图谱示例
Fig. 3****Example of knowledge map of "Juyuan Zhike Tablet"

图****4****不同中成药之间关系的知识图谱示例
Fig. 4 illustrates the relationships between various Chinese patent medicines through a knowledge map example.
基于Neo4j数据库平台存储中成药相关数据信息,将单个中成药的属性划分为基本属性、安全性及经济性三大类,并分别以不同颜色进行展示。通过相同属性将不同中成药实体相互连接,构建中成药知识图谱体系。通过图匹配技术实现中成药智能问答系统在知识图谱技术上的应用研究。
基于Echarts可视化技术融合大屏背景元素构建了中成药知识图谱可视化平台。该平台通过多种数据可视化形式,将中成药相关数据呈现给用户,并在界面展示中如图5所示。

图****5****中成药知识图谱可视化平台界面展示
Fig. 5****Visualization platform of Chinese patent medicine knowledge map
由图5可知,主要通过知识图谱和表单的形式展示被搜索成药的基本属性、安全性与经济性等三大类关键信息。采用折线图和柱状图来展示流通信息,其中流通信息通过广告招标数量进行具体体现。使用散点图的形式展示市场流通价格信息。同时,平台还以饼状图来展示生产地区信息,并配合词云形式呈现生产企业信息。
通过交互功能,用户能够更深入地了解相关数据信息。具体而言,用户可以通过点击知识图谱模块中的对象、对象属性、关联对象、所属类别等图标,选择性地隐藏部分节点信息。当用户点击某个生产企业时,系统会引导用户进入药品广告流通信息模块,以便单独查看该企业生产的药品流通信息。
3.2 知识问答应用
基于中成药知识图谱数据库和中成药知识图谱可视化平台,可用于进行中成药知识问答研究。借助自然语言处理技术,能够提取并表征中医药领域文本特征。通过结合使用基础的模式匹配技术和Transformer深度学习模型,可实现平台的中医药智能问答功能。具体实施流程如图6所示。

图****6****知识问答平台实施流程
Fig. 6****Implementation process of knowledge Q & A platform
基于Python的自然语言处理技术,构建中医药问答词典,提升分词的准确性。该系统设计相关问题模板,显著提升问答效率。通过分词、实体识别及关键词提取,将用户的自然语言输入转化为问题列表。通过关键词匹配分析现有问答类型,进而跳转至对应的数据查询模块进行数据检索,并将整合后的数据作为答案传送到前端。对于未匹配的问题文本,采用Transformer深度学习模型进行问题解析,通过自定义中医药知识问答素材,提取问题答案并呈现给用户。具体处理流程如图7所示。

图****7****知识问答处理流程
Fig. 7****Process of knowledge Q & A
由图7可知,系统通过自然语言分词处理输入文本,并结合文本特征分析和模式匹配等方法,选择合适的模板以回答搜索问题。对于未被匹配的文本,系统采用基于Transformer深度学习的抽取式问答技术生成答案及其得分。其中,得分超过0.6的答案被视为正确输出,而得分低于或等于0.6则表示未能理解。
4 结语
本文主要运用Python爬虫技术获取中成药开源数据,通过实体抽取、属性提取以及知识融合等技术手段,成功构建了基于Neo4j图形数据库的中医药知识图谱体系。同时,结合Flask框架和Echarts可视化技术搭建了中成药数据可视化平台。目前,本文所设计的智能问答功能模块目前主要依赖模板匹配和简单的素材文本抽取式问答,难以达到医药类问答所需的高度精准度。在后续研究中,计划深入挖掘中医药古籍文献数据,解析中医药多维度数据,并运用深度学习技术构建可泛化计算的智能问答模型[20],以期更深入地挖掘中成药数据的应用潜力,并为公众提供更加丰富的中成药大数据服务。
