Advertisement

基于知识图谱的菜谱问答系统——需求分析

阅读量:

1.项目背景

近年来,人机对话系统作为人工智能的一个重要领域,得到了许多关注和发展。传统信息检索技术已经不能满足人们对信息获取效率的要求,智能问答系统应运而生,并成为自然语言处理领域一个非常重要的研究热点。
知识图谱(Knowledge Graph)于2012年5月17日被Google正式提出,其初衷是为了提高搜索引擎的能力,增强用户的搜索质量以及搜索体验。知识图谱是一种结构化的语义知识库,用于以符号形式描述物理世界中的概念及其相互关系,其基本组成单位是“实体 关系 实体”三元组,以及实体及其相关属性值对,实体间通过关系相互联结构成网状知识结构。
随着知识图谱的不断发展,越来越多的知识图谱出现在人们视野当中,这些知识图谱在各个领域中得到广泛应用,能够作为智能问答的高质量数据源。知识图谱用于智能问答领域主要有两个方面:一方面,问答系统可以直接从知识图谱中检索答案;另一方面,知识图谱能够给智能问答系统提供外部信息,从而提高问答系统的性能,这两个方面都是研究的热点。

2.项目需求

采用知识图谱组织机器人的知识库,并对用户输入进行推理、关联,实现对用户意图的准确理解,检索菜谱领域知识库并生成答案。

抽象用例:

需求中的动词短语: 组织机器人知识库、理解用户输入、检索知识库、生成答案
用例分析:

  • 组织机器人知识库:

    • 起始用户:用户输入菜谱数据
    • 终止用户:知识图谱模块组织形成知识图谱新内容
    • 是否完成有效任务:用户获得知识图谱内容
    • 是否是业务流程:是
  • 理解用户输入并生成答案:

    • 起始用户:菜谱系统用户输入问题
    • 终止用户:菜谱系统用户获得答案输出
    • 是否完成有效任务:菜谱系统用户获得所提问题答案
    • 是否是业务流程:是
  • 检索知识库:

    • 起始用户:问答模块发出检索请求
    • 终止用户:问答模块获得检索信息
    • 是否完成有效任务:问答模块成功检索到信息
    • 是否是业务流程:否

综上所述,项目用例:组织机器人知识库、理解用户输入并生成答案。

高层用例:
  • 组织机器人知识库(问答):用例的开始状态是用户向知识图谱模块输入菜谱数据,结束状态是知识图谱模块分析组织获得新的知识图谱内容。
  • 回答菜谱相关问题(知识图谱构建):用例的开始状态是用户向问答模块输入问句,结束状态是用户获得从问答系统返回的问题。
用例图

用例1
用例2

扩展用例:

构建知识图谱:

用户 系统
- 展示构建知识图谱GUI
TUCBW输入菜谱数据 显示用户数据成功输入
选择生成知识图谱按钮 显示正在生成知识图谱
- 显示新的知识图谱内容已形成
TUCEW获得图谱形成信息 -

问答:

用户 系统
- 展示问答系统GUI
TUCBW输入菜谱相关问题 显示用户输入问题成功及所输入问题
- 显示用户输入的问题的回答
TUCEW获得系统返回的答案 -
数据模型:

本项目使用Neo4j图数据库来组织构建系统的数据模型,采用经典的知识图谱三元组模型:实体–关系–实体结构。

具体数据模型结构设计表:
数据模型
//
//

项目流程图:

知识图谱模块

实体抽取模块

问答模块

输入

输入菜谱数据

使用

检索

使用

检索菜谱信息

用例1: 形成知识图谱

实体抽取

用例2: 回答菜谱相关问题

菜谱系统用户

3.项目设计

剧情描述:

构建知识图谱:
1)用户在主GUI中选择构建知识图谱
1.1)用户在知识图谱构建GUI中上传菜谱数据
1.2)知识图谱构建GUI将信息块发送到知识图谱模块
1.3)if(用户具有构建权限)
1.3.1)知识图谱模块将用户输入数据传递到实体抽取模块
1.3.2)实体抽取模块将标注数据返回到知识图谱模块
1.3.3)知识图谱模块根据标注数据构建知识图谱
1.3.4)知识图谱模块向知识图谱构建GUI返回信息:“知识图谱构建成功”
1.4)else
1.4.1)知识图谱模块向知识图谱构建GUI返回信息:“当前不具有构建知识图谱权限”
1.5)知识图谱构建GUI显示知识图谱模块的返回信息给用户
//
问答:
1)用户在主GUI中选择问答按钮
1.1)用户在问答GUI中输入问句
1.2)问答GUI向问答模块传入用户问句信息
1.3)问答模块将问句信息传入实体抽取模块
1.4)实体抽取模块返回标注数据到问答模块
1.5)问答模块将标注数据传入到知识图谱
1.6)知识图谱根据标注数据返回查询数据到问答模块
1.7)问答模块使用查询到的数据生成答句
1.8)问答模块将生成答句传到问答GUI
1.9)问答GUI显示问句给用户

分析序列图:

问答:
在这里插入图片描述
构建知识图谱:
在这里插入图片描述

设计类图:

问答:
在这里插入图片描述
构建知识图谱:
在这里插入图片描述
//
//

可采用的设计模式:

模板方法:在问答模块中可以采用模板方法
抽象出问答类用以完成问答的通用流程,其中细节方法由子类实现,其子类是特定类型问题的问答,负责实现针对该问题的答案生成等具体操作。

作者:453

全部评论 (0)

还没有任何评论哟~