1 项目介绍
本系统旨在设计并开发一种基于医疗知识图谱的问答系统,帮助用户在大量的医疗数据中筛选出问题的精准答案并返回给用户。
本系统的研究内容主要包括以下几个方面:首先,研究如何构建高质量的医学领域知识图谱,包括数据收集、数据清洗和知识存储。其次,研究如何实现问答系统的问答任务,包括问答语料生成、语义解析和基于词向量的模型实现医疗实体识别和意图分析。
2、项目技术
项目后端框架:Java+ssm
项目前端框架:vue2,ssm
3、开发环境
后端:开发语言:python
框架:python,django
python版本:python3.6.8版本向上兼容
数据库:mysql5.7+
数据库工具:Navicat11+
开发软件:pycharm
前端:nodejs,vue,html
数据库:mysql
4 系统特点
系统在帮助完善中文领域临床知识图谱的构建工作,并利用机器学习的方法提高医疗知识图谱智能问答系统对用户输入自然语言的语义理解能力,最终目标是构建一个能够切实解决用户问诊需求的自助医疗问答系统。
5.2.可视化系统实现过程
前端界面采用了 Bootstrap 框架进行开发,其中在本系统中,我们使用了一个开源的可视化工具:D3.js。D3.js是一个基于数据的可视化JavaScript库,它使用HTML、SVG和CSS来呈现数据。它使数据变得更加直观和易于理解。我们使用了D3.js来呈现知识图谱,并且提供了一些交互功能,如搜索和展开节点等。前端登录界面如图:
图4:医疗知识图谱系统登陆界面
本系统的界面设计简单明了,易于操作。主要界面包括:知识图谱展示界面、搜索界面和结果展示界面。
图5:知识图谱展示界面
在知识图谱展示界面,我们使用D3.js来呈现知识图谱。用户可以通过鼠标滚轮来放大或缩小整个图谱。当鼠标移到一个节点上时,会显示该节点的详细信息。用户可以通过单击节点来展开或关闭该节点的子节点。用户还可以通过搜索界面来查找某个节点。
在搜索界面,用户可以输入一个关键词来搜索知识图谱中的节点。系统会返回与该关键词相关的所有节点。用户可以单击某个节点来查看该节点的详细信息。
图6:问题搜索界面
在结果展示界面,系统会显示与搜索关键词相关的所有节点。用户可以单击某个节点来查看该节点的详细信息。
图7:问题搜索结果界面
图8:疾病信息可视化界面
图9:问答管理界面
我们还设计了用户管理以及个人信息管理相关设置,以完善我们的系统来改进系统完整度,提高系统的利用率。
图10:用户管理界面
图11:用户管理新增用户界面