第2章 知识抽取:概述、方法

news2024/11/29 14:54:03

💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢迎在文章下方留下你的评论和反馈。我期待着与你分享知识、互相学习和建立一个积极的社区。谢谢你的光临,让我们一起踏上这个知识之旅!
请添加图片描述

文章目录

  • 🍋知识抽取的概述
    • 🍋知识抽取的任务
  • 🍋知识抽取的方法
    • 🍋面向结构化数据
      • 🍋直接映射
      • 🍋R2RML映射
    • 🍋面向半结构化数据
    • 🍋面向非结构化数据

博学之,审问之,慎思之,明辨之,笃行之。 ——《礼记 中庸》

🍋知识抽取的概述

在这里插入图片描述
上图清晰的展示了知识图谱技术架构中的知识抽取

如果从专业的角度去定义知识抽取的定义:从不同来源、不同结构的信息资源中进行知识提取,形成结构的知识并存储到知识图谱中。

一般来说,知识抽取主要是面向链接开发数据,大家获取不知道何为链接开放数据,下面我为大家整理了一下

链接开放数据(Linked Open Data,LOD)是一种数据发布和共享的方法,通过使用统一的标准化格式和互联网链接,将不同来源的数据链接在一起,形成一个全球性的、互联的知识网络。这种方法的目标是使得数据更容易被发现、访问、集成和利用。

LOD 遵循一些核心原则,其中包括:

  • 使用统一的标准: LOD 使用通用的、开放的标准来描述和表示数据,其中最常用的是RDF(资源描述框架)。

  • 唯一标识符: 每个数据实体都有一个唯一的标识符(通常是统一资源标识符,URI),这样可以确保全球范围内的唯一性。

  • 链接性: 数据之间通过超链接建立关系。这使得在一个数据集中找到的信息可以链接到其他数据集,形成一个关联性强、可导航的知识网络。

  • 开放访问: LOD 数据是开放的,任何人都可以自由地访问和使用,符合开放数据的原则。

  • 可互操作性: 数据之间的链接和标准化格式的使用增加了数据的互操作性,使得不同数据集可以相互配合使用。

  • 可扩展性: LOD 是一个逐步构建的过程,可以随着时间不断添加新的数据集,从而不断扩展知识图谱。


当然知识抽取也就是通过一系列自动化或半自动化的技术手段,从半结构化、非结构化的数据中提取出实体、关系及属性等知识要素。但是如果仅仅是抽取这些其实还是不够的,还有基于语句和语境抽取出实体间的关系以及实体所描述的事件。

🍋知识抽取的任务

下面我来介绍一下抽取中最受关注的子任务

  1. 实体抽取(Entity Extraction):

    定义: 实体抽取是从文本中识别和提取具有特定意义的命名实体的任务。这些实体可以是人物、地点、组织、日期、货币等。
    方法: 使用自然语言处理(NLP)技术,如命名实体识别(NER),采用规则、统计模型或深度学习模型,以识别并标注文本中的实体。
    注意:实体抽取是知识图谱构建和知识抽取的基础和关键

  2. 实体链接(Entity Linking):

    定义: 实体链接是将文本中的命名实体与知识库中的实体进行关联的任务。这有助于消除歧义,确保同一实体在不同文本中有一致的标识。
    方法: 结合上下文信息,使用相似性匹配、向量化表示、字符串匹配等方法,将文本中的实体链接到预定义的知识库中的实体。

这里举个例子:中国古典《西游记》大家都看过,唐僧这个角色有好几个叫法大家估计也知道一两个,那么这个例子放在实体链接中该如何理解呢,请看下图
在这里插入图片描述

当然这里仅仅简单介绍一下,想了解详细流程的可以翻阅相关书籍或资料等

  1. 关系抽取(Relation Extraction):

    定义: 关系抽取是从文本中识别和提取不同实体之间的关系的任务。这些关系可以是作者关系、工作关系、亲属关系等。
    方法: 利用监督学习,使用有标签的数据进行训练,采用统计方法或深度学习模型,以识别文本中的关系。

注意:关系抽取的难点在于大多数关系都含有一定的隐含性,还记得本科话ER图什么一对多多对多都搞的迷迷糊糊了

  1. 属性抽取(Attribute Extraction):

    定义: 属性抽取是从文本中识别和提取与实体相关的特定属性或特征的任务。这些属性可以是实体的属性,如人物的职业、地点的经纬度等。
    方法: 采用规则匹配、基于统计的方法,或者深度学习模型,以从文本中提取出与实体相关的属性信息。

