【机器学习300问】125、什么是双向循环神经网络(BRNN)?什么是深度循环神经网络(DRNN)?

news2024/11/18 19:01:14

一、双向循环神经网络

(1)诞生背景

        双向循环神经网络(Bidirectional Recurrenct Neural Network, BRNN)是在深度学习领域发展起来的一种特殊类型的循环神经网络(RNN),它诞生的背景是为了解决传统RNN只能单向处理序列信息的缺点。

命令实体识别为例

        上图例子中,“teddy”之前信息(上文)无法帮助模型判断“teddy”是不是人名,只有在得知后续的信息(下文)才能做出准确的判断。

        传统RNN在处理序列数据时,存在这信息流动限制,只能从前向后或者从后向前传播信息。这意味着在给定时间点,模型的决策仅基于到目前为止的过去信息。这对于那些需要同时理解序列前后上下文的任务来说是个限制。

(2)BRNN的网络结构

        双向循环神经网络(BRNN)的基本结构包含两个并行的循环神经网络层,一个负责正向传播信息(从过去到未来),另一个负责逆向传播信息(从未来到过去)。这两个方向的RNN共享同一个隐藏层的维度,但它们的权重通常不共享。

对上面图中BRNN典型架构进行说明,建议看的时候对照数学符号解释:

① 输入层(Input Layer):接收序列数据,每个时间步有一个输入向量。

② 正向循环层(Forward RNN Layer):这个层中的单元从序列的第一个元素开始,逐个时间步向前传播信息。每个时间步,它会根据当前输入和前一时间步的隐藏状态计算新的隐藏状态。

\overrightarrow{h_t} = \overrightarrow{f}(W_{x\overrightarrow{h}} x_t + W_{\overrightarrow{h}\overrightarrow{h}} \overrightarrow{h}_{t-1} + b_{\overrightarrow{h}})

x_t表示时间步t 的输入。

③ 逆向循环层(Backward RNN Layer):与正向层平行运行,但方向相反,从序列的最后一个元素开始,向序列的起始处传播信息。同样,每个时间步,它根据当前输入(实际上是序列中的倒数第几个元素)和前一时间步(未来时间步的逆向看)的隐藏状态更新隐藏状态。

\overleftarrow{h_t} = \overleftarrow{f}(W_{x\overleftarrow{h}} x_t + W_{\overleftarrow{h}\overleftarrow{h}} \overleftarrow{h}_{t+1} + b_{\overleftarrow{h}})

④ 合并层(Merge Layer):在每个时间步,正向和逆向隐藏状态会被合并,常见的合并方式有拼接、求和或乘积等,以形成一个综合的上下文向量。这个向量包含了当前位置基于整个序列上下文的信息。

⑤ 输出层(Output Layer):基于合并后的上下文向量,输出层负责生成最终的预测或分类结果。这可以通过全连接层加上适当的激活函数(如softmax用于多分类问题)来实现。

y_t = g(W_{\overrightarrow{h}y} \overrightarrow{h_t} + W_{\overleftarrow{h}y} \overleftarrow{h_t} + b_y)

        其中g是输出层的激活函数,它常常是 softmax 函数用于分类任务。W_{\overrightarrow{h}y}W_{\overleftarrow{h}y}是隐藏状态到输出的权重矩阵,b_y是输出层的偏置项。

数学符号解释
符号解释
x_t时间步t的输入
\overrightarrow{h_t}时间步t的正向 RNN 隐藏状态
\overleftarrow{h_t}时间步t的反向 RNN 隐藏状态
\overrightarrow{f}正向 RNN 的激活函数
\overleftarrow{f}反向 RNN 的激活函数
W_{x\overrightarrow{h}}输入到正向隐藏层权重
W_{\overrightarrow{h}\overrightarrow{h}}正向隐藏层自身循环权重
W_{x\overleftarrow{h}}输入到反向隐藏层权重
W_{\overleftarrow{h}\overleftarrow{h}}反向隐藏层自身循环权重
b_{\overrightarrow{h}}正向隐藏层偏置项
b_{\overleftarrow{h}}反向隐藏层偏置项
y_t时间步t的输出
W_{\overrightarrow{h}y}从正向隐藏状态到输出的权重矩阵
W_{\overleftarrow{h}y}从反向隐藏状态到输出的权重矩阵
b_y输出层偏置项
g输出层激活函数,通常为 softmax

