Giter VIP home page Giter VIP logo

kgqamedicine's Introduction

KGQAMedicine

以疾病为中心的一定规模医药领域知识图谱的问答系统。

背景

本项目来源于github开源项目:https://github.com/liuhuanyong/QASystemOnMedicalKG.

在我阅读这个项目时(2022-7-17),该项目的start数目大4.2k,fork达1.6k。从数据上来看,大家是比较认可该项目的。

当然,原作者也是很厉害的,是**科学院软件研究的所刘焕勇老师。

该项目从无到有搭建一个以疾病为中心的一定规模医药领域知识图谱,并以该知识图谱完成自动问答与分析服务。适合一个初学人员了解该类项目的pipline过程。

该项目立足医药领域,以垂直型医药网站为数据来源,以疾病为核心,构建起一个包含7类规模为4.4万的知识实体,11类规模约30万实体关系的知识图谱。 项目包括以下两部分的内容:

  • 基于垂直网站数据的医药知识图谱构建
  • 基于医药知识图谱的自动问答。

该项目的开发过程我已在CSDN书写了相关博客,感兴趣的可以前去了解: 知识图谱

程序运行

环境准备:可以有选择地常见一个虚拟环境,然后安装程序运行所需要的包:pip install -r requirments.txt

知识库准备:再将知识库数据导入到neo4j数据库之前,需要根据自己的情况,在KGQAMedicine中配置相关参数, 然后执行python build_medicine_graph.py将原项目爬取的数据导入到neo4j数据库中。

机器人启动:启动方式相对简单,直接执行python chatbot.py即可。

总结

总得来说,这个项目把使用知识图谱进行QA的一些流程介绍的比较清楚,但是在完成问答的过程中技术相对老旧,不过效果依然还不错。

为了能够进一步提升效果的话可以引入很多新技术。例如在问题分类环节可以引入基于深度学习的问题分类方法,在进行问题解析的时候,可以引入基于深度学习的NER实体识别方式以及进一步处进行实体对齐等,这里不作进一步展开。

除此之外,知识图谱在构建是需要结合业务需求,也就是在接到业务的时候以及对现有数据进行分析然后构建基于业务的schema,再通过自然语言处理相关技术进行知识图谱的构建。在原项目中,使用爬虫的方式进行数据爬取,其也可以使用NLP相关的基础,优化提取的数据等等。

雄关漫道真如铁,而今迈步重头越。刚入门,一个新的开始。往后和增加更多基于深度学习算法的内容到知识图谱的建设,应用等。

联系我

  1. 我的github:https://github.com/Htring
  2. 我的csdn:科皮子菊
  3. 我订阅号:AIAS编程有道 AIAS编程有道
  4. 知乎:皮乾东

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.