【Transformer】深入理解Transformer模型2——深入认识理解(下)

前言

Transformer模型出自论文:《Attention is All You Need》 2017年

近年来,在自然语言处理领域和图像处理领域,Transformer模型都受到了极为广泛的关注,很多模型中都用到了Transformer或者是Transformer模型的变体,而且对于很多任务,使用加了Transformer的模型可以获得更好的效果,这也证明了Transformer模型的有效性。

由于Transformer模型内容较多,想要深入理解该模型并不容易,所以我分了大概3~4篇博客来介绍Transformer模型,第一篇(也就是本篇博客)主要介绍Transformer模型的整体架构,对模型有一个初步的认识和了解;第二篇是看了b站李宏毅老师的Transformer模型讲解之后,做的知识总结(内容比较多,可能会分成两篇博客);第三篇从代码的角度来理解Transformer模型。

目前我只完成了前两篇论文,地址如下,之后完成第三篇会进行更新。

第一篇:【Transformer】深入理解Transformer模型1——初步认识了解-CSDN博客

第二篇:【Transformer】深入理解Transformer模型2——深入认识理解(上)-CSDN博客

第三篇:【Transformer】深入理解Transformer模型2——深入认识理解(下)-CSDN博客

第四篇:


深入认识理解(下)

Transformer  就是Sequence-to-Sequence(Seq2Seq):输入一个sequence,输出也是一个sequence(输出sequence的长度由机器自己决定)

AT和NAT的比较:(AT和NAT都是Decoder的一种,其中NAT表示Non-Autoregressive)

Decoder和Encoder是怎么互动的?

seq2seq训练的一些tips:

1、copy机制:

即:有些东西不需要模型生成,模型可以直接复制。例如聊天机器人、摘要生成等任务。

2、Beam Search

对于答案唯一的任务(如语音识别任务),Beam Search就比较有效果,而对于答案不唯一,需要机器有一点创造力的任务,Beam Search的效果就不是很好。

3、Scheduled Sampling

原本训练时Decoder看到的输入都是正确的,现在要加入一些错误的案例,即在训练时使Decoder看到的输入中有一部分是错误的。但这种方法会导致模型性能有所下降。

评价指标:

1、PPL(Perplexity)

PPL是nlp领域衡量语言模型好坏的指标,它主要是根据每个词来估计一句话出现的概率,并用句子长度作normalize。公式:

