【Python机器学习】NLP信息提取——命名实体与关系

我们希望计算机能够从文本中提取信息和事实,从而略微理解用户所说的内容。例如,当用户说“提醒我星期一浏览***.org网站”,我们希望这句话触发当天后下一个周一的日程或者提醒的操作。

要触发上述操作,需要知道“我”代表一种特定类型的命名实体:人。而且,聊天机器人应该知道它需要将“我”替换成该用户的用户名,达到文本扩展或标准化的目的。还需要聊天机器人知道“***.org”是一个缩写的URL(一个指代特定事物名称的命名实体),而且这种特定类型的命名实体的标准化拼写方式可能是“http://***.org”、“https://***.org”,甚至可能是“https://www.***.org”。同样的,我们还需要聊天机器人明白周一是一周中的某一天(这是另一种被称为“时间”的命名实体),并且能够在日历中找到它。

为了使聊天机器人能够正确的相应这个“简单”的需求,还需要它能够提供命名实体“我”和指令“提醒”之间的关系。聊天机器人甚至需要识别句子的隐含主题(“你,提醒我……”),其中“你”指的是聊天机器人,即另一个类型为人的命名实体。而且需要告诉聊天机器人,日程或者提醒是在将来发生的,所以它应该找到下周一来创建提醒。

一个典型的句子可能包含集中几种不同类型的命名实体,例如地理位置实体、组织、人物、政治实体、时间、事件和自然现象。同时,一个句子有也可以包含多个关系,即关于句子中命名实体之间关系的事实。

知识库

除了从用户语句对应的文本中提取信息,我们还可以使用信息提取技术来帮助聊天机器人进行自我训练。如果使用聊天机器人在大型语料库上进行信息提取,这个语料库就可以生成关于这个世界的各种信息,从而指导聊天机器人后续的行为和动作。有一些聊天机器人通过知识库记录提取的所有信息(通过安排“家庭作业”式的离线阅读)。然后通过查询这个知识库,可以帮助我们的聊天机器人做出对于这个世界更加准确的判断或推理。

聊天机器人还可以存储与当前用户的“会话”或者对话相关的知识。这些仅和当前对话相关的知识称为“上下文”。这些上下文知识既可以存储在聊天机器人后台的统一全局知识库中,又可以存储在单独的知识库中。商业聊天机器人API通常将用户的上下文与支持和其他所有用户聊天的全局知识库分开存储。

上下文可以包含关于用户、聊天室或频道的信息,或者当前时刻的天气和新闻。基于会话内容,上下文甚至可以包含聊天机器人自身的状态变化。一个“自我感知”的例子是,智能聊天机器人应该跟踪它已经告诉用户的所有事情的历史记录,或者它已经向用户提出的问题的历史记录,从而避免重复。

这就是这部分的目标,即教会机器人理解输入的内容。将机器人产生的这种理解结果放入一个为了存储知识而设计的灵活数据结构中,然后机器人就可以利用这些知识做决策,从而在回复中引入更多对现实世界的理解。

除了识别文本中的数字和日期等简单的任务,我们还希望机器人能够提取有关现实世界的更通用的信息,而且希望它能够独立完成这项任务,而不是我们自己把关于现实世界的所有知识都“编程”输入给它。例如,我们希望机器人能够从自然语言文档中学习,例如下面这个句子:

In 1983, Stanislav Petrov,a lieutenant aolonel of the Soviet Air Defense Forces,saved the world from nuclear war.

如果在历史课上读到或听到类似上面这句话做笔记时,我们可能会去理解这句话的意思,同时在脑海中建立各种概念或词之间的关系。我们可能会把这句话简化成某种“从句子中得到的”知识。我们希望机器人做同样的事情希望它“记录”所学到的知识,例如Stanislav Petrov是lieutenant aolonel的事实或知识。这种知识可以存储在下面这样的数据结构中:

('Stanislav Petrov','is-a','lieutenant aolonel')

这个例子描述了两个命名实体节点(Stanislav Petrov和lieutenant aolonel)以及在知识图谱或知识库中它们之间存在的('is-a')关系或连接。当上述关系用符合知识图谱关系描述格式(RDF)标准的形式存储时,它被称为RDF三元组。一般来说,这些RDF三元组存储在XML文件中,但它们也能存储在可以用(主体、关系、对象)形式记录三元组图形关系的任何格式文件或数据库中。

这些三元组的集合称为知识图谱。上述集合有时也被语言学家称为本体,因为它存储可关于词的结构化信息。但当这个图谱表示的是关于世界的事实而不仅仅是词时,它被称为知识图谱或者知识库。下图就是想要从上述句子中提取出来的知识图谱的图形化表示。

