燕郊网站建设哪家好,wordpress 萌化,信息流优化师是什么,做网站都去哪里找模板介绍
NLP的下游运用可以分为#xff1a;NLU(理解)和NLG(生成) 信息检索#xff1a;NLU 文本生成#xff1a;NLG 机器问答#xff1a;NLUNLG
大模型在信息检索 大模型在机器问答 大模型在文本生成 信息检索-Information Retrieval (IR)
背景
谷歌搜索引擎目前同时集成了…介绍
NLP的下游运用可以分为NLU(理解)和NLG(生成) 信息检索NLU 文本生成NLG 机器问答NLUNLG
大模型在信息检索 大模型在机器问答 大模型在文本生成 信息检索-Information Retrieval (IR)
背景
谷歌搜索引擎目前同时集成了文档排序和问答系统。 定义和评测
如何定义IR任务
IR系统分为两个阶段 Retrieval阶段对整个文档库排序后抽回一部分相关文档的子集。主要考虑召回率。 Re-Rankink阶段精排序 如何评测
IR中常用的评价指标为MRR、MAP、NDCG
平均倒数排名-MRR
只会考虑排名最靠前的相关文档的排名
平均准确率-MAP
会考虑所有相关文档。
归一化的折损累计增益-NDCG
这个指标是商业的搜索引擎或是推荐系统中最常用的评价指标。 前两个指标抽回的文档只有相关和不相关两个等级。NDCG有更细粒度的相关等级划分。
传统方法
BM25
BM25是一种典型的基于词汇匹配的IR方法。 其中k和b是可调节的超参数。 tf是词频query中的每个词在文档中出现的频率。 idf是逆文档的频率评估查询中的一个词汇在所有文档中常见或稀缺的程度。例如一个查询词在所有文档中都常见则idf分数会很低。
存在的问题-词汇失配 存在的问题-语义失配 神经网络方法-大模型
下面介绍两种架构Cross-EncoderDual-Encoder
Neural IR
在Re-ranking阶段主要使用cross-encoder架构query和doc进行词汇级别的拼接然后喂给大模型。经过大模型之后生成q-d的表示最后得到相关性分数。 好处是精细效果好。 缺点是计算代价高。
在Retrieval阶段主要使用Dual-encoder架构使用双塔架构对query和doc分别进行编码经过大模型形成两个独立向量再去计算向量的相似性。 好处是计算开销较小。
Cross-Encoder Dual-Encoder Dual-Encoder的好处是因为是分开编码的。所以可以对整个文档库提前编码好将其向量存起来。有新的query进来只需要编码query然后用最近邻找到相关的文档。 前沿热点
Fine-tuning中的负例增强
in-batch negative同一batch的正例可以作为其他query的负例 random negative随机从文档库中采样作为负例 BM25 negative先用BM25针对每个query抽回一些top k文档再把相关的删除剩余就是不相关的。 下面介绍一篇ICLR2021的工作训练过程中使用模型本身去挖掘更难的负样本。 具体地在模型训练过程中异步维护一个inferencer的程序。每隔k步将最新的模型拿去做inference把排名靠前的难负样本抽回来。再加到新的一轮训练中不断迭代。 RocketQA引入了建模更精细的Cross-Encoder帮助Dual-Encoder筛选难负例再加到Dual-encoder的训练中。
预训练阶段
为encoder配置弱的decoder迫使中间的cls token具有更强的表达能力。 Few-Shot IR
有些网页天然缺乏用户的点击用户的监督。 有一些涉及到隐私的个人检索企业检索他们的数据无法公开获得。 在医学和法律的检索领域人工标注比较昂贵。 所以一部分研究是考虑如何用弱监督的数据去取代监督数据。生成弱监督数据的方式可以包含titile和文档组成的q-d对锚文本和文档组成的q-d对文档和相应大语言生成q-d对。 弱监督数据的筛选 但这些弱监督数据没有经过人工标注可能存在噪声。于是可以经过筛选具体的通过训练和反馈的方式构建强化学习过程。 另一种方法是meta-learning数据筛选
Zero-shot IR
训练好一个大模型之后直接迁移到其他领域。 其他课题
对话检索如何检索长文档
机器问答
介绍
主要的机器问答类型机器阅读理解、开放域问答、基于知识库问答、对话式QA 机器阅读理解
任务定义 完形填空 多选 抽取式阅读理解(原文找答案)
经典方法和pipeline
1.文档和问题分别进行编码 2.汇成一个向量 3.文章和问题进行交互 4.融合后的向量通过MLP来进行预测 实例BiDAF
大模型方法
只需要大模型就可以将前三层直接替代 基于bert的问答系统 将问题和doc输入到bert中再拿cls embedding出来然后进行分类任务 在SQuAD这个非常流行的抽取式QA数据集上只用bert就取得了很好的成绩。 除了简化了pipeline大模型用于QA的另一个好处是可以统一不同任务的形式统一为text to text的形式。这保证了迁移性。
开放式QA
有语料库但是没有具体的文档。开放式QA有两种类型生成式方法、检索式的方法
生成式方法 检索式方法 大模型之前
检索 阅读理解
大模型方法
如何用检索来辅助大模型的预训练过程。让大模型在下游的机器问答环节中表现更好。 REALM在预训练过程中也加入检索任务。相当于把预训练也当成开放式QA的任务在预训练时同时训练大模型和知识的检索器。 让大模型根据检索到的语料库来回答答案。
WebGPT 文本生成
介绍
data-to-text: 可以把一些非语言性的表示的信息通过模型以人类可以理解的语言表示出来。 text-to-text 文本生成任务 Data-to-Text 对话生成 机器翻译 诗歌生成 风格转义 故事生成 总结生成 神经网络文本生成
语言建模-Language Modeling 有条件的语言建模 例子seq2seq 比较知名的模型T5 T5是在一个被清洗过的爬取的数据集上训练的。输入时会将其中一部分mask
自回归的生成 经典的模型GPT GPT-2 非自回归的生成 非自回归的生成可以一下子同时生成文本。
解码策略
模型得到的是概率。如何将概率解码得到文本。
贪心编码-Greedy Decoding
选择概率最大的token。 但是可读性可能比较差。
Beam Search Decoding
寻找一个子序列。但这样只是获得了局部的最优解并不一定是全局的。 过程演示 参数k很重要。 增大k的话会生成更通用但是和input text更无关的句子。
Sampling-based Decoding
Pure sampling随机从词表选token对于概率大的词以较大概率去选。模型的多样性会大大增加。
为了防止一些概率很小的词出现又引入top-n和top-p来限制模型生成的范围。
Top-n sampling不是在整个词表上采样而是在n个最有可能概率的词上采样。Top-p sampling首先是概率最大的token而且这些token的概率加起来大于等于阈值p Sampling with temperature 送入softmax之前会除以一个temperature。不同的temperature对应的是不同的生成策略。 t高则生成的文本更多样。 t低则生成的文本更相关。 受控文本生成
如何保持文本控制性和文本质量是一种重要课题。
Prompt methods
文本前面加prompt 模型前面加prefix
修改概率分布
除了基础模型还会训练两个模型生成非歧视文本的天使LM生成有歧视文本的恶魔LM。 生成的时候希望生成语言的概率贴近天使模型而去远离恶魔模型。
修改模型结构 文本生成测评
通用度量 BLEU 生成的文本有多少与金标准的文本是类似的。BP是对短句的惩罚。我们希望尽量生成长句。 PPL 在测试集上进行计算会去验证模型有多大概率生成某个sample。PPL越低越好。 翻译和总结的通用度量 其他度量 文本生成的挑战 在训练和模型策略上 总是生成重复的词 在seq2seq中teacher forcing会引入一些exposure bias。 逻辑一致性 缺少逻辑一致性 控制性 很难保证有很好的控制性和很好的语言质量 评估 合理的度量和数据集