haole # QABasedOnMedicaKnowledgeGraph
self-implement of disease centered Medical graph from zero to full and sever as question answering base. 从无到有搭建一个以疾病为中心的一定规模医药领域知识图谱,并以该知识图谱完成自动问答与分析服务。
# 项目介绍
知识图谱是目前自然语言处理的一个热门方向,关于较全面的参考资料,可以查看我的ccks2018参会总结(https://github.com/liuhuanyong/CCKS2018Summary )。
与知识图谱相关的另一种形态,即事理图谱,本人在这方面也尝试性地积累了一些工作,可参考:(https://github.com/liuhuanyong/ComplexEventExtraction )
关于知识图谱概念性的介绍就不在此赘述。目前知识图谱在各个领域全面开花,如教育、医疗、司法、金融等。本项目立足医药领域,以垂直型医药网站为数据来源,以疾病为核心,构建起一个包含7类规模为4.4万的知识实体,11类规模约30万实体关系的知识图谱。
本项目将包括以下两部分的内容:
1) 基于垂直网站数据的医药知识图谱构建
2) 基于医药知识图谱的自动问答
# 项目最终效果
话不多少,直接上图。以下两图是实际问答运行过程中的截图:
![image](https://github.com/liuhuanyong/QABasedOnMedicalKnowledgeGraph/blob/master/img/chat1.png)
![image](https://github.com/liuhuanyong/QABasedOnMedicalKnowledgeGraph/blob/master/img/chat2.png)
# 项目运行方式
1、配置要求:要求配置neo4j数据库及相应的python依赖包。neo4j数据库用户名密码记住,并修改相应文件。
2、知识图谱数据导入:python build_medicalgraph.py,导入的数据较多,估计需要几个小时。
3、启动问答:python chat_graph.py
# 以下介绍详细方案
# 一、医疗知识图谱构建
# 1.1 业务驱动的知识图谱构建框架
![image](https://github.com/liuhuanyong/QABasedOnMedicalKnowledgeGraph/blob/master/img/kg_route.png)
# 1.2 脚本目录
prepare_data/datasoider.py:网络资讯采集脚本
prepare_data/datasoider.py:网络资讯采集脚本
prepare_data/max_cut.py:基于词典的最大向前/向后切分脚本
build_medicalgraph.py:知识图谱入库脚本
# 1.3 医药领域知识图谱规模
1.3.1 neo4j图数据库存储规模
![image](https://github.com/liuhuanyong/QABasedOnMedicalKnowledgeGraph/blob/master/img/graph_summary.png)
1.3.2 知识图谱实体类型
| 实体类型 | 中文含义 | 实体数量 |举例 |
| :--- | :---: | :---: | :--- |
| Check | 诊断检查项目 | 3,353| 支气管造影;关节镜检查|
| Department | 医疗科目 | 54 | 整形美容科;烧伤科|
| Disease | 疾病 | 8,807 | 血栓闭塞性脉管炎;胸降主动脉动脉瘤|
| Drug | 药品 | 3,828 | 京万红痔疮膏;布林佐胺滴眼液|
| Food | 食物 | 4,870 | 番茄冲菜牛肉丸汤;竹笋炖羊肉|
| Producer | 在售药品 | 17,201 | 通药制药青霉素V钾片;青阳醋酸地塞米松片|
| Symptom | 疾病症状 | 5,998 | 乳腺组织肥厚;脑实质深部出血|
| Total | 总计 | 44,111 | 约4.4万实体量级|
1.3.3 知识图谱实体关系类型
| 实体关系类型 | 中文含义 | 关系数量 | 举例|
| :--- | :---: | :---: | :--- |
| belongs_to | 属于 | 8,844| <妇科,属于,妇产科>|
| common_drug | 疾病常用药品 | 14,649 | <阳强,常用,甲磺酸酚妥拉明分散片>|
| do_eat |疾病宜吃食物 | 22,238| <胸椎骨折,宜吃,黑鱼>|
| drugs_of | 药品在售药品 | 17,315| <青霉素V钾片,在售,通药制药青霉素V钾片>|
| need_check | 疾病所需检查 | 39,422| <单侧肺气肿,所需检查,支气管造影>|
| no_eat | 疾病忌吃食物 | 22,247| <唇病,忌吃,杏仁>|
| recommand_drug | 疾病推荐药品 | 59,467 | <混合痔,推荐用药,京万红痔疮膏>|
| recommand_eat | 疾病推荐食谱 | 40,221 | <鞘膜积液,推荐食谱,番茄冲菜牛肉丸汤>|
| has_symptom | 疾病症状 | 5,998 | <早期乳腺癌,疾病症状,乳腺组织肥厚>|
| acompany_with | 疾病并发疾病 | 12,029 | <下肢交通静脉瓣膜关闭不全,并发疾病,血栓闭塞性脉管炎>|
| Total | 总计 | 294,149 | 约30万关系量级|
1.3.4 知识图谱属性类型
| 属性类型 | 中文含义 | 举例 |
| :--- | :---: | :---: |
| name | 疾病名称 | 喘息样支气管炎 |
| desc | 疾病简介 | 又称哮喘性支气管炎... |
| cause | 疾病病因 | 常见的有合胞病毒等...|
| prevent | 预防措施 | 注意家族与患儿自身过敏史... |
| cure_lasttime | 治疗周期 | 6-12个月 |
| cure_way | 治疗方式 | "药物治疗","支持性治疗" |
| cured_prob | 治愈概率 | 95% |
| easy_get | 疾病易感人群 | 无特定的人群 |
# 二、基于医疗知识图谱的自动问答
# 2.1 技术架构
![image](https://github.com/liuhuanyong/QABasedOnMedicalKnowledgeGraph/blob/master/img/qa_route.png)
# 2.2 脚本结构
question_classifier.py:问句类型分类脚本
question_parser.py:问句解析脚本
chatbot_graph.py:问答程序脚本
# 2.3 支持问答类型
| 问句类型 | 中文含义 | 问句举例 |
| :--- | :---: | :---: |
| disease_symptom | 疾病症状| 乳腺癌的症状有哪些? |
| symptom_disease | 已知症状找可能疾病 | 最近老流鼻涕怎么办? |
| disease_cause | 疾病病因 | 为什么有的人会失眠?|
| disease_acompany | 疾病的并发症 | 失眠有哪些并发症? |
| disease_not_food | 疾病需要忌口的食物 | 失眠的人不要吃啥? |
| disease_do_food | 疾病建议吃什么食物 | 耳鸣了吃点啥? |
| food_not_disease | 什么病最好不要吃某事物 | 哪些人最好不好吃蜂蜜? |
| food_do_disease | 食物对什么病有好处| 鹅肉有什么好处? |
| disease_drug | 啥病要吃啥药 | 肝病要吃啥药? |
| drug_disease | 药品能治啥病 | 板蓝根颗粒能治啥病? |
| disease_check | 疾病需要做什么检查 | 脑膜炎怎么才能查出来?|
| check_disease | 检查能查什么病 | 全血细胞计数能查出啥来? |
| disease_prevent | 预防措施| 怎样才能预防肾虚? |
| disease_lasttime | 治疗周期 | 感冒要多久才能好? |
| disease_cureway | 治疗方式 | 高血压要怎么治? |
| disease_cureprob | 治愈概率 | 白血病能治好吗? |
| disease_easyget | 疾病易感人群 | 什么人容易得高血压? |
| disease_desc | 疾病描述 | 糖尿病 |
# 问答结果展示
用户:乳腺癌的症状有哪些?
小勇: 乳腺癌的症状包括:乳腺癌的远处转移;胸痛;乳头溢液;乳头破碎;肝肿大;泌乳障碍;乳头内陷;乳房肿块;剧痛
******************************************************************************************
用户:最近老流鼻涕怎么办?
小勇: 症状流鼻涕可能染上的疾病有:枯草热;副流行性感冒;急性上呼吸道感染;硫化氢中毒;小儿衣原体肺炎;风寒感冒;慢性额窦炎;鼻源性头痛;人禽流行性感冒;小儿流行性喘憋性肺炎;病毒性感冒;慢性鼻炎;风热犯肺;感冒;顿呛;小儿急性上呼吸道感染;嗜酸细胞增多性非变态反应性鼻炎;干酪性鼻窦炎;下呼吸道感染;麻疹
******************************************************************************************
用户:为什么有的人会失眠?
小勇: 失眠可能的成因有:躯体疾病和服用药物可以影响睡眠,如消化不良,头痛,背痛,关节炎,心脏病,糖尿病,哮喘,鼻窦炎,溃疡病,或服用某些影响中枢神经的药物。
由于生活方式引起睡眠问题也很常见,如饮用咖啡或茶叶,晚间饮酒,睡前进食或晚饭较晚造成满腹食物尚未消化,大量吸烟,睡前剧烈的体力活动,睡前过度的精神活动,夜班工作,白天小睡,上床时间不规律,起床时间不�
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Python基于知识图谱的医疗问答系统(django) python;django;mysql; 系统流程 管理员登录系统之后,并不是就直接对用户的数据库进行一个访问。其他的功能还是主要根据不同的模块进行分类,每一个模块管理其本功能的一部分,然后才通过本模块进行数据库的访问,系统的流程设计就是为了能够更好的展示系统的部署方式以及部署情况,一般用户的访问形式首先是要通过网络中的网关进行应用服务器的数据获取,在此过程当中如果是访问量大的情况可能会存在负载均衡,然后把网络请求分发到不同的应用服务器上,由应用服务器和数据库服务器进行业务数据交流汇总。下面的图就是为了能够更加形象的说明一下,从用户到数据库数据发生变化中间其实经历了好几道的环节,并不是一个简简单单访问就可以通过进行了。逻辑结构更能直白的把请求、数据、应用让大家更好的理解。当然也有不同角度的划分,这仅仅只是其中的一种。通过管理员的登录以及用户名、密码的验证,进入系统之后,各个模块的管理才能够实现知识图谱的医疗问答系统的完整功能。
资源推荐
资源详情
资源评论
收起资源包目录
Python基于知识图谱的医疗问答系统(django).zip (1210个子文件)
neostore.transaction.db.0 250MB
neostore.transaction.db.1 29.03MB
neostore.counts.db.a 2KB
neostore.counts.db.a 96B
neostore.propertystore.db.arrays 4MB
neostore.propertystore.db.arrays 2.16MB
auth 113B
neostore.counts.db.b 2KB
neostore.counts.db.b 832B
cypher-shell.bat 2KB
neo4j.bat 1KB
neo4j-import.bat 1023B
neo4j-shell.bat 1022B
neo4j-admin.bat 1022B
neo4j.cert 1002B
_1w1r.cfe 305B
_0.cfe 305B
_1w1r.cfs 30KB
_0.cfs 5KB
neo4j.conf 10KB
amazeui.min.css 249KB
bootstrap.min.css 118KB
bootstrap.min.css 116KB
layui.css 78KB
layui.css 78KB
layui.css 59KB
loaders.css 56KB
css.css 55KB
_all-skins.css 55KB
ueditor.css 44KB
admin.css 36KB
ueditor.min.css 34KB
font-awesome.min.css 30KB
jquery.treetable.theme.default.css 29KB
video-js.css 21KB
image.css 19KB
chartStyle.css 17KB
grid.css 17KB
video.css 15KB
layer.css 15KB
layer.css 15KB
attachment.css 15KB
layer.css 14KB
layer.css 14KB
layer.css 14KB
sweetalert.css 13KB
layer.css 11KB
video-js.min.css 11KB
layui.mobile.css 11KB
layui.mobile.css 11KB
admin.css 11KB
layui.mobile.css 10KB
style.css 9KB
laydate.css 9KB
laydate.css 9KB
base.css 8KB
video.css 8KB
less.css 7KB
laydate.css 7KB
laydate.css 7KB
laydate.css 7KB
shCoreDefault.css 7KB
style1.css 7KB
bootstrap-table.css 7KB
zTreeStyle.css 6KB
demo.css 6KB
styles.css 6KB
login.css 6KB
admin.css 5KB
scrawl.css 4KB
basic.css 4KB
layer.ext.css 3KB
email.css 3KB
view.css 3KB
codemirror.css 3KB
common.css 3KB
reset.css 3KB
charts.css 3KB
background.css 2KB
zy.form.css 2KB
zy.layout.css 2KB
emotion.css 2KB
normalize.css 2KB
dialogbase.css 2KB
login.css 2KB
music.css 2KB
comment.css 2KB
powerange.css 2KB
mobile.css 2KB
mobile.css 2KB
demo.css 2KB
iconfont.css 1KB
panel.css 1KB
code.css 1KB
code.css 1KB
column.css 1KB
default.css 1KB
zy.tabs.css 1KB
zy.table.css 1KB
reset.css 1KB
共 1210 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
资源评论
码上行舟
- 粉丝: 135
- 资源: 1516
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功