注意:属性主要是针对实体而言的,对当前实体的完整描述。由于可以把实体的属性看作实体与属性值之间的一种名词性关系,因此属性抽取任务就可以转化为关系抽取任务。

  1. 事件抽取(Event Extraction):

    定义: 事件抽取是从文本中识别和提取描述事件的信息,包括事件的参与者、时间、地点以及事件的类型等。
    方法: 结合实体抽取和关系抽取的方法,使用监督学习或者远程监督,以从文本中提取出事件的结构化信息。

🍋知识抽取的方法

在这里插入图片描述

🍋面向结构化数据

结构化的数据通常来讲类似于关系型数据库中表格形式的数据,对于一般的表格,我们可以使用工具进行编写,但是面对复杂的表格,我们需要使用转换工具将关系型数据库映射到RDF。

这里的RDF本质是一个数据模型,提供了描述实体或资源的统一的标准,简单来说,它就是表示事物的一种方法和手段。从形式上表示为SPO三元组,有时候也可称为一条语句,在知识图谱中代称为一条知识。

下面我们以关系型数据库为例子
在这里插入图片描述
接下来我们来看看针对上图的抽取方法中的直接映射R2RML映射

🍋直接映射

直接映射通过明确在关系模式中编码的语义,将关系数据转换为RDF,如下按照一些简单的规则创建URI进行映射。

  • 数据库的表作为本体中的RDF类
  • 表的列作为RDF属性
  • 表的行为作为实例、资源
  • 表的单元格作为字面量
  • 如果单元格所在的列是外键,那么其值为IRI,或者说实体、资源

由于URI规定只能使用英文字符,而Unicode字符集包括了当今世界上所有书写文字的字符,所以资源标识符可以使用Unicode字符

🍋R2RML映射

R2RML映射是将逻辑表作为输入,然后依据三元组映射规则将其转换成三元组的集合。

  • 逻辑表:一个数据库表、一个数据库视图或SQL查询语句
  • 三元组映射:通过主语、谓语、宾语映射产生三元组

注意:直接映射方法不能改变RDF的结构或词语,但是如果是R2RML的话,作者可以自定义关系型数据库的视图,然后由视图来映射RDF,所以说每一个R2RML映射都是基于实际项目需要而描述的,它连接了作为输入端的关系型数据库架构域以及作为输出端的RDF词语。

🍋面向半结构化数据

半结构化数据一般指的是那种网页本身存在一定的结构,但是需要进行整理。半结构化数据的知识抽取主要通过包装器进行,包装器学习半结构话数据的抽取规则将数据从HTML网页中抽取出来,进而将它们转化为结构化的数据。

我们使用包装器进行知识抽取的步骤主要包括网页清洗,网页标注,包装器空间生成,包装器评估。

网页清洗:主要解决网页代码不规范的问题。

网页标注:将需要抽取的数据进行标注

包装器生成:Xpath集合空间,应具有一定的泛化能力。

注意:xpath在爬虫里也有使用插件获取可以参考下面两篇博客
探索Xpath:解析Web页面的利器
XPath实战:快速定位网页元素

包装器评估:对包装器进行评估需要采用一定的标准,主要有准确率和召回率。通常情况下准确率越高、召回率越高,进而评分越高。

完成包装器空间生成之后我们按照准确率和召回率进行包装器的评估。
例如:包装器A的准确率大于包装器B的准确率,但是两者的召回率相等,这样综上所述来看就是包装器A要更加的优于包装器B

值得一提的是,有监督的包装器维护开销会很大,当网站改变了模版,Xpath那里可能就会发生变动,标签嵌套啥的,这样我们可以对数据进行少量的标注,让机器学习出一定的规则,进而在整个站点下使用这些规则对同类型或者符合某种关系的数据进行抽取,从而节省资源。

🍋面向非结构化数据

