机器学习笔记:RNN值Teacher Forcing

news2024/11/27 11:54:59

1 基本介绍

  • Teacher forcing是一种在训练循环神经网络(RNN)时使用的技术,尤其是在序列生成任务中,如机器翻译、文本生成或语音合成。
  • 这种方法的目的是更有效地训练网络预测下一个输出,给定一系列先前的观察结果。

1.1 标准RNN训练过程的问题

  • 当训练一个用于序列生成的RNN时,通常会让网络预测序列中的下一个元素。(这种模式又被称为free-running mode / autoregressive mode)
    • 在标准的训练过程中,网络的预测会被送回作为下一个时间步骤的输入。
    • 但是,在初始阶段,由于网络的参数还没有很好的调整,这些预测可能会相当不准确。
    • 这种不准确性可以在网络中累积,并可能导致训练过程变得低效
      • (某一个单词预测错了,后面会跟着错,导致模型很难收敛)

1.2 Teacher Forcing的工作原理

  • 为了克服这个问题,teacher forcing在训练期间不使用模型自己的预测作为下一步的输入,而是使用真实的输出序列的当前元素
  • 换句话说,在训练时刻t,模型预测时间t的输出后,不是将这个预测值用作时间t+1的输入,模型而是使用真实的数据,即目标序列在时间t+1的真实值。
  • 这样,即使前一个预测不准确,网络也可以在准确的数据指导下继续学习

2 优点

  • 快速收敛: 由于网络接收到准确的信息,它通常可以更快地学习正确的参数。
  • 稳定训练: 防止错误的累积和传播,使得整个训练过程更加稳定
  • 并行保证:保证 Transformer 模型能够在训练过程中完全并行计算所有token

3 缺点

  • 露珠效应(Exposure Bias): 在真实应用(推理阶段)中,网络只能依赖于它自己的预测来生成序列,这可能导致在训练时没有遇到的错误。
  • 不一致的学习信号: 训练和推理时的行为不一致,可能会导致推理时性能下降。

4 teacher forcing ratio

 Scheduled Sampling for Sequence Prediction with Recurrent Neural Networks 2015

  • 模型在训练过程中的每一个steps,有 p的概率选择使用 teachering-forcing,有 1−p 的概率选择使用 Autoregressive。
  • 模型在训练前期,p应该尽可能的大,这样能够加速收敛;而在快要结束训练的时候, p 尽可能的小,让模型在 Autoregressive 的方案中尽可能的修复自身生成的错误。
    • p可以随着训练的Epoch 进行衰减:Exponential Decay, Inverse Sigmoid decay 和 Linear decay 

  • 上面的这个概率 p ,是针对一个token而言的,而不是针对整句话
    • 也就是说在解码过程中,每个token的生成,都要进行着这么一次概率的选择
    • 论文中指出,如果是整句话进行概率选择的话,效果会比较差

  • Always Sampling:相当于在训练过程只使用Autoregressive 方案(每次使用上一步的预测单词),可以发现模型效果非常差,收敛有问题。
  • Uniform Scheduled Sampling:每次都有0.5的概率选择 Teacher-Forcing,0.5的概率选择Autoregressive,效果也比 Scheduled-Sampling 要差

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

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

相关文章

专访 SPACE ID:通往 Web3 无许可域名服务协议之路

Web3 行业发展风起云涌,对于初创项目而言,如何寻找适合自己的赛道是首要问题。当前伴随用户交互和跨平台操作需求日渐兴起,如何更迅速地使用一站式域名实现便捷验证成为大众的心头期盼。 这一背景下,SPACE ID 于众星林立的 Web3 …

MFC 窗体插入图片

1.制作BMP图像1.bmp 放到res文件夹下,资源视图界面导入res文件夹下的1.bmp 2.添加控件 控件类型修改为Bitmap 图像,选择IDB_BITMAP1 3.效果

自家开发VS第三方美颜SDK:技术和资源的比较

开发直播平台时,开发人员面临一个关键决策:是选择使用第三方美颜SDK,还是自家开发美颜算法?本文将深入探讨这两种方法的技术和资源方面的比较,帮助开发者更好地决定哪种途径最适合他们的应用。 一、第三方美颜SDK&am…

mapbox使用marker创建html点位信息