上面的is-a关系表示一个无法直接从上述描述Stanislav的句子中提取出的事实。但是,这个lieutenant aolonel是军衔(military rank)的事实可以基于一个军事组织成员的头衔是军衔的事实推断出来。这种从知识图谱中获取事实的逻辑操作称为知识图谱推断。它也可以被称为知识库查询,就像关系数据库查询一样。对于像Stanislav军衔这种特殊推断或查询,知识图谱必须包含关于军队和军衔的事实。如果知识库包含关于人的头衔以及人与职业(工作)关系的事实,甚至可能也会有所帮助。也许可以看出,相比于没有相关知识的知识库,有相关知识的知识库对于机器人理解上面这句话的帮助更大。如果没有这种知识库,那么像上面这样一个简单的句子包含的许多知识,都将让聊天机器人“摸不着头脑”。甚至可以说,对于一个只知道如何根据随机分配的主题对文档进行分类的机器人,关于职业等级的问题将超出“它的能力范围”。

这个问题是很严重的,如果我们有过与一个不理解“which way id up”(路在何方)的聊天机器人交谈经历的话,我们就会理解这个问题的严重性。人工智能研究中最令人生畏的挑战之一就是对尝试知识图谱的编译和高效查询。而这些尝试在我们的日程对话中被视为理所应该知道的东西。

人类甚至在获得语言技能之前就获取了很多常识,但是机器人难以找到一个包含常识的语料库去阅读和学习,也不存在包含常识的百科文章供机器人进行信息提取。

事物与人之间存在各种各样的事实关系,例如“是……类别”、“被用来……”等。大多数知识库会规范化上述表示关系定义的字符串,所以“是……类别”和“是……类型”这种特定关系会被分配一个规范化的字符串或ID来表示。一些知识库也会规范化知识库中表示对象的名词,因此,可能会给2-gram “Stanislav Petrov”分配一个特定ID。“Stanislav Petrov”的同义词,比如“S. Petrov”,如果NLP流水线认为它们指的是同一个人,那么会被分配给同一个ID。

知识库可以用于构建称为问答系统(QA系统)的实用型聊天机器人。客服聊天机器人几乎完全依赖知识库来生成回复。问答系统非常适合帮助人们找到事实型信息,从而解放人类的大难去做更擅长的事情。人类不擅长精确地记忆事实,但善于发现这些事实之间的联系和模式,后者是机器人尚未掌握的东西。

信息提取

“信息提取”是将非结构化文本转换为存储在知识库或知识图谱中的结构化信息。信息提取是自然语言理解(NLU)研究领域的一份,尽管NLU经常被当做自然语言处理(NLP)的同义词使用。

在数据科学研究中,信息提取或者NLU代表不同的学习方式。它不仅仅是无监督学习,甚至“模型”(有关世洁运行的逻辑)本身也可以在没有人为干预的情况下获得。机器学习技术经常被用来训练信息提取模型。

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

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

相关文章

5.内容创作的未来:ChatGPT如何辅助写作(5/10)

引言 在信息爆炸的时代,内容创作已成为连接品牌与受众、传递信息与知识、以及塑造文化与观念的重要手段。随着数字媒体的兴起,内容创作的需求日益增长,对创作者的写作速度和质量提出了更高的要求。人工智能(AI)技术的…

感谢问界M9一打二十,让我们买到这么便宜的BBA

文 | AUTO芯球 作者 | 雷慢 国产豪华车,终于扬眉吐气了, 你敢信吗?在50万以上豪华车中, 现在问界M9一款车的月销量, 是其他前20名销量的总和! 要知道,它的对手是各种宝马、奔驰、雷克萨斯的…

私有化通讯工具:安全、高效、个性化,重塑企业沟通生态

在当今数字化时代,即时通讯已成为企业日常运营中不可或缺的一部分。随着数据安全和隐私保护意识的日益增强,越来越多的企业开始寻求更加安全、可控的沟通方式。私有化聊天工具应运而生,以其独特的核心优势,为企业构建了一个安全、…

VMware vSphere 8.0 Update 3b 发布下载,新增功能概览

VMware vSphere 8.0 Update 3b 发布下载,新增功能概览 vSphere 8.0U3 | ESXi 8.0U3 & vCenter Server 8.0U3 请访问原文链接:https://sysin.org/blog/vmware-vsphere-8-u3/,查看最新版。原创作品,转载请保留出处。 作者主页…

【Leetcode】70. 爬楼梯

题目来源 70. 爬楼梯 题目描述 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n 2 输出:2 解释:有两种方法可以爬到楼顶。 1 阶…

webpack5 构建优化方案看这篇就够了!【Node.js进阶】

无论在面试还是内部晋升,webpack 构建优化方案 一直都是非常重要的部分。 webpack5构建加持 一、项目完成目标二、搭建项目1. 安装koa、koa/router (如果已经配置可路过)2. 创建入口文件3. 安装构建依赖4. 在项目根目录添加 .babelrc 文件5. …

一般在写SQL时需要注意哪些问题,可以提高查询的效率?

很多人写SQL按照自己喜好,没有规则意识,这对于自主查询影响不大,你爱怎么搞就怎么搞,一旦涉及到提交任务或团队共享,就不能乱写了,会浪费资源影响到开发效率,严重的甚至会服务器瘫痪。 提几个关…

进程的重要函数