非结构化数据是指社交网络、网页、新闻、论文,甚至一些多模态数据。本节以文本数据抽取为例,从实体抽取、实体链接、关系抽取以及事件抽取几个方面来讲解面向非结构化数据的知识抽取。其中,知识抽取的任务中提到的属性抽取与关系抽取概念相近,使用的方法也十分类似。

  • 实体抽取:单纯的实体抽取可以看成是一个序列标注问题,可以采用HMM、CRF、LSTM等算法解决
    利用机器学习方法进行实体抽取的基本流程如下:
  1. 输入可供训练、具有代表性的文本数据
  2. 找出文本中的指称词语(Token),标记命名实体标签
  3. 分析文本和类别,并设计合适的特征提取方法
  4. 训练一个句子分类器来预测数据的标签
  5. 对测试集文本使用分类器,自动为指称词语做标记
  6. 输出标记结果,即测试集文本的命名实体
  • == 实体链接==:具体流程可以参考下图

在这里插入图片描述

  • 关系抽取:指的是从非结构化文本中抽取出两个或多个实体之间的语义关系。目前根据不同的抽取方法,可以将其分为基于模版的方法,基于监督学习的方法,基于弱监督学习的方法。

  • 事件抽取
    事件信息包事件抽取就是把含有事件信息的非结构化文本以结构化的形式呈现出来。一个比较综合的任务,一个标准的括事件发生的时间、地点、原因、参与者等。事件抽取是事件抽取任务可以进一步分解为触发词识别、事件类型分类、论元识别和角色分类等子任务。每个事件都会有一个事件类型及相应的触发词,并且配有不同角色的论元。事件类型和论元角色是在约定的有限集合中选择,而触发词和论元一般情况下都是输入句子的片段。

请添加图片描述

挑战与创造都是很痛苦的,但是很充实。

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

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

相关文章

创建数据库并使用索引查询学员考试成绩

5.1索引 索引提供指针以指向存储在表中指定列的数据值,然后根据指定的次序排列这些指针,再跟随 指针到达包含该值的行。 5.1.1什么是索引 数据库中的索引与书籍中的目录类似。在一本书中,无须阅读整本书,利用目录就可以快速查 找…

Leetcod面试经典150题刷题记录——数组 / 字符串篇

数组 / 字符串篇 1. 合并两个有序数组Python3排序法双指针法 2. 移除元素Python3 3. 删除有序数组中的重复元素Python3 7. 买卖股票的最佳时机Python3 8. 买卖股票的最佳时机ⅡPython3贪心法动态规划法 11. H 指数Python3排序法计数排序法二分查找 有个技巧,若想熟悉…

Vue项目图片预览v-viewer插件使用,图片预览,图片查看;antdesign+vue2+v-viewer实现图片查看器并可删除图片