其中,S表示sentence,N表示句子长度,P(wi)是第i个词的概率。第一个词就是p(w1|w0),而w0是BEGIN,表示句子的起始,是个占位符。这个式子可以这样理解:PPL越小,p(wi)越大,我们期望的sentence出现的概率就越高。(PPL越小,模型越好

PPL的影响因素:

(1)训练数据集越大,PPL会下降得更低,1百万数据集和10万数据集训练效果是很不一样的。

(2)数据中的标点会对模型的PPL产生很大影响,一个句号能让PPL波动几十,标点的预测总是不稳定的。

(3)预测语句中的“的、了”等词也对PPL有很大影响,可能“我借你的书”比“我借你书”的指标小几十,但从语义上分析有没有这些停用词并不能完全代表句子生成的好坏。

2、BLEU和ROUGE

BLEU和ROUGE是机器翻译任务中两个常用的评价指标,BLEU根据精确率(Precision)衡量翻译的质量,而ROUGE则根据召回率(Recall)衡量翻译的质量。

BLEU(Bilingual Evaluation Understudy):BLEU是一种用于评估机器翻译结果质量的指标。它主要侧重于衡量机器翻译输出与参考翻译之间的相似程度,着重于句子的准确性和精确匹配。BLEU通过计算N-gram(连续N个词)的匹配程度来估计机器翻译的精确度(Precision)。

ROUGE(Recall-Oriented Understudy for Gisting Evaluation):ROUGE是一种用于评估文本摘要(或其它NLP任务)质量的指标。与BLEU不同,ROUGE主要关注机器生成的摘要中是否捕捉到了参考摘要的信息,着重于涵盖参考摘要的内容和信息的完整性。ROUGE通过计算N-gram的共现情况来评估机器生成的摘要的召回率(Recall)。

简言之,BLEU侧重于衡量翻译的准确性和精确匹配程度,更偏向于Precision,而ROUGE侧重于衡量摘要的信息完整性和涵盖成都,更偏向于Recall。这两个指标在不同的任务和应用场景中都有其重要性,因此在评估nlp模型时,经常会同时使用它们来综合考虑模型的表现。

几个问题详解

1、自注意力机制中为什么要除以

如果有没太看明白的,想深入了解的可以参考这篇博客:

https://blog.csdn.net/qq_44846512/article/details/114364559

2、为什么要使用层归一化?

神经网络中,每一层的计算结果会导致上层的输入分布发生变化。因此,在层数较多的模型中,高层的输入往往会变化巨大,导致上层参数需要根据底层输入数据的分布不断进行调整,而且更高层的参数会对底层输入非常敏感。

为了解决以上问题,采用了层归一化(layer normalization),对每一层的输入进行归一化操作,即计算该层输入的平均值和标准差,将输入的每个维度标准化。

3、残差网络(residual network)

将一个网络层的输出与输入相加的方法来自残差网络,目的是降低计算导数时链式法则路径的平均长度


以上就是剩下的看视频学习的知识总结,还有我看视频时想到的问题的相关解答,希望能够帮助到大家~

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

java springboot宠物医院管理系统

一.项目简介 宠物医院管理系统,java项目,springboot项目。eclipse和idea都能打开运行。 使用技术:springboot,mybatis,jsp,mysql 5.7 共分为三个角色:系统管理员、医生、用户 功能模块&…

9. 进程

9. 进程 1. 进程与程序1.1 main() 函数由谁调用1.2 程序如何结束1.2.1 注册进程终止处理函数 atexit() 1.3 何为进程1.4 进程号 2. 进程的环境变量2.1 应用程序中获取环境变量2.1.1 获取指定环境变量 2.2 添加/删除/修改环境变量2.2.1 putenv()2.2.2 setenv()2.2.3 命令行式添加…

springboot参数校验常用注解及分组校验

一、使用方式添加Validated 二、常见注解 Null 被注解的元素必须为null NotNull 被注解的元素必须不为null NotBlank 只能作用在接收的 String 类型上,注意是只能,不能为 null,而且调用 trim() 后,长度必须大于 0即&#xff…

在 Linux 中使用 cat 命令

cat 命令用于打印文本文件的文件内容。至少,大多数 Linux 用户都是这么做的,而且没有什么问题。 cat 实际上代表 “连接(concatenate)”,创建它是为了 合并文本文件。但只要有一个参数,它就会打印文件内容。因此,它是用…

【数据结构】双向带头循环链表的实现

前言:在前面我们学习了顺序表、单向链表,今天我们在单链表的基础上进一步来模拟实现一个带头双向链表。 💖 博主CSDN主页:卫卫卫的个人主页 💞 👉 专栏分类:数据结构 👈 💯代码仓库:卫卫周大胖的…

软件测试/测试开发丨Python 内置库 正则表达式re

什么是正则表达式 正则表达式就是记录文本规则的代码可以查找操作符合某些复杂规则的字符串 使用场景 处理字符串处理日志 在 python 中使用正则表达式 把正则表达式作为模式字符串正则表达式可以使用原生字符串来表示原生字符串需要在字符串前方加上 rstring # 匹配字符…

基于Java学生成绩管理系统设计与实现(源码+部署文档+报告)

博主介绍: ✌至今服务客户已经1000、专注于Java技术领域、项目定制、技术答疑、开发工具、毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精彩专栏 推荐订阅 👇🏻 不然下次找不到 Java项目精品实…

结构体:是第几天

今天是该年的第几天 #include<iostream> using namespace std; struct Date //创建结构体 {int year; //年int month; //月int day; //日 }; void inputDate(Date *p) //输入函数 {cin >> p->year >> p->month >> p->day; //输入年、月、…

C++内联函数与引用(超详细)

文章目录 前言一、内联函数1.为什么会存在内联函数2.什么是内联函数3.内联函数注意事项 二、引用1.什么是引用2.引用的特性3.常引用4.引用使用场景5.引用与指针 总结 前言 一、内联函数 1.为什么会存在内联函数 &#x1f9d0;&#x1f9d0;首先我们介绍内联函数之前&#xf…

记一次JSF异步调用引起的接口可用率降低 | 京东云技术团队

前言 本文记录了由于JSF异步调用超时引起的接口可用率降低问题的排查过程&#xff0c;主要介绍了排查思路和JSF异步调用的流程&#xff0c;希望可以帮助大家了解JSF的异步调用原理以及提供一些问题排查思路。本文分析的JSF源码是基于JSF 1,7.5-HOTFIX-T6版本。 起因 问题背景…

基于 Vue3 和 WebSocket 实现的简单网页聊天应用

首先附上项目介绍,后面详细解释技术细节 1. chat-websocket 一个基于Vue3和WebSocket的简易网络聊天室项目&#xff0c;包括服务端和客户端部分。 项目地址 websocket-chat 下面是项目的主要组成部分和功能&#xff1a; 项目结构 chat-websocket/ |-- server/ # WebSocket 服…

Linux上管理不同版本的 JDK

当在 Linux 上管理不同版本的 JDK 时&#xff0c;使用 yum 和 dnf 可以方便地安装和切换不同的 JDK 版本。本文将介绍如何通过这两个包管理工具安装 JDK 1.8 和 JDK 11&#xff0c;并利用软连接动态关联这些版本。 安装 JDK 1.8 和 JDK 11 使用 yum 安装 JDK 1.8 打开终端并…

【AIGC表情prompt】提示词练习技巧

表情类提示词练习技巧 医疗机器人&#xff0c;男人笑脸景深&#xff0c;数据&#xff0c;座标&#xff0c;12k,c4d渲染&#xff0c;高分辨率&#xff0c;,暖色调&#xff0c;高清对比 医疗机器人&#xff0c;男人微笑&#xff0c;景深&#xff0c;数据&#xff0c;座标&#xf…

线上发布稳定性方案介绍

目录 一、方案说明 二、线上发布问题描述 2.1 无损上下线背景说明 2.1.1 服务⽆法及时下线 2.1.2 初始化慢 2.1.3 注册太早 2.1.4 发布态与运⾏态未对⻬ 三、问题解决方案 3.1 无损下线方案 3.1.1 什么是无损下线 3.1.2 传统解决方式 3.1.3 云原生场景解决方案 3.1…

提升爬虫IP时效:解决被封IP的难题

在进行数据采集时&#xff0c;经常会遇到被目标网站封禁IP的情况&#xff0c;这给爬虫系统带来了困扰。本文将介绍如何提升爬虫IP的时效&#xff0c;解决被封IP的难题&#xff0c;帮助您顺利进行数据采集&#xff0c;不再受限于IP封禁。 第一步&#xff1a;使用爬虫IP 使用爬虫…

使用element中el-cascader级联选择器实现省市区街道筛选(非动态加载)

<template><el-form ref"form" :model"form" label-width"80px"><el-form-item label"地址:" prop"addressList"><el-cascaderv-model"form.addressList":props"props":options&q…

《网络是怎样连接的》2.1节图表(自用)

图3.1&#xff1a;协议栈的组成 图3.2&#xff1a;netstat命令查看套接字 上图中每一行就是一个套接字 图3.3&#xff1a;协议栈在浏览器访问DNS服务器与web服务器时的具体工作流程 套接字由协议栈创建 应用程序通过Socket库中的程序组件与协议栈交互

飞企互联-FE企业运营管理平台 登录绕过漏洞复现

0x01 产品简介 飞企互联-FE企业运营管理平台是一个基于云计算、智能化、大数据、物联网、移动互联网等技术支撑的云工作台。这个平台可以连接人、链接端、联通内外&#xff0c;支持企业B2B、C2B与O2O等核心需求&#xff0c;为不同行业客户的互联网转型提供支持。 0x02 漏洞概…

图像拼接——基于homography的特征匹配算法

目录 1. 任务要求2. 数据集3. 基于homography的特征匹配算法4. 拼接流程展示4.1 图片实例4.2 特征点位图4.3 特征点匹配结果4.4 相机校准结果4.5 拼接结果 5. 部分图像拼接结果展示 1. 任务要求 输入&#xff1a;同一个场景的两张待拼接图像&#xff08;有部分场景重合&#x…

2023年03月18日_微软office365 copilot相关介绍

文章目录 Copilot In WordCopilot In PowerpointCopilot In ExcelCopilot In OutlookCopilot In TeamsBusiness Chat1 - copilot in word2 - copilot in excel3 - copilot in powerpoint4 - copilot in outlook5 - copilot in teams6 - business chat word 1、起草草稿 2、自动…