nlp第九节——文本生成任务

一、seq2seq任务

特点:输入输出均为不定长的序列
自回归语言模型:

由前面一个字预测下一个字的任务


encoder-decoder结构:

Encoder-Decoder结构是一种基于神经网络完成seq2seq任务的常用方案

Encoder将输入转化为向量或矩阵,其中包含了输入中的信息

Decoder利用这些信息输出目标值

在这里,encoder的output和decoder每一个时间层的output拼接,用一个线性层和softmax激活函数计算权重(attention机制),再把权重张量和encoder的output点乘,把这个结果和decoder这个时间层的output拼接,再过一层gru和线性层得到下一个字的概率分布。

attention思想:

从decoder的query和encoder的key结合计算出权重(判断文本的重点),再作用在value上

soft attention:

hard attention:

teacher forcing:在预测下一个字时用输入decoder的正确的字来预测,这样做的问题是在预测时如果一个字错,后面会出现连环反应(就像在平时老师经常把正确答案给学生,在考试时学生答题效果不好);如果用非teacher forcing,会出现在训练模型时,一个字错导致后面出现连环反应。

二、transformer

在encoder-decoder交互attention阶段,q矩阵由decoder提供,与encoder的output里的key计算出attention矩阵,然后作用在encoder提供的value矩阵上,再过残差机制曾和LN层(使模型更稳定,防止梯度爆炸和梯度消失)
mask attention:

将输入decoder的文本做一次attention,对输出的矩阵进行mask(因为预测的过程中预测下一个字的过程中我们看不到下一个字,所以前一个字对下一个字没有attention)

通过mask控制训练方式:

三、采样策略

beamsearch在前文已经介绍过

temperature sample是基于对softmax的改进采样:

当T越大时,不同样本间的概率差值会减小

top-K采样:从概率最高的K个样本中采样

top-P采样:采样时,先按概率从高到低排序,从累加概率不超过P的范围内选择

相关推荐
棒棒的皮皮1 天前
【OpenCV】Python图像处理之仿射变换
图像处理·python·opencv·计算机视觉
小oo呆1 天前
【学习心得】基于FunASR推理的SenseVoiceSmall模型来实现语音识别
人工智能·语音识别
极客BIM工作室1 天前
AI导读AI论文: Towards a Unified View of Parameter-Efficient Transfer Learning
人工智能
小叶子来了啊1 天前
少儿编程Scratch3.0教程——扩展篇(视频侦测)
人工智能·深度学习·计算机视觉·scratch
GEO AI搜索优化助手1 天前
未来图景:信息传播链的生态重构与长期影响
人工智能·搜索引擎·重构·生成式引擎优化·ai优化·geo搜索优化
weixin_446260851 天前
FastF1: 轻松获取和分析F1数据的Python包
开发语言·python
我送炭你添花1 天前
Pelco KBD300A 模拟器:06.用 PyQt5 实现 1:1 像素级完美复刻 Pelco KBD300A 键盘
python·qt·自动化·运维开发
adaAS14143151 天前
【深度学习】【目标检测】使用RetinaNet-R101-FPN模型实现建筑设备物体检测_1
人工智能·深度学习·目标检测
山土成旧客1 天前
【Python学习打卡-Day22】启航Kaggle:从路径管理到独立项目研究的全方位指南
开发语言·python·学习
我命由我123451 天前
Python Flask 开发 - Flask 路径参数类型(string、int、float、path、uuid)
服务器·开发语言·后端·python·flask·学习方法·python3.11