Vue项目图片预览v-viewer插件使用 1. 安装 v-viewer 你可以使用 npm 或者 yarn 来安装 v-viewer: npm install v-viewer 或者 yarn add v-viewer 2. 导入和配置 v-viewer 在你的 Vue 项目中,你需要在入口文件(通常是 main.js&#xff09…

通信标准化协会,信通院及量子信息网络产业联盟调研玻色量子,共绘实用化量子未来!

8月14日,中国通信标准化协会,信通院标准所及量子信息网络产业联盟等单位领导走访调研北京玻色量子科技有限公司(以下简称“玻色量子”),参观了玻色量子公司及自建的十万颗粒洁净度的光量子信息技术实验室🔗…

自己开发组件更新到npm网站上 通过npm install 安装 保姆级别教程

文章目的 在项目开发中,经常通过npm install安装使用各种各样的npn包。本文记录如何自己实现的一个npm包 1. 环境准备 开发环境安装好,没有准备好环境 需要先安装哦 2. 创建Vue项目 初始化Vue项目:vue create xwdm-test 选择手动选择功能 Manually selec…

mac shortcut keys cheat sheet【mac 快捷键清单】

文章目录 剪切、拷贝、粘贴和其他常用快捷键访达和系统快捷键 Mac 键盘快捷键 Command(或 Cmd)⌘ Shift ⇧ Option(或 Alt)⌥ Control(或 Ctrl)⌃ Caps Lock ⇪ Fn 剪切、拷贝、粘贴和其他常用快捷…

分享106个图片JS特效,总有一款适合您

分享106个图片JS特效,总有一款适合您 106个图片JS特效下载链接:百度网盘 请输入提取码 提取码:6666 Python采集代码下载链接:采集代码.zip - 蓝奏云 学习知识费力气,收集整理更不易。知识付费甚欢喜&#xff0c…

4、类和对象、this指针、常对象和常函数

类和对象 类的一般形式 访问控制限定符 public 公有成员,谁都可以访问protected 保护成员,只有类自己和子类可以访问private 私有成员,只有类自己可以访问 类和结构的访问控制限定符区别 类的缺省访问控制限定为私有(private)结构的缺省访…

C++空类的那点事儿

什么是C的空类 顾名思义,空类就是指哪些不包含成员变量的类。例如以下这个就是一个空类: class EmptyBase {}; 既然如此,那么是不是说空类的内部一定不会其他代码呢?不是的,空类内部也可以包含其他东西,…

数字化车间|用可视化技术提升车间工作效率

数字化车间正在成为现代制造业的重要组成部分。随着科技的不断进步,传统的车间生产方式逐渐地被数字化和自动化取代。数字化车间将机器和软件进行整合,实现了生产过程的高效、精确和可追溯。在数字化车间中,机器之间可以进行无缝的通信和协作…

【云备份】客户端实现 及 项目整体总结

文章目录 客户端客户端实现思想客户端文件操作类的设计与拷贝Util.hpp的设计data.hpp的设计Storage —— 持久化存储Initload——数据初始化加载 cloud.hpp的设计GetFileIdentifier——创建文件唯一标识Upload—— 文件上传IsNeedupload —— 客户端文件是否需要上传判断RunMod…

正点原子linux应用编程——提高篇5

这篇笔记记一下网络应用编程以及CAN总线的应用编程。 网络基础知识 这个在学习lwIP的时候已经接触过了,这边再过一下,我自己觉得没什么意思的我就跳过了。 网络通信概述 网络通信本质上是一种进程间通信,是位于网络中不同主机上的进程之间…

麒麟linux将图片批量生成PDF的方法

笔者手里有一批国产linu系统,目前开始用在日常的工作生产环境中,我这个老程序猿勉为其难的充当运维的或网管的角色。 国产linux系统常见的为麒麟Linux,统信UOS等,基本都是基于debian再开发的linux。 问题描述: wind…

冬天来了,波司登的高端化“春天”不远了?

最近,羽绒服频繁“贵”上热搜。 在众多热搜词条中,一条“国产羽绒服卖到7000元”的话题一度将波司登推上了舆论的风口浪尖。 对此,波司登在最新的业绩说明会上进行了回应,公司表示:“波司登旗下主品牌及子品牌将形成差…

律所信息化建设成为趋势,Alpha系统助力律所数字化升级

近些年来,越来越多的律所借助数字化技术进行信息化建设,围绕“智慧律所”建设做了大量的努力。为尽快完成这一目标,经过深入研判,多数律所决定引进“Alpha法律智能操作系统”。该系统以其强大功能为律所智慧化建设注入催化剂。 据…

2023年AI工具排行榜:最全工具汇总!

如今,人工智能技术正在快速崛起,AI助手、语音识别、机器翻译等工具深深渗透到我们的工作和生活中。这些智能工具极大地提高了我们的工作效率,使我们能更加专注于创造性的任务。 本文将为读者推荐一些实用的AI神器,只要掌握其中一个,就能极大地提升你的工作能力,事半…

使用Python的PyQt实现财务综合计算

背景: 考核内容 使用 Python 编写程序代码,设计一个带交互界面的财务分析软件,并满足以下要求: PART1:《财务软件设计思路报告》 (30分) (1)编写《财务软件设计思路报告》,描述你编制这个财务软件的设计目标、应用场景、设计思路…

Mysql进阶-事务锁

前置知识-事务 事务简介 事务 是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。 就比如: 张三给李四转账1000块钱&#xff0…

基于AT89C51单片机四位加法计算器的设计

1.设计任务 利用AT89C51单片机为核心控制元件,设计一个四位加法计算器,设计的系统实用性强、操作简单,实现了智能化、数字化。 1)、通过4*4矩阵键盘输入数字及运算符; 2)、可以进行4位十进制数以内的加法…

线程池(Linux +C)

参考 手写线程池 - C语言版 | 爱编程的大丙 (subingwen.cn) 目录 1.为什么需要线程池? 1)线程问题: 2)如何解决线程问题(线程池的优势): 2.线程池是什么? 1)线程的…