python知识点智能问答_基于知识图谱的智能问答机器人

研究背景及意义

智能问答是计算机与人类以自然语言的形式进行交流的一种方式,是人工智能研究的一个分支。

知识图谱本质上是一种语义网络,其结点代表实体(entity)或者概念(concept),边代表实体/概念之间的各种语义关系。知识图谱的出现是信息技术发展、时代发展的必然结果。语义的本质是关联。只有基于语义的数据互联才能发挥数据集成的非线性效应,才能获取大数据的特有语义。

近年来,基于知识图谱的问答系统则成为学术界和工业界的研究和应用热点方向。相较于纯文本,知识图谱在问答系统中具有以下优势。这些优势都促使本文使用知识图谱来作为问答系统的知识来源。

-数据关联度:语义理解智能化程度问题语义理解程度是问答系统的核心指标。在知识图谱中,所有知识点被具有语义信息的边所关联。从问句到知识图谱的知识点的匹配关联过程中,可以用到大量其关联结点的关联信息。这种关联信息无疑更为智能化的语义理解提供了条件。

-数据精度:回答准确率知识图谱的知识来自专业人士标注,或者专业数据库的格式化抓取,这保证了数据的高准确率。

-数据结构化:检索效率知识图谱的结构化组织形式,为计算机的快速知识检索提供了格式支持。

本系统实现目标和内容

本文针对实验室这一关系领域构建知识图谱,基于Neo4j(非关系型数据库)建立学生、老师、项目三个实体的关系网络,使用Python AIML搭建智能问答机器人开发环境,将二者集成,通过接入微信可视化。

最终实现的主要功能是:通过微信向个人(或公众号)账号发送人物、关系查询信息,机器人能够自动查询后回答。

0535dc845ec3?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

系统设计框图

知识图谱设计

Neo4j 是一个无框架数据库,它将数据作为顶点和边存储,适合知识图谱的存储结构。它存储和使用的数据自始至终都是使用原生的图结构数据进行处理的,不像有些图数据库,只是在计算处理时使用了图结构数据,而在存储时还将数据保存在关系型数据库中。并且它性能高;存储读写速度快;稳定性好;作为较早的一批图形数据库之一,文档和各种技术博客较多。

Neo4j 的查询语言 Cypher 是一种对图形声明查询的语言,使用图形模式匹配作为主要的机制来处理图形数据选择。Neo4j 提供Python的基本操作API 接口,方便融合到整个系统当中。

抽取的实体:学生、老师、项目

学生与老师之间存在“师生”关系;学生与项目存在“负责人”、“成员”等关系;老师与项目存在“负责人”、“成员”等关系。

0535dc845ec3?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

知识存储结构

智能问答机器人

利用Python AIML 人工智能标记语言建立机器人问答语料库。

0535dc845ec3?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

语料库建立

微信接入可视化

微信团队给开发者提供了一套标准的接口,为开发者的开发工作提供了很大的便利,我们只需要学习如何通过开放接口获取用户查询的消息,以及如何发送给用户消息这两个部分。本系统正是利用微信公众平台开发的这些优势,只专注于智能问答系统的实现过程,大大减少了网络通信和交互界面设计的工作量,因此选择它作为问答这一互动过程的交流渠道。

0535dc845ec3?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

微信开发机制

0535dc845ec3?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

实现效果图

后记

由于数据可达性,选择的是实验室的知识图谱,还可以扩展到任一领域,第一次写作,做得不好希望大家提出意见,源码见个人github

博客地址:https://veronica1997.github.io/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/349360.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java会了还学什么_java都学哪些内容?学完之后可以做哪些工作?

展开全部阶段一:揭开企业开发神秘面纱 (4周32313133353236313431303231363533e78988e69d8331333431336163)1) Web开发基础:HTML语言、JavaScript、CSS、DOM等2) Oracle数据库基础:安装、配置Oracle数据库,熟练掌握SQL语句3) 操作系…

Java中的RAII

