论文阅读笔记: SIFRank and BERT-KPE

【无监督短语抽取】SIFRank论文详读 SIFRank: 一个基于预训练模型的无监督关键词抽取的模型。它由两部分组成:句向量模型SIF和自回归预训练模型ELMO,在短文本中它表现优异。document segmentation和contextual word embeddings alignment在保证accuracy的前提下加速了SIFRank。 阅读详情


本文主要内容是两篇论文的阅读笔记,论文地址如下:
SIFRank: A New Baseline for Unsupervised Keyphrase Extraction Based on Pre-Trained Language Model,其对应的 源码。
Capturing Global Informativeness in Open Domain Keyphrase Extraction,其对应的 源码。

SIFRank: A New Baseline for Unsupervised Keyphrase Extraction Based on Pre-Trained Language Model

SIFRank比较适合短文本的关键词抽取,而SIFRank+大幅增加了长文本的关键词抽取效果。

MODEL OVERVIEW

SIFRank 的架构如下:
在这里插入图片描述
(1)人工标注:分词+标词性。
(2)获取候选关键词列表:利用正则表达式确定名词短语(例如:形容词+名词),将名词短语作为候选关键短语。
(3)通过预训练语言模型,得到关键词的embedding。
(4)同样地,得到句子或文档的embedding。
(5)计算(3)与(4)结果的余弦相似度,选取topN作为其最终提取的关键词。

SENTENCE EMBEDDING MODEL(SIF)

经上节描述可知,整篇的难点在于如何计算embedding。预训练语言模型采用ELMo。

采用ELMo的原因是:
1)经过大规模预训练,较TFIDF、TextRank等基于统计和图的具有更多的语义信息;
2)ELMo是动态的,可以改善一词多义问题;
3)ELMo通过Char-CNN编码,对生僻词非常友好;
4)不同层的ELMo可以捕捉不同层次的信息

计算sentence embedding的假设是:文章是由一个topic生成的,文章中的每个句子亦是如此,因此,句子的embedding应该与文章embedding的期望值(topic embedding)相近,有:

在这里插入图片描述
得到sentence embedding的计算方式:
在这里插入图片描述
其中,a是超参数,一般设置为 [ 1 0 − 3 , 1 0 − 4 ] [10^{-3},10^{-4}] [10−3,10−4]。其实也就是加权求和得到sentence embedding,phase embedding,document embedding。最后再用余弦相似度的结果进行排序。

POSITION-BIASED WEIGHT FOR LONG DOCUMENTS

这是SIFRank+使用的思想,主要就是增加了位置的权重。考虑在长文本中,先出现的词往往具有重要的地位。
在这里插入图片描述
计算相似度的公式变为:
在这里插入图片描述
该方法在数据集上的结果有兴趣的朋友可以看看该论文。

Capturing Global Informativeness in Open Domain Keyphrase Extraction

BERT-KPE是最近由thunlp提出的方法,在OpenKP和KP20K上都达到了state-of-the-art和良好的鲁棒性。

Methodology

1. 得到候选关键词的词表征

  • 对于给定的Document,令 D = { w 1 , ⋯   , w i , ⋯   , w n } D=\{w_1,\cdots,w_i,\cdots,w_n\} D={w1​,⋯,wi​,⋯,wn​},对其使用预训练语言模型BERT,获得词表征,有 H = { h 1 , ⋯   , h i , ⋯   , h n } = B E R T { w 1 , ⋯   , w i , ⋯   , w n } H=\{h_1,\cdots,h_i,\cdots,h_n\}=BERT\{w_1,\cdots,w_i,\cdots,w_n\} H={h1​,⋯,hi​,⋯,hn​}=BERT{w1​,⋯,wi​,⋯,wn​}。
  • 使用卷积网络获得N-gram的表征,第 i i i个k-gram( c i k c_i^k cik​=word[i:i+k-1])对应的词表征为:
    在这里插入图片描述

2.Informative Ranking
为了估计N-gram c i k c_i^k cik​ 在局部语境中包含的信息量,使用一个前馈网络使 g i k g_i^k gik​转变为可量化的数:
在这里插入图片描述
然后,开始计算每个phase的全局信息。对于一个phase p k p^k pk 而言,一个文档中可能出现多次,我们将其记为: { c j k , ⋯   , c m k } \{c_j^k,\cdots,c_m^k\} {cjk​,⋯,cmk​},自然地,我们可以得到相应的局部信息:
在这里插入图片描述
再此上,接一个max-pooling层,作为其全局信息:
在这里插入图片描述
得到每个phase的全局信息后,使用Pairwise ranking loss作为其rank损失:
在这里插入图片描述
该损失函数迫使JointKPE将文档D中的keyphrases排在non-keyphrases(非关键词)前面。

