nlp系列(7)三元组识别(Bert+CRF)pytorch

模型介绍

在实体识别中:使用了Bert模型,CRF模型

在关系识别中:使用了Bert模型的输出与实体掩码,进行一系列变化,得到关系

Bert模型介绍可以查看这篇文章:nlp系列(2)文本分类(Bert)pytorch_bert文本分类_牧子川的博客-CSDN博客

CRF模型介绍可以查看这篇文章:

nlp系列(6)文本实体识别(Bi-LSTM+CRF)pytorch_牧子川的博客-CSDN博客

模型结构

画了一个简易图

数据介绍

数据网址:​​​​​​https://github.com/buppt//raw/master/data/people-relation/train.txthttps://github.com/buppt//raw/master/data/people-relation/train.txt

实体1  实体2  关系 文本

模型准备

将处理的数据通过bert模型计算得到两个实体的权重,然后送入到CRF模型计算两个实体损失,然后借鉴Bert模型的掩码,将bert的输出与实体掩码及其计算,得到关系的损失,将两个损失相加,得到模型的总损失。

    def compute_loss(self, input_ids, attention_mask, tag_ids, sub_mask, obj_mask, labels, real_lengths):hidden_output, pooled_output = self.get_features(input_ids, attention_mask)feats = self.hidden2tag(hidden_output)total_scores = self.get_total_scores(feats, real_lengths)gold_score = self.get_golden_scores(feats, tag_ids, real_lengths)ner_loss = torch.mean(total_scores - gold_score)relation_logits = self.get_relation_logit(pooled_output, hidden_output, sub_mask, obj_mask)relation_loss = self.criterion(relation_logits, labels)return ner_loss + relation_loss

模型预测

文本:
除演艺事业外,李冰冰热心公益,发起并亲自参与多项环保慈善活动,积极投身其中,身体力行担起了回馈社会的责任于02年出演《少年包青天》,进入大家视线
预测结果:
少年包青天 - 主演 - 李冰冰
=========================================
文本:
马志舟,1907年出生,陕西三原人,汉族,中国共产党,任红四团第一连连长,1933年逝世
预测结果:
马志舟 - 国籍 - 中国
马志舟 - 出生日期 - 1907年
马志舟 - 民族 - 汉族
马志舟 - 出生地 - 陕西三原 

源码获取

Bert+CRF 三元组识别https://github.com/mzc421/Pytorch-NLP/tree/master/11-Bert%2BCRF%20%E4%B8%89%E5%85%83%E7%BB%84%E8%AF%86%E5%88%AB硬性的标准其实限制不了无限可能的我们,所以啊!少年们加油吧!

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

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

相关文章

linux c编程之“hello world”一

文章目录 hello world开始学习汇编文件 hello.s第1行第2行第3行第4行第5行第6行第7行第8行第9行第10行第11行第12行第13行 X [注]:环境说明: OS:CentOS 7 GCC: 4.8.5 其他环境下的结果可能不尽相同。 声明:本文是我的一…

Unity中的Unistorm3.0天气系统笔记

Unistorm是Unity中的一个天气系统,它功能强大,效果优美。本文所述UniStorm为3.0版本,仅用于学习之用。 一、如何设置【白天】、【黑夜】和【天气类型】? 在Running模式下,按下Esc按键,会【弹出】或者【隐…

Rancher上的应用服务报错:413 Request Entity Too Large

UI->rancher的ingress->UI前端(在nginx里面)->zuul->server 也就是说没经过一次http servlet 都要设置一下大小 1.rancher的ingress 当出现Request Entity Too Large时,是由于传输流超过1M。 1、需要在rancher的ingress中设置参数解决。 配置注释&a…

JavaScript—面向对象、作用域

C#:从类继承 js:从对象继承 什么叫继承? 模板(类) 原型继承(实体) 有一个对象存在,构造函数设置原型为这个对象 创建出来的对象就继承与这个对象(从对象那里继承&am…

Linux线程概念

目录 一、页表详解 1.地址的属性 2.页框 3.页表录和页表项 二、认识线程 1.线程的概念 2.轻量级进程 三、线程的简单控制 1.线程的创建 2.PID和LWP 3.线程异常 4.线程的资源 (1)共享的资源 (2)独有的资源 5.线程的…

mysql 存储引擎系列 (一) 基础知识

当前支持存储引擎 show engines; 显示默认存储引擎 select default_storage_engine; show variables like ‘%storage%’; 修改默认引擎 set default_storage_enginexxx 或 set default_storage_enginexxx; my.ini 或者 my.cnf ,需要重启 服务才能生效 systemctl …

cortex-A7核LED灯实验--STM32MP157