mapbox使用marker创建html点位信息 codePen地址 mapboxgl.accessToken "pk.eyJ1IjoibGl1emhhbzI1ODAiLCJhIjoiY2xmcnV5c2NtMDd4eDNvbmxsbHEwYTMwbCJ9.T0QCxGEJsLWC9ncE1B1rRw"; const center [121.29786, 31.19365]; const map new mapboxgl.Map({container: &quo…

JS 递归和解递归

递归 // 角色数据 const roleData [{id: 1, //角色idname: "网络服务部", // 角色名称parent_id: 0, // 父类没有 parent_id},{id: 2, //角色idname: "前端开发组", // 角色名称parent_id: 1, // 父类没有 parent_id},{id: 3, // 角色idname: "前端开…

跨境电商须知| 独立站的特点与痛点有哪些?

独立站的特点与痛点有哪些? 无论是做独立站,还是做亚马逊,都有各自的难点。自己做独立站若要在跨境行业长足发展,既要知道独立站有什么特点,要清楚独立站的痛点并一一克服。了解独立站搭建更多 一、独立站的特点 1、…

GeoTrust证书:您的在线信任伙伴

GeoTrust是全球领先的SSL证书颁发机构(CA),拥有超过20年的安全颁发经验。GeoTrust证书不仅令您的网站或应用程序在技术上更加安全,而且还为您的用户传递了信任的信息。 保障用户数据的安全 GeoTrust是全球领先的SSL证书颁发机构&…

【优选算法系列】【专题四前缀和】第一节.DP34 一维前缀和DP35 二维前缀和

文章目录 前言一、一维前缀和 1.1 题目描述 1.2 题目解析 1.2.1 算法原理 1.2.2 代码编写二、二维前缀和 2.1 题目描述 2.2 题目解析 2.2.1 算法原理 2.2.2 代码编写总结 前言 一、一维前缀和 1.1 题目描…

Stable Diffusion 的提示词使用技巧

推荐Stable Diffusion自动纹理工具: DreamTexture.js自动纹理化开发包 什么是提示语? 提示语是人工智能中的一个重要组成部分,尤其是自然语言处理 (NLP)。在AI自人工智能中,想要获得好的效果,简…

液氮恒温器的使用注意事项

在低温研究的时候,我们经常会用到液氮恒温器,那在使用液氮恒温器的时候,我们需要注意什么事项呢? 首先,我们要正确地把样品固定在样品台上,要用低温胶或者双面胶将样品固定牢固,如果有电学测量…

降低边际成本:跨境电商的利润增长策略

在竞争激烈的跨境电商领域,降低成本是提高利润的关键。边际成本,即生产或销售一件额外商品所需的额外成本,在跨境电商中起到至关重要的作用。在本文中,我们将探讨降低边际成本的策略,以实现跨境电商的利润增长。 供应链…

[每周一更]-(第70期):常用的GIT操作命令

1、增删文件 # 添加当前目录的所有文件到暂存区 $ git add .# 添加指定文件到暂存区 $ git add <file1> <file2> ...# 添加指定目录到暂存区&#xff0c;包括其子目录 $ git add <dir># 删除工作区文件&#xff0c;并且将这次删除放入暂存区 $ git rm [file…

word插入图片不显示

段落格式要设置成非固定的。

在PyCharm中直接启动mitmproxy并自动打开关闭系统代理

前言 在前面的文章中&#xff0c;有几篇是介绍mitmproxy 的。 这个mitmproxy 的确是个捕获数据的好工具&#xff0c;但在运行时候需要在命令行启动&#xff0c;这是很令人苦恼的。 之前也尝试过脱离命令行去启动mitmproxy&#xff0c;在Python中启动mitmproxy&#xff0c;脱离…

音频修复增强软件iZotope RX 10 mac中文特点

iZotope RX 10 mac是一款音频修复和增强软件。 iZotope RX 10 mac主要特点 声音修复&#xff1a;iZotope RX 10可以去除不良噪音、杂音、吱吱声等&#xff0c;使音频变得更加清晰干净。 音频增强&#xff1a;iZotope RX 10支持对音频进行音量调节、均衡器、压缩器、限制器等处…

正则表达式中扩展表示法的理解

正则表达式可以拥有扩展表达式&#xff0c;大致形式是(?...) 理解&#xff1a; 以(?)的含义为例子 data a1b2ce34.5d_6fres re.findall(r[a-z](?\d), data) # [a, b, ce]# ([a-z](?\d) 表示的是匹配小写字符一个或多个&#xff0c;但是匹配之后需要满足后续有数字一个…

Linux中的进程等待

文章目录 1.进程等待1.1进程等待必要性1.1.1为什么有进程等待这个概念1.1.2进程等待是什么&#xff1f;1.1.3进程等待具体干什么&#xff1f; 1.2进程退出方法&#xff1a; 2.具体代码实现 1.进程等待 1.1进程等待必要性 1.1.1为什么有进程等待这个概念 之前讲过&#xff0c…

最全MySQL优化方法,手把手教你学会性能优化

在日常工作中你会从哪些维度进行MySQL性能优化呢&#xff1f; 所谓的性能优化&#xff0c;一般针对的是MySQL查询的优化。既然是优化查询&#xff0c;我们自然要先知道查询操作要经过哪些环节&#xff0c;然后思考可以在哪些环节进行优化。 我用一张图展示查询操作需要经历的…

双十一推荐买什么?双十一爆款推荐,实用性好的数码好物推荐

​双十一购物狂欢节即将来临&#xff0c;你是否已经开始期待这个一年一度的购物盛宴&#xff1f;今天&#xff0c;我想和大家分享一些实用的数码好物&#xff0c;这些产品都是我亲自试用并深得我心&#xff0c;相信它们也能为你的生活带来便利和乐趣。 一、无线蓝牙耳机 南卡…

MobPush智能推送工具,助力实现用户全生命周期管理

用户运营在APP的价值变现和长期增长中扮演着关键角色。通过深入了解用户需求、行为和反馈&#xff0c;精心设计和实施用户运营策略&#xff0c;能归有效提升用户参与和用户忠诚度、实现品牌价值增值和APP长期增长。 但如何对处于不同阶段、不同周期、不同偏好的用户进行精细化…