数据获取

  • 基于自然语言处理技术的实体抽取(中文命名实体识别平台如TLP、HanLP等均提供了不错的接口),当然也可以根据项目需求采用传统的机器学习或深度学习模型进行抽取、特定领域的新词发现等(难度较高、而且不完全适用,依领域而定)
  • 人工非结构化数据抽取(众包标注平台)、人工辅助修正
  • 以构造的实体为出发点在相关的平台爬虫爬取结构化数据作为补充,可重复迭代
  • 人工非结构化数据抽取
  • 其他团队已有的研究成果、数据库数据(本体对齐)

本体建模

  • 基于protege开源工具(https://protege.stanford.edu/)手工构建本体,依托于protege可以搭建一个支持多人协作的online版的大型本体构建平台
  • protege的底层是对owl文件的增删改查,依托于owl的本体框架规范,可自行构建对owl本体文件的操作脚本,以实现海量结构化数据的增删改查,提高效率

本体工具

  • Jena:对于本体文件的接口框架,用于构建系统后端
  • TDB:Jena内置的用于存储RDF的组件
  • Jena提供了RDFS、OWL和通用规则推理机(http://jena.apache.org/download/index.cgi),除此之外,可以嵌入主流的对比效果更好的推理机
  • SPARQL:(SPARQL Protocol and RDF Query Language),是为RDF开发的一种查询语言和数据获取协议,它是为W3C所开发的RDF数据模型所定义,但是可以用于任何可以用RDF来表示的信息资源。可以大幅度地提高本体信息的检索速度
  • Fuseki:Jena提供的SPARQL服务器,也就是SPARQL endpoint(http://central.maven.org/maven2/org/apache/jena/apache-jena-fuseki/3.8.0/

后台搭建

  • 基于java的后台框架Springboot,SSM等
  • 利用Jena进行本体数据处理,采用SPARQL作为检索语言

前端

  • 基于Html、css、js的框架React、Vue等,设计时可考虑移动端的兼容问题
  • 多样的可视化手段来展示信息,利用echart.js实现知识图谱可视化

知识问答


我的心不为谁而停留,但心总要为谁而跳动~