BELLE-使用chatGPT生成训练数据
LoRApefthttps://mp.weixin.qq.com/s/kEGwA_7qAKhIuoxPJyfNuwhttps://aistudio.baidu.com/aistudio/projectdetail/5567217 介绍自从chatGPT出来后,好多人/机构开始尝试使用chatGPT来生成训练数据,简单省事方便。比如google bard,对,就是你,也有在偷偷使用。本文介绍一个项目BELLE,来看看大佬们是怎么做的。注意:此文重点在于如何生成数据。 利用chatGPT生成训练数据最开始BELLE的思想可以说来自stanford_alpaca,不过在我写本文时,发现BELLE代码仓库更新了蛮多,所以此处忽略其他,仅介绍数据生成。 代码入口:generate_instruction_follo..
更多simcse模型
介绍如何使用无监督的方式来判断两个句子的相似度呢?simcse给你答案! 相关资料:中文任务还是SOTA吗?我们给SimCSE补充了一些实验paddleNLP simcse 流程请先看in-batch-negative数据增强这篇文章,模型,推理,所有步骤都不变,就一个地方:构造训练数据集。 train.tsv如下所示: 第一列为query,第二列为doc12如何使用无监督的方式来判断两个句子的相似度呢?simcse给你答案! 如何使用无监督的方式来判断两个句子的相似度呢?simcse给你答案!相关资料 相关资料 query和doc是一模一样的! 那这个模型是如何工作的呢? 分别对同一个句子进行两次dropout,然后判断这两个向量的相似度。 评估评估和in-batch-negative数..
更多in-batch-negative数据增强
介绍这篇文章的思路来源自paddleNLP–>语义检索–>recall–>paddleNLP In-batch negative,它提供了一种非常有特点的数据增强,帮助提升模型训练效果。 任务介绍它是一个语义检索召回阶段任务,输入两个句子s1和s2,判断这两个句子的相似度。 做法0. 数据格式1234我手机丢了,我想换个手机 我想买个新手机,求推荐求秋色之空漫画全集 求秋色之空全集漫画学日语软件手机上的 手机学日语的软件侠盗飞车罪恶都市怎样改车 侠盗飞车罪恶都市怎么改车 注意,每一行的两句话都是相似的。 1. 模型结构123456789101112131415161718192021222324252627282930313233343..
更多bert向量加权
这个是对bert以首字表示词向量(2)文章的扩充,是对指定span index进行加权。 整体思想来自coreference resolution中#word-level实现demo部分。 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657# -*- coding: utf8 -*-#import torchclass WordEncoder(torch.nn.Module): def __init__(self, n_in, p=0.1): super(WordEncoder, self).__init__() ..
更多一些mask的操作理解
mask和index在一起操作挺多的,故关于index操作也可以看: 活到老学到老之index操作。 1. 对矩阵获取句子长度123456from torch.nn.utils.rnn import pad_sequencea = [torch.tensor([1,2, 3]), torch.tensor([4,5])]b = pad_sequence(a, batch_first=True)mask = b.not_equal(0)b[mask].split(mask.sum(1).tolist()) 2. 计算loss的时候把mask加上略. 3. 比如三维矩阵操作mask123456789101112131415161718192021222324252627a = torch.arange(24)..
更多IE-by-generation-t5
引言本文主要分析CCKS 2022 通用信息抽取 – 基于UIE的基线系统代码实现,代码为DuUIE。本文和目前官方在不停推广的UIE稍微不同的是,本文是采用生成式的方式来做信息提取,也是百度最早论文所实现的方式。目前官方推广的是基于片段抽取的提取方式。对于这两者的不同,可参考DuUIE和UIE的对比。 对于官方宣传的UIE的实现,之前代码也有做过分析UIE-事件提取,感兴趣的可以去看看。 通用信息提取目前对于信息提取没有一个非常严格的定义,但是特点是针对不同的事件定义不同schema。针对给定的句子甚者是文章,来完成对应schema信息的提取。 信息提取形式上可分为三类: 1、flat(即每个schema成分都是平铺的,不存在交叉之类的现象)2、nest(一个schema成分也可作为另外一个schema..
更多layoutLM微调FUNSD数据集
引言对表单、合同、收据等信息抽取、理解,单从NLP角度来做就丧失了一些比较重要的特征,比如排版、位置、字体大小、字体颜色等特征。 如何引入这些特征对于关键信息抽取(Key Information Extraction)就比较重要。 此篇文章围绕FUNSD数据集来进行,尝试在不同的layoutLM模型上实现,以及对比各自的效果。 FUNSD数据集常见的数据集有FUNSD和XFUND,XFUND是一个融合了多语言的训练集,数据更为丰富。不过此处选择FUNSD来进行实验。 FUNSD全称为Form Understanding in Noisy Scanned Documents,直译过来就是嘈杂的扫描文档的表单理解,因为是扫描件,或多或少都会有些噪点的,也可看官网的描述。 数据集地址。 下载数据后,例如data..
更多textrank关键句
引言最近在面试北京技术负责人一位候选者(学校杠杠的)时,他对现在公司的新闻领域做摘要时说准确率能达99%,并且也通过了他们内部验证以及用户的对外展示(这家公司你就可劲想吧)。心里是有点不太相信可以达到这么高,理由: 新闻常见字数成千上万,对于这种情况人的理解也有所差异,但只要摘要中出现核心关键词/句子基本也认可。 对于所用到的无监督的方式(用到了textrank),目前业界的上限在那,同时受限于特征工程。 对于使用生成式模型,比如使用PGN,这类方式就要有标注数据。以及有个问题就是生成文本不可控,这也是目前业界在研究的方向。 用到了textrank,那么句子都是从原文中获得的,那么连续性无法保证,更应该说从原文提取关键句子,代表原文。 之前没做过这方面,就比较好奇怎么实..
更多self-attention解析
更多
单塔文本匹配
介绍文本匹配是研究两段文本之间的关系。 此处介绍两种,分别是point-wise和pair-wise语义匹配模型。 point-wise是ptm+二分类,判断句子相似度。pair-wise是ptm+score,判断两个句子相似度得分,可用于排序。最近实现了一个,可参考pairwise-match。 粗排方面有sentence transformer以及SimBERT,再比如DSSM。 这些先记下,等后面有时间了再实现总结。 更新关于双塔模型中的sentence transformer,网络结构如下: 其中pooling为比如Sentence的维度为(1,7,768),那么就对7那一维做mean操作。 由于共用同一个pretrained model,将向量提前保存到数据库。当..
更多