资源获取即初始化( RAII )是Bjarne Stroustrup用C 引入的一种用于异常安全资源管理的设计思想。 感谢垃圾回收,Java 没有此功能,但是我们可以使用try-with-resources实现类似的功能。 约翰哈德斯(John Huddles&#x…

java去掉字符串中前后空格函数_Java去除字符串中的空格

1. String.trim()trim()是去掉首尾空格2.str.replace(" ", ""); 去掉所有空格,包括首尾、中间String str " hell o ";String str2 str.replaceAll(" ", "");System.out.println(str2);3.或者replaceAll("…

python3开发工具推荐_python开发工具有哪些?我推荐这5款python开发工具!

python开发工具有很多,目前我们用的比较多的是pycharm,除了pycharm还有文本编辑器像微软的vscode,sublime text都有非常好的插件,今天,我就把Python程序员使用频率比较高的5款开发工具推荐给大家,希望对大家…

java显示数据库 控件_WebLogic运用DB的Java控件访问数据库(1)

一、方法WebLogic页面与数据通信时,一般采用Java控件直接访问数据连接池,数据的直接操作都定义在Java控件中,页面流做为数据的逻辑处理单元,普通页面做为显示层。可以看出WebLogic这个方法是典型的三层结构,数据层(Jav…

python的实验报告怎么写_学号:20191221,《python实验设计》实验报告三

学号 2019-2020-2 《Python程序设计》实验三讲述课程:《Python程序设计》班级: 1912姓名: 何应霆学号:20191221实验西席:王志强实验日期:2020年5月16日必修/选修: 公选课1.实验内容建立服务端和…

eclipse juno_Eclipse Juno上带有GlassFish的JavaEE 7

eclipse junoJava EE 7很热。 前四个JSR最近通过了最终批准选票,与此同时GlassFish 4达到了升级版83。 如果您关注我的博客,那么您将了解NetBeans的大部分工作。 但是我确实认识到,那里还有其他IDE用户,他们也有权试用最新和最出色…

java 生成校验验证码_java 验证码生成与校验

java绘图相关类验证码工具类package dt2008.util;import javax.imageio.ImageIO;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.awt.*;import java.awt.image.BufferedImage;import java.io.IOException;import ja…

红黑树中nil结点_什么是红黑树?程序员面试必问!

点击上方java小组,选择“置顶公众号”优质文章,第一时间送达当在10亿数据中只需要进行10几次比较就能查找到目标时,不禁感叹编程之魅力!人类之伟大呀! —— 学红黑树有感。终于,在学习了几天的红黑树相关的…

杰克逊JSON解析错误-UnrecognizedPropertyException:无法识别的字段,未标记为可忽略[已解决]...

在解析从我们的一个RESTful Web服务接收到的JSON字符串时,我收到此错误“线程“ main”中的异常com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException:无法识别的字段“人”(类Hello $ Person),不是标记…

mysql2008数据库配置_SQL Server 2008 R2 超详细安装图文教程

这篇文章主要介绍了SQL Server 2008 R2 超详细安装图文教程,需要的朋友可以参考下一、下载SQL Server 2008 R2安装文件二、将安装文件刻录成光盘或者用虚拟光驱加载,或者直接解压,打开安装文件,出现下面的界面安装SQL Server 2008 R2需要.NET…

hdfs读写流程_深度探索Hadoop分布式文件系统(HDFS)数据读取流程

一、开篇Hadoop分布式文件系统(HDFS)是Hadoop大数据生态最底层的数据存储设施。因其具备了海量数据分布式存储能力,针对不同批处理业务的大吞吐数据计算承载力,使其综合复杂度要远远高于其他数据存储系统。因此对Hadoop分布式文件系统(HDFS)的深入研究&a…

python可视化分析网易云音乐评论_Python数据可视化:网易云音乐歌单

网易云音乐2018年度听歌报告—遇见你,真好。相信有不少人在上周,应该已经看过自己网易云音乐的年度报告了。小F也是去凑凑热闹,瞅了一波自己的年度听歌报告。那么你在云村又听了多少首歌,听到最多的歌词又是什么呢?2018年你的年度…

mysql隔离级别验证_MySQL事务隔离级别以及验证

查询初始数据开启A事务  并做更新操作再另一端 B开始另一个事务查询 事务级别设置为读未提查询到事务未提交的数据 a的count修改为3 但是没有提交2 第二个级别 读已提交 避免脏读问题 但是有不可重复读问题回滚数据 修改隔离级别 确保都是 读已提交级别客户端A客户端B验证 脏…

登录样式:log4j 2,上下文,自动清除…全部不附加任何字符串!

日志记录-保持操作的时间跟踪-对于任何关键任务系统,无论大小,都至关重要。 我们的Project-X框架也是如此 ,这就是为什么我们希望从一开始就正确地做到这一点。 基于我们在传奇的UltraESB上的登录经验, 上下文日志记录&#xff0…

python37安装失败_Linux 安装Python37

1、下载python3.7.0https://www.python.org/downloads/release/python-370/2、创建Linux的python37目录mkdir /usr/local/python373、解压python3.7.0源码tar zxvf python3.7.0.tar.zg4、配置编译参数./configure --prefix/usr/local/python375、make6、make install注意&#…

python string模块template_Python标准库笔记(1) — string模块

String模块包含大量实用常量和类,以及一些过时的遗留功能,并还可用作字符串操作。1. 常用方法常用方法描述str.capitalize()把字符串的首字母大写str.center(width)将原字符串用空格填充成一个长度为width的字符串,原字符串内容居中str.count…

注意力机制可视化_目标跟踪中的(STAM)时空注意力机制

目标跟踪分为单目标跟踪和多目标跟踪,单目标跟踪较为简单,这里我们只讨论多目标跟踪。多目标跟踪的遮挡问题多目标跟踪时特别容易发生目标间的相互遮挡,从而导致严重的预测偏移问题,如下图所示:红色框的行人在和蓝色框…

byteman_使用Byteman和JUnit进行故障注入

byteman我们的应用程序独立存在的时间已经很久了。 如今,应用程序是一种非常复杂的野兽,它们使用无数的API和协议相互通信,将数据存储在传统或NoSQL数据库中,通过网络发送消息和事件……例如,您多久考虑一次例如数据库…

java动态扩展_java栈内存动态扩展要怎么理解?要如何实现?

小伙伴们知道如何在java栈中内存动态扩展吗?这是虚拟机中的一个概念,下面让我们一起来看看该如何实现吧。一、内存概念在java中,我们一般会简单把java内存区域划为两种:堆内存与栈内存。其实这种划分是比较粗粒度的。其中栈内存就是指的是虚…