一种基于知识图谱的电力问答与可视化系统的制作方法

文档序号:32003821发布日期:2022-11-02 12:16阅读:184来源:国知局
一种基于知识图谱的电力问答与可视化系统的制作方法

1.本发明涉及电力知识图谱技术领域,尤其涉及一种基于知识图谱的电力问答与可视化系统。


背景技术:

2.随着国家电网业务的不断发展,积累的电力行业数据量日益剧增,从海量信息中获取并理解有价值的知识具有重要的意义;
3.目前电力行业数据并未得到有效利用,缺乏公开的中文电力领域知识图谱。缺乏电力领域问答与可视化系统。
4.现在的电力知识图谱标准化程度低无法满足调控统筹管理的需要。电网运行数据分散在不同调控机构、不同专业、不同安全区,缺少统一管理机制;各应用模块服务化封装不够,缺乏服务调用机制;调控术语规范化程度不高,电网故障、重要检修、运行风险等典型事件缺乏统一的标准化和结构化记录方式,限制了调控统筹管理水平的进一步提高。
5.电力数据的结构化程度不高,难以自动关联缺陷、规程、预案、实时数据和设备属性数据,需要人为的从不同系统中查询相关信息,制约了调控工作效率;各类数据间的关联程度低,数据与数据间的关系未有自动的计算及关联功能,面对大量的电网运行反馈数据,无法直观、简洁的发现其中的问题;
6.电力数据公共化程度不高,电网运行过程中会产生大量的word、excel、纸质文档等,大量数据掌握在各部门的手中,部门间难以公用或查阅历史;面对大量的文档信息,文档标签化管理不足,无法快速精确锁定需要的文件,面对紧急的故障,相关信息的查阅效率低,影响故障的处置及分析效率;
7.现有技术中对历史故障信息的分析能力不足,很难将历史故障的信息通过调控业务的扩展,指导新进调度员、监控员进行培训以及对历史故障的分析总结。


技术实现要素:

8.本发明提供一种基于知识图谱的电力问答与可视化系统,系统可以解决电力行业数据结构化程度不高、公共化程度不高、智能化水平不高等问题。
9.基于知识图谱的电力问答与可视化系统包括:用户端、管理员端以及知识问答服务器;
10.用户端供用户使用,用户通过用户端与知识问答服务器通信连接,获取电力知识图谱,并进行显示处理;
11.管理员端供系统管理员使用,管理员通过管理员端与知识问答服务器通信连接,对用户信息进行增删改查,对知识图谱的问答记录进行增删改查,还对用户反馈信息进行处理;
12.知识问答服务器用于实现电力问答与可视化显示,基于b/s架构,采用前后端分离的开发设计,前端基于vue.js,后端采用python开发的微型web框架flask;
13.知识问答服务器配置有数据库,数据库采用neo4j数据库存储知识图谱数据;
14.知识问答服务器构建电力领域知识图谱,为问答子系统的实现提供知识库。
15.进一步需要说明的是,用户端具有用户界面组件;用户界面组件首页由headercom、chatrightcom、qalistleftcom、logincom四个组件构成;headercom为页面顶部,包括几个链接和登录按钮;chatrightcom为页面右侧的问答模块,由chatinputcom和chatoutputcom两个子组件构成;qalistleftcom为页面左侧的问答系统列表,包含问答系统的基本信息;logincom为登录注册模块;
16.用户端具有知识图谱可视化功能;
17.使用d3.js和neo4j图数据库来实现知识图谱可视化;
18.将构建知识图谱用到的实体和关系csv表转化为json格式数据,json文件的data部分包括两个字典,字典名分别是all和power,前端通过ajax方式,post请求后端数据,返回给前端进行图谱渲染;在知识图谱可视化界面,随意拖拽节点,放大缩小知识图谱,点击节点能够查看节点详细信息,输入节点id和节点名称即可查询节点;
19.用户端还对知识图谱进行初始化设置;通过添加鼠标响应事件实现点击节点显示相关节点及边的功能;通过d3实现点击节点显示其属性和属性值;用户端还实现知识图谱的节点搜索功能;
20.用户端具有登录模块,由logincom组件实现,logincom组件由vue的组件库elementui实现。
21.进一步需要说明的是,管理员端具有知识图谱扩充模块和管理功能模块;
22.知识库扩充模块由kgextendcom组件实现,选择本地文件进行上传,调用知识问答服务器的upload接口将文件发送到知识问答服务器,上传成功后,调用知识问答服务器的expand接口,向知识问答服务器发送ajax请求;
23.知识问答服务器在接收到文件和扩充请求后,在mysql的扩充任务信息表中添加扩充任务的相关信息,将任务状态字段的初始值设置为导入中,并根据当前时间设置任务提交时间字段;然后创建一个新的线程,调用知识图谱构建模块,异步的完成知识图谱数据导入、实体和关系数量的统计操作;数据导入完成后,再根据统计结果和结束时间对扩充任务信息表中的扩充实体数、扩充后实体总数、任务完成时间字段进行赋值;
24.管理功能模块包括用户信息管理、问答记录管理、用户反馈管理功能,为管理员提供了维护系统信息和用户信息的可视化界面。
25.从以上技术方案可以看出,本发明具有以下优点:
26.本发明涉及的基于知识图谱的电力问答与可视化系统能够为用户带来更好的用户体验。以电力领域知识图谱作为答案来源,与传统搜索引擎不同的是用户输入自然语言描述的问题,可以获得更加简洁和精准的答案。基于知识图谱的问答系统蕴含巨大的市场需求,具有较强的实用性和先进性,是用户解决生活问题的智能小助手。
27.本发明涉及的基于知识图谱的电力问答与可视化系统基于b/s架构,采用前后端分离的开发技术,前端基于vue.js,后端采用python开发的微型web框架flask,数据库采用neo4j数据库存储知识图谱数据。
28.本发明涉及的基于知识图谱的电力问答与可视化系统基于结构化、半结构化、非结构化数据构建电力领域知识图谱,为问答系统的实现提供电力知识库。基于aiml框架的
方法构建问答模块,包括问题预处理、问题理解、答案获取三个主要流程。
29.本发明涉及的基于知识图谱的电力问答与可视化系统为用户端提供了知识图谱可视化功能,功能基于html、css和d3.js力导向图渲染知识图谱,用户可以对图谱节点进行拖拽、点击和查询等操作;还为管理员端提供了知识图谱扩充功能,以便及时更新问答系统的知识库,为用户提供更准确的答案。
附图说明
30.为了更清楚地说明本发明的技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
31.图1为基于知识图谱的电力问答与可视化系统示意图;
32.图2为用户端实施例示意图;
33.图3为管理员端实施例示意图;
34.图4为系统架构示意图图;
35.图5为知识图谱构建架构图。
具体实施方式
36.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
37.本发明提供的基于知识图谱的电力问答与可视化系统能够准确地理解用户使用自然语言描述的问题,可以在精准化问答服务中起到关键作用,是人机交互一种更加高级的方式。问答系统可以快速地从海量信息中获取和理解有价值的知识,能够真正实现在语义层面上的知识检索。基于知识图谱的问答系统在人工智能及其相关产业具有广泛的应用前景和巨大的市场需求,具有先进性和实用性。
38.本发明是基于知识图谱的电力问答与可视化系统的设计与实现,系统旨在提供电力领域知识问答。如图1至5所示,系统包括:用户端2、管理员端3以及知识问答服务器1;
39.其中,系统架构可以包括用户端2、管理员端3,网络和知识问答服务器1。网络是用以在用户端2、管理员端3和知识问答服务器1之间提供通信链路的介质。网络可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
40.应该理解,如图1至5中的用户端2、管理员端3、网络和知识问答服务器1的数目仅仅是示意性的。根据实现需要,可以具有任意数目的用户端2、管理员端3、网络和知识问答服务器1。比如知识问答服务器1可以是多个服务器组成的服务器集群等。
41.用户可以使用用户端2和管理员端3通过网络与知识问答服务器1交互,以接收或发送消息等。用户端2和管理员端3可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式计算机等等。
42.相关技术中,例如可以采用机器学习方法、深度学习方法等形成基于知识图谱的电力问答处理以及可视化显示。
43.具体来讲,用户端2供用户使用,用户通过用户端2与知识问答服务器1通信连接,获取电力知识图谱,并进行显示处理;
44.用户端2具有用户界面组件,用户界面组件由headercom、chatrightcom、qalistleftcom、logincom四个基本组件构成。headercom为页面顶部,包括几个链接和登录按钮;chatrightcom为页面右侧的问答模块,由chatinputcom和chatoutputcom两个子组件构成;qalistleftcom为页面左侧的问答系统列表,包含问答系统的基本信息;logincom为登录注册模块,只有在点击headercom中的登录按钮才会显示,且包含一个子组件registercom用于实现注册功能。在知识问答服务器1实现了问答系统列表组件,可以在该组件中添加新的问答系统,体现了良好的可扩展性。列表中的每个问答系统都包括名称、系统描述、知识库的实体数量和关系数量这些信息。
45.用户端2具有知识图谱可视化功能。使用d3.js和neo4j图数据库来实现知识图谱可视化模块。首先将构建知识图谱用到的实体和关系csv表转化为json格式数据,json文件的data部分包括两个字典,字典名分别是all和power,前端通过ajax方式,post请求后端数据,返回给前端进行图谱渲染。在知识图谱可视化界面,可以随意拖拽节点,放大缩小知识图谱,点击节点能够查看节点详细信息,输入节点id和节点名称即可查询节点。
46.用户端2对知识图谱进行初始化设置;通过添加鼠标响应事件实现点击节点显示相关节点及边的功能;然后,通过d3实现点击节点显示其属性和属性值;最后,实现知识图谱的节点搜索功能。
47.用户端2能够实现登陆注册功能。登录模块由logincom组件实现,该组件主要由vue的组件库elementui实现。
48.管理员端3供系统管理员使用,管理员通过管理员端3与知识问答服务器1通信连接,对用户信息进行增删改查,对知识图谱的问答记录进行增删改查,还对用户反馈信息进行处理;
49.管理员端3可以实现知识图谱扩充功能。知识库扩充模块由kgextendcom组件实现,点击“上传文件”后直接选择本地文件进行上传,调用知识问答服务器1的upload接口将文件发送到知识问答服务器1,上传成功后点击“提交任务”按钮,调用知识问答服务器1的expand接口,向知识问答服务器1发送ajax请求。知识问答服务器1在接收到文件和扩充请求后,首先在mysql的扩充任务信息表中添加该扩充任务的相关信息,将任务状态字段的初始值设置为导入中,并根据当前时间设置任务提交时间字段。然后创建一个新的线程,调用知识图谱构建模块,异步的完成知识图谱数据导入、实体和关系数量的统计等操作。数据导入完成后,再根据统计结果和结束时间对扩充任务信息表中的扩充实体数、扩充后实体总数、任务完成时间等字段进行赋值。
50.管理员端3还包括用户信息管理、问答记录管理、用户反馈管理四个基本功能模块,为管理员提供了维护系统信息和用户信息的可视化界面。此外,后台管理系统还包括查找和筛选等附加功能,管理员可以根据需要使用查找和筛选功能来查看指定的信息。
51.知识问答服务器1用于实现电力问答与可视化显示,基于b/s架构,采用前后端分离的开发技术,前端基于vue.js,后端采用python开发的微型web框架flask,数据库采用neo4j数据库存储知识图谱数据。基于结构化、半结构化、非结构化数据构建电力领域知识图谱,包括知识获取、知识处理、知识存储三个主要流程,为问答系统的实现提供电力知识
库。基于aiml框架的方法构建问答模块,包括问题预处理、问题理解、答案获取三个主要流程。
52.在知识问答服务器1实现的基础功能之上,为用户端2提供了知识图谱可视化功能,该功能基于html、css和d3.js力导向图渲染知识图谱,用户可以对图谱节点进行拖拽、点击和查询等操作;还为管理员端3提供了知识图谱扩充功能,以便及时更新问答系统的知识库,为用户提供更准确的答案。
53.本技术实施例提供的基于知识图谱的电力问答方式可以涉及人工智能的计算机人工智能云服务,具体的,利用计算机人工智能云服务实现人工智能处理,可提高知识回答的准确度。
54.其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
55.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
56.本发明云计算技术给与知识回答重要的支撑。知识问答服务器1的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。具有云技术的知识问答服务器1实现人工智能服务、云物联、云教育等功能;其中,所谓人工智能云服务知识问答,可以作为aiaas(aias a service,中文为“ai即服务”)。这是目前主流的一种人工智能平台的服务方式,具体来说aiaas平台会把几类常见的ai服务进行拆分,并在云端提供独立或者打包的服务。这种服务模式类似于开了一个ai主题商城:所有的开发者都可以通过api接口的方式来接入使用平台提供的一种或者是多种人工智能服务,部分资深的开发者还可以使用平台提供的ai框架和ai基础设施来部署和运维自已专属的云人工智能服务。
57.在本发明的一种实施例中,以下将给出一种可能的实施例对其具体的实施方案进行非限制性阐述。
58.知识问答服务器1构建电力领域知识图谱,为问答系统的实现提供知识库;知识问答服务器1采用基于aiml框架和基本问答对两种技术方案从知识图谱中获取答案;知识问答服务器1中实现知识图谱可视化和知识图谱扩充等功能。
59.知识问答服务器1对知识图谱的构建过程中,首先确定构建目标、领域、范围、场景等内容。根据调研分析,对电力行业数据划分为名词解释、电工技术、电网数据、行业动态等内容。
60.知识问答服务器1在知识图谱构建过程中,从可靠数据源获取构建知识图谱的数据,包括非结构化、结构化和半结构化数据。结构化数据可以来自达梦数据库,半结构化数
据的来源可以是百度百科和电力领域垂直网站,非结构化数据的来源是国网内部文本文献。
61.知识问答服务器1在知识处理过程中,将源数据处理为符合构建知识图谱要求的固定格式结构化数据,为了方便导入neo4j图数据库,结构化数据的文件格式为csv文件,实体和关系数据分别存储在不同的csv文件中。
62.在知识获取阶段,需要从可靠数据源获取构建知识图谱的数据,包括非结构化、结构化和半结构化数据。
63.结构化数据来自达梦数据库,针对在性能、安全性和国产化等有着严格要求的背景下,国网存储数据的数据库为国产达梦数据库。连接并初始化达梦,构造sql语句并进行数据查询,接着进行数据类型、结构、属性转换,构建neo4j数据存储语言,并结合sql语言抽取的信息确定上下位关系,创建节点。
64.半结构化数据的来源是百度百科和电力领域垂直网站,主要通过爬虫的方式获得。爬虫模型基于scrapy框架构建,框架主要包括爬虫、调度器、下载器等组成部分。在爬虫过程中首先需要灵活的选取初始种子,以防爬虫操作在开始就失败,还需要绕开反爬虫检测,避免自己所在的网络区域被目标服务器限制。
65.本发明涉及的非结构化数据的来源可以是国网内部文本文献,主要采用基于句法语义特征的实体关系抽取方法获得。通过数据挖掘技术提取文本,然后通过清洗的规则处理对提取的文本进行分句等规范化操作。最后对文本进行对应的分词、词性标注等操作。通过事先定义的句法分析规则进行句法分析规则匹配,通过判断语句判断是否抽取成功,如果抽取成功则进行对应的知识存储,否则判断是否抽取完毕,如果没有再继续进行抽取。抽取之前将句子分句成单独的句子,通过对每个句子的不断抽取检索,从而能够达到对非结构化数据的抽取过程。
66.从半结构化和非结构化数据中获取源数据后,需要对知识进行预处理,整体思路是将源数据处理为符合构建知识图谱要求的固定格式结构化数据,为了方便导入neo4j图数据库,结构化数据的文件格式为csv文件,实体和关系数据分别存储在不同的csv文件中。首先,需要对源数据进行数据清洗,删除不重要的字段,以及主要字段值为空或为零的记录;其次,根据源数据表结构对其进行拆分,提取实体、属性和关系,一个实体对应多个属性,不同实体之间通过主键区分源实体和目的实体形成关系。源数据经过以上步骤的处理就会变为包含实体表和关系表的csv文件。
67.知识问答服务器1知识存储阶段,由于neo4j数据库存储图数据效率较高且使用方便灵活,使用neo4j数据库来存储知识图谱的实体、属性和关系。最终构建电力领域知识图谱,为问答系统的实现提供知识库。
68.在本系统中,由于知识图谱的数据量在十万以下,而且由于本系统在导入数据时不能影响当前知识图谱的使用,需要使用能够实时插入数据的导入方法。基于以上两点,本系统使用load csv方法导入数据。
69.根据neo4j中load csv方法的规定,需要先导入实体数据,再根据数据库中的实体导入关系数据。在导入实体及属性数据前,我们需要根据实体类型和属性名来构建cypher语句,实体数据的csv文件以实体类型来命名,如person实体的csv文件命名为person.csv,csv文件的字段名为属性名,因此我们可以直接从csv文件中获取这两个信息,从而构建
cypher语句,完成实体和属性数据入库。对于关系数据的cypher语句,则需要使用源实体和目的实体进行构建。将构建好的cypher语句写入脚本程序中,则可以实现实体、属性和关系数据的一键入库。构建好的知识图谱蕴含丰富的、便于计算机读取的实体和关系数据,可以为问答提供知识库,使用户获得更精确的搜索结果。此外,该模块还需要完成知识图谱扩充任务中的实体关系增量统计。
70.对于知识问答服务器1的问答模块构建,首先将基本问答语句输入到系统中,系统进行分词、词性标注、关键字提取等相关操作。结合语义相似度计算,通过标签生成对应内容。
71.具体来讲,本发明的问答系统主要基于aiml框架和基本问答对两种技术方案。首先将基本问答语句输入到系统中,系统进行分词、词性标注、关键字提取等相关操作,并结合语义相似度计算,通过标签生成对应内容,在系统中进行相关问答语句的内容检索工作,如果检索成功会返回对应的content答句,否则返回null。紧接着对返回的内容进行进行判定是否为空,如果不为空则说明检索到了对应的数据,将其返回即可,否则通过基于aiml问答系统框架进行进一步的结果检索工作,如果检索数据成功则返回对应的答句,否则返回通用答句(如:您的问题太难了,可否换个方式提问?)。
72.语义解析模块包含有分词、词性标注、tag标签生成、相似度计算等内容,本文采用的分词技术和词性标注是基于哈工大的ltp自然语言处理框架。
73.本文主要采用基于余弦算法的相似度计算算法,将句子进行分句和关键词提取之后,利用哈尔滨工业大学发布的同义词词林,转换为对应的tag标签,然后对对应的tag标签进行分层计算,调整不同层次的权重,最后计算出对应的相似度分数。
74.基于问答对的单轮对话主要是将对应的问句进行分词、去除停用词、词性标注等操作后,对取得的内容进行tag计算,然后使用对应的tag在数据库中查找对应的匹配内容,查询到数据则反馈对应的答案,否则进入其他处理流程。
75.本发明涉及的基于知识图谱的电力问答与可视化系统能够为用户带来更好的用户体验。以电力领域知识图谱作为答案来源,与传统搜索引擎不同的是用户输入自然语言描述的问题,可以获得更加简洁和精准的答案。基于知识图谱的问答系统蕴含巨大的市场需求,具有较强的实用性和先进性,是用户解决生活问题的智能小助手。
76.本发明涉及的基于知识图谱的电力问答与可视化系统基于b/s架构,采用前后端分离的开发技术,前端基于vue.js,后端采用python开发的微型web框架flask,数据库采用neo4j数据库存储知识图谱数据。
77.本发明涉及的基于知识图谱的电力问答与可视化系统基于结构化、半结构化、非结构化数据构建电力领域知识图谱,为问答系统的实现提供电力知识库。基于aiml框架的方法构建问答模块,包括问题预处理、问题理解、答案获取三个主要流程。
78.本发明涉及的基于知识图谱的电力问答与可视化系统为用户端2提供了知识图谱可视化功能,功能基于html、css和d3.js力导向图渲染知识图谱,用户可以对图谱节点进行拖拽、点击和查询等操作;还为管理员端3提供了知识图谱扩充功能,以便及时更新问答系统的知识库,为用户提供更准确的答案。
79.本发明涉及的基于知识图谱的电力问答与可视化系统是结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实
现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
80.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1