(3)使用领域

        双向循环神经网络的提出,是为了更有效地捕获和利用序列数据中的上下文信息,BRNN多使用在诸如一下场景中:

  1. 自然语言处理:在理解一句话的语义时,往往需要同时考虑前面的词(前向上下文)和后面的词(后向上下文)。比如情感分析任务中,“昨天晚上我吃了一顿美味的火锅,今天早上就拉肚子了。”在“火锅”的上文中我们得知,火锅是“美味的”,情感是正向的。在下文中我们得知“拉肚子”,情感是负向的。如果我们仅仅考上文,就无法准确的判断。

  2. 语音识别:在语音信号处理中,一个音素的准确识别可能依赖于其前后相邻的音素特征,双向结构有助于提高识别精度。

  3. 机器翻译:翻译任务要求模型理解源语言句子的整体含义,这通常需要综合考虑句子开头和结尾的信息。BRNN能够提供更为全面的上下文理解能力。

二、深度循环神经网络

(1)DRNN的定义

        深度循环神经网络(Deep Recurrent Neural Network,简称DRNN)是一种扩展了传统循环神经网络(RNN)结构的深度学习模型,特别适合处理长序列数据和复杂的时序依赖问题。在DRNN中,通过堆叠多个循环层,使得模型能够捕捉到更高层次的抽象特征和更长距离的时间依赖关系。

(2)DRNN的网络结构

        在深度RNN中,每个时间步的输入会首先通过第一层循环网络,其输出会成为第二层循环网络的输入,这一过程会持续到达最顶层的循环网络。每一层都可以学习到不同程度的序列抽象,更底层的网络可能会学习到一些局部模式或特征,而更高层的网络则可能会捕捉到更加全局或抽象的信息。

深度循环神经网络结构

(3)DRNN的优缺点

        优点:这种架构允许模型捕获数据在不同时间尺度上的复杂性,因为每一层都可以捕捉到序列数据在不同时间尺度上的特征,这使得深度RNN在处理复杂的序列任务(如机器翻译、语音识别或长文本生成)时,比单层RNN具有更强的表示能力。

        缺点:然而,深度RNN也引入了更多的复杂性和训练难度,例如更容易出现梯度消失或梯度爆炸的问题,因此通常需要采用一些高级技术(如梯度裁剪、层归一化、残差连接或使用LSTM、GRU等门控循环单元)来稳定训练过程。

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

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

相关文章

抽卡机小程序:设计与开发全攻略

在移动互联网时代,小程序以其轻便、易用、无需安装的特点,迅速成为用户日常使用的重要工具。其中,抽卡机小程序因其独特的娱乐性和互动性,受到广大用户的喜爱。本文将为大家详细介绍抽卡机小程序的设计与开发全攻略。 一、需求分析…

电子竞赛5——作息时间控制器

一 . 题目要求 用单片机制作作息时间控制器;用四位数码管显示实时时钟(时、分,24小时制、12小时制),有秒闪,小时十位有零消隐;可用数字键或、-键校时(可快速、-)被校位&…

通过OOS定时升级EIP实例临时带宽

目录 功能背景 关键特性 应用场景 使用限制 操作步骤 附录 执行流程图 模板 功能背景 随着业务的不断发展和互联网应用场景的多样化,企业或个人用户在特定时间段内面临网络流量剧增的挑战变得尤为常见。这些流量高峰,如大规模促销活动、热门直播…

[递归与栈]The Sierpinski Fractal

描述 Consider a regular triangular area, divide it into four equal triangles of half height and remove the one in the middle. Apply the same operation recursively to each of the three remaining triangles. If we repeated this procedure infinite times, wed …

我劝你别惹“女”项目经理

她来了她来了,她带着项目进度走来了!!! 在职场的江湖里,流传着一个传说,那便是“女”项目经理的神话。她们,是团队中的“铁娘子”,是项目里的“指挥官”,更是无数人心中的…

商城小程序:颠覆传统电商,打造全新商业生态

在数字化浪潮的推动下,网购行业呈现多元化繁荣发展态势,出现了琳琅满目的商品应用小程序,但市面上的商城小程序基本属于通用型,无论是商城界面展示和基本功能,都不能满足个性化和商品推广需求,阻碍了商品的…

故障记录---docker僵死

故障现象: docker进程僵死,docker命令无法使用 处理过程: 查看docker进程状态,显示句柄数过多,于是重启了docker [rootdata02 opt]# systemctl status docker ● docker.service - Docker Application Container Eng…

这13个常用电路基础公式,每一位电子工程师都要牢记

计算电阻电路中电流、电压、电阻和功率之间的关系。 欧姆定律解释了电压、电流和电阻之间的关系,即通过导体两点间的电流与这两点间的电势差成正比。说明两点间的电压差、流经该两点的电流和该电流路径电阻之间关系的定律。该定律的数学表达式为V IR,其中…

Nuxt3 实战 (十):使用 Supabase 实现 RESTful 风格 API 接口