进程的重要函数: fork函数 了解fork函数 通过调用fork()函数&#xff0c;则会产生一个新的进程。调用fork()函数的进程叫做 父进程&#xff0c;产生的新进程则为子进程。 其编码过程: 1.函数功能: 函数头文件 #include <sys/types.h> #include <unistd.h> 函数…

运用Java实现倒计时功能

这个功能其实是比较好实现的&#xff0c;一般来说java中实现倒计时有两种方法&#xff1a; 1、使用 scheduledexecutorservice创建一个可重复执行的任务&#xff0c;直到时间到&#xff1a; ScheduledExecutorService 是 Java 中一种用于安排延迟或定期任务的工具。我们可以使…

云计算第四阶段------CLOUD Day4---Day6

Cloud DAY4 项目架构图&#xff1a; 环境准备&#xff1a; 主机名称IP地址配置logstash192.168.1.27最低配置4核8G #书接上文&#xff0c;我们在华为云平台租了几台云服务器&#xff0c;这次买一台性能好的服务器&#xff0c;作为logstash软件部署的载体。 今天给小伙伴们带来…

低代码门户技术:构建高效应用的全新方式

什么是低代码门户技术&#xff1f; 低代码门户技术是一种利用低代码平台构建企业门户网站或应用的技术。门户通常是企业内部和外部用户访问信息和应用的集中平台。低代码门户技术通过图形化界面和预置组件&#xff0c;允许用户快速搭建和定制这些门户平台&#xff0c;而无需深…

TCP并发服务器的实现

一请求一线程 问题 当客户端数量较多时&#xff0c;使用单独线程为每个客户端处理请求可能导致系统资源的消耗过大和性能瓶颈。 资源消耗&#xff1a; 线程创建和管理开销&#xff1a;每个线程都有其创建和销毁的开销&#xff0c;特别是在高并发环境中&#xff0c;这种开销…

性能测试的复习3-jmeter的断言、参数化、提取器

一、断言、参数化、提取器 需求&#xff1a; 提取查天气获取城市名请求的响应结果&#xff1a;城市对查天气获取城市名的响应结果进行响应断言和json断言对查天气获取城市名添加用户参数 1、步骤 查看天气获取城市名 json提取器&#xff08;对响应结果提取、另一个接口请求…

简单了解微服务--黑马(在更)

认识微服务 单体架构 不适合大型复杂项目 微服务架构 将单体结构的各个功能模块拆分为多个独立的项目 拆取的独立项目分别开发&#xff0c;在部署的时候也要分别去编译打包&#xff0c;分别去部署&#xff0c;不同的模块部署在不同的服务器上&#xff0c;对外提供不同的功能…

小间距LED显示屏的技术原理分析

在现代显示技术领域&#xff0c;小间距LED显示屏以其卓越的显示效果和灵活的应用场景&#xff0c;逐渐成为市场的新宠。本文将深入探讨小间距LED显示屏的技术原理&#xff0c;分析其在显示领域的应用优势。 A、小间距LED显示屏的基本概念 小间距LED显示屏是指LED灯珠之间的间距…

linux hadoop-3.3.6 hbase-2.5.7

软件下载 hadoop https://dlcdn.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz 可以直接下载到本地&#xff0c;也可以直接下载进虚拟机中 如果速度较慢&#xff0c;可以用&#xff1b;另一个 wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common…

spring-boot-maven-plugin插件打包和java -jar命令执行原理

文章目录 1. Maven生命周期2. jar包结构2.1 不可执jar包结构2.2 可执行jar包结构 3. spring-boot-maven-plugin插件打包4. 执行jar原理 1. Maven生命周期 Maven的生命周期有三种&#xff1a; clean&#xff1a;清除项目构建数据&#xff0c;较为简单&#xff0c;不深入探讨&a…

spring容器创建bean过程中使用到的几个factory

文章目录 前述BeanFactoryFactoryBeanObjectFactory 前述 spring我们可以理解为一个帮我们管理bean的容器&#xff0c;使用spring框架之前创建bean都是通过new的方式&#xff0c;使用spring框架之后&#xff0c; 我们只需要告诉spring框架我们有那些bean&#xff0c;它会帮我们…

k8s证书过期处理

证书一共分为 根CA&#xff08;ca.crt&#xff09; master各组件的证书&#xff08;包括etcd、apiserver、front-proxy、controller-manager等各种&#xff09; kubelet证书 k8s证书有效期说明&#xff1a; 1、原生版本有效期master节点&#xff1a; /etc/kubernetes/ssl/…

YOLOv10改进系列,YOLOv10损失函数更换为Powerful-IoU(2024年最新IOU),助力高效涨点

改进前训练结果: 改进后的结果: 摘要 边界框回归(BBR)是目标检测中的核心任务之一,BBR损失函数显著影响其性能。然而,观察到现有基于IoU的损失函数存在不合理的惩罚因子,导致回归过程中锚框扩展,并显著减缓收敛速度。为了解决这个问题,深入分析了锚框扩展的原因。针…