3. Keyphrase Chunking
JointKPE直接学习某个N-gram是否是keyphase,对此,采用交叉熵损失:
在这里插入图片描述
4. Multi-Task Training
将 2 和 3的损失联合起来,共同训练:
L = L r a n k + L c h u n k L = L_{rank}+L_{chunk} L=Lrank​+Lchunk​

Experimental Methodology

实验结果如下:
在这里插入图片描述

自然语言处理:长文本场景下的关键词抽取实践 阅读详情

相关推荐

KeyBert、TextRank等九种本文关键词提取算法(KPE)原理及代码实现

关键词提取 (Keyphrase Extraction,KPE) 任务可以自动提取文档中能够概括核心内容的短语,有利于下游信息检索和 NLP 任务。当前,由于对文档进行标注需要耗费大量资源且缺乏大规模的关键词提取数据集,无监督的关键词提取在实际应用中更为广泛。无监督关键词抽取的state of the art(SOTA)方法是对候选词和文档标识之间的相似度进行排序来选择关键词。但由于候选词和文档序列长度之间的差异导致了关键短语候选和文档的表征不匹配,导致以往的方法在长文档上的性能不佳,无法充分利用预训练模型

Python,数据分析,机器学习,深度学习 1万+

关键词提取——有监督方法

在上一篇博客中,介绍了关键词提取的无监督方法:点击这里查看文章。本篇主要是介绍关键词提取的有监督方法。

init__的博客 2615

SIFRank_zh:基于预训练模型的中文关键词提取方法(论文SIFRank

SIFRank_zh 这是我们论文的相关代码原文是在对英文关键短语进行抽取,这里迁移到中文上,部分管道进行了改动英文原版在。。 版本介绍 2020/03 / 03——最初最初版本本版本中只包含了最基本的功能,部分细节还有待优化和扩展。 核心算法 预训练模型ELMo +句向量模型SIF 词向量ELMo优势:1)通过大规模预训练,较早的TFIDF,TextRank等基于统计和图的具有更多的语义信息; 2)ELMo是动态的,可以改善一词多义问题; 3)ELMo通过Char -CNN编码,对生隐词非常友好; 4)不同层的ELMo可以捕捉不同层次的信息 句子矢量SIF优势:1)根据词频对词向量进行平滑逆频率变换,能更好地捕捉句子的中心话题; 2)更好地过滤通用词 最终关键焦点识别 首先对句子进行分词和词性标注,再利用正则表达式确定确定名词短语(例如:形容词+名词),将名词作为前缀关键字 最终关键利率

BERT-KPE:利用预训练模型进行关键词提取的新范式

BERT-KPE:利用预训练模型进行关键词提取的新范式 项目地址:https://gitcode.com/gh_mirrors/be/BERT-KPE 项目简介 是由清华大学自然语言处理实验室(THUNLP)开发的一个项目,它基于BERT(Bidirectional Encoder Representations from Transformers)的预训练能力,实现了高效的关键词提取。此项目旨在...

gitblog_00069的博客 1087

SIFRank:我们论文的代码“ SIFRank

SIFRank 我们的论文代码 版本说明 2020/02 / 21—— Initial version提供最基本的功能。 2020/02 / 28—— Second version增加了新算法DS (文档分割)和EA (嵌入对齐),以speed up SIFRank和SIFRank +的speed up 。 2020/03/02 - Third version SIFRank +的变化不大./model/method.py有关使position_score的一个简单的正常化。 环境 Python 3.6 nltk 3.4.3 StanfordCoreNLP 3.9.1.1 torch 1.1.0 allennlp 0.8.4 下载 从ELMo elmo_2x4096_512_2048cnn_2xhighway_options.json和elmo_2x4096_512_2048cnn_

JointBERT:JointBERT的Pytorch实现

联合BERT (非官方)Pytorch实施JointBERT : 模型架构 从一个BERT模型(= Joint模型)同时预测intent和slot total_loss = intent_loss + coef * slot_loss(使用--slot_loss_coef选项更改coef) 如果要使用CRF层,请提供--use_crf选项 依存关系 python> = 3.6 火炬== 1.6.0 变压器== 3.0.2 seqeval == 0.0.12 pytorch-crf == 0.7.2 数据集 火车 开发人员 测试 意图标签 插槽标签 信息系统 4,478 500 893 21岁 120 剪断 13,084 700 700 7 72 标签的数量基于火车数据集。 为标签添加UNK (仅在开发和测试数据集中显示的Intent和slot标签) 为

bert cnn知识抽取模型_关键短语抽取及使用BERTCRF的技术实践

