点击空白处退出提示
作品详情
利用科技手段提高传统宠物医疗行业的智能化水平。传统的宠物医疗知识比较分散,专业化程度低,宠物医院及医生的医疗技术水平高低不一,宠主在宠物生病时不能准确判断并采取措施等等。此项目旨在创建一套专业的医疗技术知识图谱,包含宠物种类、品种、年龄、常见症状、检查结果、处方、医嘱、诊断、疾病及疾病详情卡片等维度。在此知识图谱的基础上,可以建立诸如智能诊断,临床决策支持,智能问答等上层应用。
项目设计
线上病历含有症状描述和诊断结果两个字段,可以用来创建医疗知识图谱,可能准确度有待提高
初期使用少量的病历测试数据并只使用常见症状和疾病两个维度创建医疗知识图谱,并在此基础上创建一个简单的demo应用,可以达到由症状查询到可能犯有的疾病并按照可能机率进行排列的目标。
在demo应用的基础上,开始使用大量的病历正式数据进行模型训练,逐步提高知识图谱的准确度,并丰富demo应用。
利用一些专业化数据(医疗专家使用辅助系统填写的疾病和症状对应关系/从专业化网站上爬取数据)对知识图谱进一步训练,尽可能的提高准确度
找到医疗技术人员协助测试,重复4,直到达到医疗技术人员认为可用为止。
技术选型
Python
Neo4j 图数据库,储存知识图谱,仅储存一些关联关系数据
Mysql 储存症状归类,疾病归类以及一些其它信息
Flask demo应用
py2neo python来操作neo4j
jieba 分词
项目细节
常见症状归类获取,最开始的时候对病历中的所有症状描述进行分词然后,计算词频,通过筛选高频词获取常见症状,后来由于干扰因素太多了,这种计算词频的方式就放弃了。后来参考了《Differential Diagnosis in Small Animal Medicine》一书中的症状分类,作为该知识图谱中的常见症状,后续也可以补充,保存在mysql中,包括一些附带信息(症状部位等)。
常见疾病获取,获取高频词的方法不可用,最后采用了医疗技术部提供的三级病种统计,作为知识图谱中的疾病,保存在mysql中,包括一些附带信息(疾病科属等),
关联算法,用病历的症状描述与常见症状库中的症状进行匹配,然后用该病历的诊断与疾病库中的疾病进行匹配,如果两者都能匹配上,则建立一条症状到疾病的关联关系,多次匹配成功则增加权重数量。
匹配算法,考虑了向量的方式,由于疾病名称和诊断描述都是很短的短句,向量判断近似的方式误差较大。我使用了jieba对疾病名称和诊断采用了同一种分词规则进行了分词,两者中相同的词语数量/疾病名称分词的数量 = 相似比 ,相似比大于某个值以后认为两者描述的是一种症状,我经过对10万条真实病历数据与疾病的关联匹配得出一个结果,相似比在0.6的时候开始收敛,相似数量急剧下降,说明准确度开始达标。经过几轮测试,最终选定0.6为标准,相似比>0.6则认为两者相同。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论