前言 本篇文章我们来使用 Supabase 实现 RESTful 风格的 API 接口,以此来实现网站分类和子站点的 CURD 功能。 表设计 这里需要用到两张表: ds_categorys:存储网站分类 列名类型备注iduuid主键,分类 idnametext分类名称desct…

重学java 76.JDK新特性 ② 函数式接口

Looking to the future is the order of the day, no worrying about old news —— 24.6.19 一、函数式接口 1.定义 有且只有一个抽象方法的接口 2.检测 FunctionalInterface 3.示例 FunctionalInterface public interface USB {void open(String s); }public class Demo3…

【碳排放控排1006】碳排放控排企业名单数据集,探索绿色生产!

今天给大家分享的是国内顶级期刊2023发表论文《碳排放规制、企业减排激励与全要素生产率——基于中国碳排放权交易机制的准自然实验》中使用到的重要数据集——碳排放控排企业名单,该论文从企业生产效率视角对论文进行研究,发现碳排放权交易机制显著提升…

红米手机RedNot11无法使用谷歌框架,打开游戏闪退的问题,红米手机如何开启谷歌框架

红米手机RedNot11无法使用谷歌框架,打开游戏闪退的问题, 1.问题描述2.问题原因3.解决方案3.1配置谷歌框架:3.1软件优化 4.附图 1.问题描述 红米手机打开安卓APP没有广告,直接闪退,无法使用谷歌框架 异常关键词中包含&…

人工智能大模型之开源大语言模型汇总(国内外开源项目模型汇总)

开源大语言模型完整列表 Large Language Model (LLM) 即大规模语言模型,是一种基于深度学习的自然语言处理模型,它能够学习到自然语言的语法和语义,从而可以生成人类可读的文本。 所谓"语言模型",就是只用来处理语言文…

数字时代的创新:二人共益订单模式解析

一、引言 随着数字技术的飞速发展,商业模式也日新月异。其中,“二人共益订单模式”凭借其独特的互助与共赢理念,迅速在市场中获得关注。该模式不仅为用户提供了优质服务和独享优惠,更通过用户间的互助和订单共享,实现…

js语音识别,语音转文字,speech recognition(需要翻墙才能识别)

先上代码 <!DOCTYPE html> <html><head><meta charset"utf-8"><meta name"viewport" content"widthdevice-width,initial-scale1.0"><title>test</title> </head><body><div id"…

技术与创意并驾齐驱:打造扭蛋机小程序的独特魅力

引言 扭蛋机小程序以其独特的玩法和吸引力&#xff0c;在移动互联网市场中崭露头角。本文将深入探讨如何通过技术与创意的并驾齐驱&#xff0c;打造扭蛋机小程序的独特魅力。 一、技术驱动&#xff1a;打造稳定高效的小程序平台 在扭蛋机小程序的开发过程中&#xff0c;技术是…

中国500米分辨率年平均LAI数据集(2000-2020)

叶面积指数LAI(Leaf Area Index)是描述植被冠层几何结构的基本参数之一&#xff0c;被定义为单位地表面积上所有叶片面积的倍数&#xff0c;它控制着植被的许多生物物理过程&#xff0c;如光合作用、呼吸作用、蒸腾作用、碳循环和降水截获等&#xff0c;是陆面过程一个十分重要…

推荐一个很好用的Latex写代码的软件

软件名称&#xff1a;Axmath 据说是国产软件&#xff0c;好用是真好用&#xff08;去哪找&#xff1f;比如某地球号的公主号或其他地方&#xff09;我是推荐付费购买使用 1.通过图形操作&#xff0c;选择要转成Latex代码的符号&#xff0c;按下转换&#xff0c;直接就出现了我…

植物大战僵尸杂交版V2.1快速刷金币的方法(新号适用,无需自带招财猫)

&#x1f4dd;个人主页&#xff1a;哈__ 期待您的关注 目录 1. &#x1f4bb;游戏介绍 2. &#x1f525;快速刷取金币的办法&#xff08;我是新号测试的&#xff09; 2.1 无招财猫 2.2 有招财猫 《植物大战僵尸杂交版》是一款在原版《植物大战僵尸》基础上进行了创新的塔防…

『大模型笔记』如何让小型语言模型发挥作用!

如何让小型语言模型发挥作用! 文章目录 一. 如何让小型语言模型发挥作用!不可能的可能性小模型的潜力创新方法与突破实践与验证过滤系统与数据质量小模型的逐步改进信息理论蒸馏方法(新工作InfoSum)总结与展望Infini-Gram与N-gram模型的新时代后缀数组与高速计算二. 参考文献…