实验目的:实现LED1 / LED2 / LED3三盏灯工作 一,分析电路图 1,思路 分析电路图可知: 网络编号 引脚编号 LED1 PE10 LED2 > PF10 LED3 > PE8 2,工作原理: 写1:LED灯亮&#xf…

防雷检测综合应用方案

防雷检测是指对建筑物的防雷装置进行定期或不定期的检测,以评估其性能和安全状况,发现并消除隐患,保障人身和财产安全的一项重要工作。防雷检测的内容包括对接闪器、避雷带、引下线、接地装置、等电位联结、避雷器等部件的形式、位置、连接、…

RecyclerView面试问答

RecycleView 和 ListView对比: 使用方法上 ListView:继承重写 BaseAdapter,自定义 ViewHolder 与 converView优化。 RecyclerView: 继承重写 RecyclerView.Adapter 与 RecyclerView.ViewHolder。设置 LayoutManager 来展示不同的布局样式 ViewHolder的编写规范化,ListVie…

Spring security报栈溢出几种可能的情况

今天在运行spring security的时候,发现出现了栈溢出的情况,总结可能性如下: 1.UserDetailsService的实现类没有加上Service注入到容器中,导致容器循环寻找UserDetailsService的实现类,最终发生栈溢出的现象。 解决方法…

Redis 7 第三讲 数据类型 进阶篇

⑥ *位图 bitmap 1. 理论 由0和1 状态表现的二进制位的bit 数组。 说明:用String 类型作为底层数据结构实现的一种统计二值状态的数据类型 位图本质是数组,它是基于String 数据类型的按位操作。该数组由多个二进制位组成,每个二进制位都对应一个偏…

Java进阶(6)——抢购问题中的数据不安全(非原子性问题) Java中的synchronize和ReentrantLock锁使用 死锁及其产生的条件

目录 引出场景:大量请求拥挤抢购事务的基本特征ACID线程安全的基本特征 加锁(java)synchronized锁ReentrantLock锁什么是可重入锁?如何保证可重入 滥用锁的代价?(死锁)死锁的四个必要条件死锁的案例 总结 引出 1.大量请…

基于SpringBoot的员工(人事)管理系统

基于SpringBoot的员工(人事)管理系统 一、系统介绍二、功能展示三.其他系统实现五.获取源码 一、系统介绍 项目名称:基于SPringBoot的员工管理系统 项目架构:B/S架构 开发语言:Java语言 前端技术:BootS…

Go 第三方库引起的线上问题、如何在线线上环境进行调试定位问题以及golang开发中各种问题精华整理总结

Go 第三方库引起的线上问题、如何在线线上环境进行调试定位问题以及golang开发中各种问题精华整理总结。 01 前言 在使用 Go 语言进行 Web 开发时,我们往往会选择一些优秀的库来简化 HTTP 请求的处理。其中,go-resty 是一个被广泛使用的 HTTP 客户端。…

运用亚马逊云科技Amazon Kendra,快速部署企业智能搜索应用

亚马逊云科技Amazon Kendra是一项由机器学习(ML)提供支持的企业搜索服务。Kendra内置数据源连接器,支持快速访问Amazon S3、AmazonRDS、AmazonFSX以及其他外部数据源,帮助用户自动提取文档并建立索引。Kendra支持超过30多种多国语…

【真题解析】系统集成项目管理工程师 2022 年下半年真题卷(案例分析)

本文为系统集成项目管理工程师考试(软考) 2022 年下半年真题(全国卷),包含答案与详细解析。考试共分为两科,成绩均 ≥45 即可通过考试: 综合知识(选择题 75 道,75分)案例分析&#x…

无涯教程-分类算法 - 逻辑回归

逻辑回归是一种监督学习分类算法,用于预测目标变量的概率,目标或因变量的性质是二分法,这意味着将只有两种可能的类。 简而言之,因变量本质上是二进制的,其数据编码为1(代表成功/是)或0(代表失败/否)。 在数学上&…

reactantd(12)动态表单的默认值问题

最近遇到一个需求是有一个表单可以输入各种信息,然后还需要有一个编辑功能,点击编辑的时候需要把当前数据填入到表单里面。在网上查了很多种方法,然后我的思路是使用initialValues搭配setState()使用。默认值都为空,然后点击单条数…

VMware虚拟机---Ubuntu无法连接网络该怎么解决?

在学习使用Linux系统时,由于多数同学们的PC上多是Windows系统,故会选择使用VMware创建一个虚拟机来安装Linux系统进行学习。 安装完成之后,在使用时总是会遇到各种各样的问题。本片随笔就主要针对可能出现的网络问题进行一个总结,…

Git仓库简介

1、工作区、暂存区、仓库 工作区:电脑里能看到的目录。 暂存区:工作区有一个隐藏目录.git,是Git的版本库,Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区&#xf…