全文框架概览一、关键短语抽取简介关键短语抽取 (keyphrase extraction),指从文章中提取典型的、有代表性的短语,期望能够表达文章的关键内容。关键短语抽取对于文章理解、搜索、分类、聚类都很重要。而高质量的关键短语抽取算法,还能有效助力构建知识图谱。常见的关键短语抽取方法分为有监督 (supervised)和无监督 (unsupervised)。整体抽取流程则分为2个步骤:...

weixin_39969953的博客 2188

【JS】自定义上传组件,文件上传与回显,自定义进度条显示(基于element-plus与axios)

公司是做B 端产品的,有sass平台也有源码交付的项目,最近开发了很多小系统,这里记录一下开发遇到的问题。 需要定制一个上传组件,要求可以自定义文件存储路径,自定义可上传的文件类型,限制文件大小等,并且提供基础的文件回显功能,例如上传一张图片到服务器指定目录的`/file`文件夹下面,并且实现可以查看预览的功能。

余浩的博客 1162

关键短语提取的典型方法

随着互联网文本相关数据呈指数级增长,如何快速有效地抽取和整理相关关键信息成为一个重要的研究课题。与关键词不同,关键短语可能由多个词组成,其文本语义描述更为丰富,表达更为完整。除此之外,关键短语构成了一个简洁的概念性文档摘要,有助于语义索引、文档聚类和分类等多个任务的效果提升。...

真心乖宝宝的博客 1730

保姆级教程:手把手配置MAX9295/9296 GMSL2-CSI2链路,搞定4LAN/1LAN模式与常见调试

本文提供MAX9295/9296 GMSL2-CSI2链路的详细配置教程,涵盖4LAN和1LAN模式的硬件连接、寄存器配置及调试技巧。通过实战案例和代码示例,帮助开发者快速实现高带宽视频传输,解决常见问题如信号同步和功耗优化,适用于车载摄像头和机器人视觉系统开发。

weixin_42561143的博客 434

英飞凌 AURIX Development Studio工程移植到Hightec的方法

1. 软件简介 AURIX™ Development Studio是英飞凌针对AURIX TC2XX/TC3XX系列单片机推出了一款免费的软件,集成了iLLD库,内置Tasking compiler和Tasking Debugger,但这两个模块只能用于非商业用途,可供学习和试用。iLLD库是英飞凌为TC2XX和TC3XX Tricore系列单片机提供的底层驱动库,有完善的使用手册,和较好的移植性。 Hightec是一款可以用来开发Aurix系列单片机的编译器,有免费版,可商用,集成GCC编译器,可用UDE

weixin_42967006的博客 7137

SIFRank_zh与关键词提取

介绍本文尝试从几个方面来介绍提取关键词所知的技术,以及关键词提取所遇到的问题,接着介绍SIFRank-zh算法,最后穿插下个人的理解与总结。 关键词提取技术刚开始接触这个概念的时候,网上一大堆介绍TF-IDF和TextRank算法,这俩简直已经称为了关键词提取的baseline。关于TF-IDF,的确在许多文档中已经作为了baseline来和其他技术相对比,是一种简...

ox180x的博客 1179

Xilinx Vitis HLS教程1--Vitis HLS概述[01/12]

Xilinx Vitis HLS教程[01/10]前言1. Vitis HLS简介1.1 软件工程师的设计原则1.1.1 简介1.1.2 吞吐量和性能1.2.3 架构问题1.2.4 FPGA编程的3大范式1.2.4.1 生产者-消费者范式1.2.4.2 流式数据范式1.2.4.3 流水线范式1.2.5 3种范式结合 前言 项目中使用到Xilinx Zynq UltraScale+ MPSoC ZCU102 开发板,领导指示研究"xilinx软件自带的c语言综合器"。对于一个硬件一窍不通的我来说,甚至不知道

B10030607的博客 5239

论文 - 补充理解

2021SC@SDUSC 系列文章目录 随着神经网络的发展,神经KPE方法在提取科学出版物的关键词方面已经取得了令人信服的性能。 文章目录系列文章目录前言相关工作实验设置数据集评估指标基线实施细节实验结果分析总结 前言 能够提供文件简洁摘要的关键短语在改善许多自然语言处理(NLP)和信息检索(IR)任务方面显示出其潜力,如总结、推荐和文件检索。 高质量的关键词显示了两个特征,即短语性和信息量。 短语性是指在文档的局部语境中,一连串的词可以作为一个完整的语义单位的程度。 信息量表明一个文本片段在多大程

qq_47537678的博客 700

SuccessFactors入门篇

SuccessFactors入门篇—— Employee Central(一)最近通过一个月左右的学习,拿到了SF EC(SuccessFactors Employee Central )模块SAP认证,所以打算把自己学习SF的整个过程以及相关资料和大家分享一下,相互切磋,共同进步。Employee Central简单了解Employee Central简单了解新的改变功能快捷键合理的创建标题,有...

qq_42288853的博客 1万+

shopro 商城,2025年新申请的微信支付提示失败,支付提示 Get Wechat Public Cert Error 问题的修复办法

shopro 商城,最近新申请的微信支付商户 支付提示 Get Wechat Public Cert Error 问题的修复办法

行走的卡路里 1245

NLP实践——基于SIFRank的中文关键短语抽取

NLP实践——基于SIFRank的中文关键短语抽取0. 本文介绍1. 运行环境2. 项目目录3. 代码实现3.1 utils3.2 初始化各类组件3.2.1 标点和停用词3.2.2 预训练词汇权重 0. 本文介绍 本文在《SIFRank: A New Baseline for Unsupervised Keyphrase Extraction Based on Pre-Trained Language Model》的基础上,借鉴原作者的思想,重写实现了一个好用的中文关键短语抽取工具。 首先声明一下,这篇论文

weixin_44826203的博客 7644

星座SAR动目标检测(GMTI)

参考代码 星座SAR动目标检测 www.youwenfan.com/contentcsg/52399.html。

feifeigo123的博客 549

推荐使用SIFRank:基于预训练语言模型的无监督关键词提取新基准

推荐使用SIFRank:基于预训练语言模型的无监督关键词提取新基准 去发现同类优质开源项目:https://gitcode.com/ 在自然语言处理领域,关键词提取是一项重要的任务,它可以帮助我们从大量文本中快速提炼关键信息。今天,我们向您推荐一款名为SIFRank的开源项目,这是一个基于预训练语言模型的无监督关键词提取新基准。该项目源自一篇发表在《IEEE Access》上的研究论文,并通过一系...

gitblog_00079的博客 503

LED灯闪烁实验:实验介绍

每个章节都会单独进行验证工作,例如Simulink开发的应用层软件,会在Simulink-TestHarness中进行仿真,通过Scope示波器模块输出0-1交替的结果。CubeIDE集成双方的代码后,会烧写到开发板中验证是否按照定义的时间进行闪烁。ST-LINK V2是STM32开发生态系统中常用的硬件调试接口,能够连接微控制器与开发环境,实现程序的下载、调试和分析。STM32F103C8T6最小系统板是基于STM32F103C8T6微控制器的开发板,本实验会涉及使用板载的连接PC13引脚的LED灯。

u013288925的博客 457

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

SIFRank New Baseline for Unsupervised Keyphrase Extraction Based on Pre-Trained Language Model

SIFRank关键词抽取算法解读

qq_45041871的博客 688

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

BERT for Keyphrase Extraction

2021SC@SDUSC

qq_47537678的博客 1367

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

【亲测免费】 BERT-KPE 开源项目教程

BERT-KPE 开源项目教程 项目介绍 BERT-KPE(BERT for Keyphrase Extraction)是一个基于BERT模型的关键短语提取工具。该项目由清华大学自然语言处理与社会人文计算实验室(THUNLP)开发,旨在利用BERT的强大语言表示能力来提高关键短语提取的准确性和效率。 BERT-KPE通过微调预训练的BERT模型,使其能够识别和提取文本中的关键短语。这种方法在多个关...

gitblog_01042的博客 637

SIFRank_zh模型实现

主要是更换关键词抽取模型 从textrank更改为用预训练模型的抽取 选择的模型是:SIFRank_zh 原模型是在英文上进行的,现模型修改为在中文上进行。 核心算法:预训练模型ELMO + 句向量模型SIF 一、词向量ELMO的优势: 1、经过大规模预训练,较TFIDF、TextRank等基于统计和图的具有更多的语义信息 2、ELMO是动态的,可以改善一词多义问题 3、ELMO通过Char-CNN编码,对生僻词非常友好 4、不同层的ELMO可以捕捉不同层次的信息 二、句向量SIF的优势: 1、根据词频对词

qq_47537678的博客 1191

NLP实践——基于SIFRank的英文关键短语抽取

NLP实践——基于SIFRank的英文关键短语抽取1. 回顾2. 英文关键词抽取2.1 预训练词汇权重2.2 分词/词性标注模型2.3 候选短语抽取模型2.4 编码模型 1. 回顾 之前的文章中介绍了如何用SIFRank进行中文的关键词抽取: https://blog.youkuaiyun.com/weixin_44826203/article/details/121144724 有读者问到是否可以用来做英文,答案是肯定的,SIFRank原本就是做英文的,自然可以采用类似的方法进行改写,使之可以适用于英文。所以这篇文章

weixin_44826203的博客 2943

Keyphrase Chunking - bert2chunk_dataloader.py分析

2021SC@SDUSC

qq_47537678的博客 736
上一篇: 结巴分词原理
下一篇: 关键词提取——有监督方法
一只小菜狗:D
博客等级 码龄7年 4658粉丝 25原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值