【Attention 演变史】RNN的产生、架构、推广、问题(第一弹)

本文介绍了RNN的产生背景,详细阐述了RNN的模型架构和计算过程,揭示了其在处理不同长度输入时的优势。同时,文章指出RNN存在的信息衰减问题,并提及LSTM和GRU等改进模型。通过对RNN的深入探讨,为后续的注意力机制打下基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

栏目介绍

最近在搭司法的一个模型,现在在处理数据的阶段,后面在和师兄讨论的时候说应该要用attention,毕竟司法这一块对解释性的要求还是比较高的。虽然之前有所了解,但是总感觉没有能拿到attention的本质,并且多少有点忘了,所以从头开始这个栏目,相当于在给自己做一个笔记。

RNN

出现背景

RNN(Recurrent Neural Network)循环神经网络是一类可以处理不同长度输入的一种深度学习模型,产出的压力主要在于NLP任务,比如翻译任务。就中英翻译来说,我们拿到的英文可能是任意长度的,短到一个人名,长到阅读里的长难句翻译。这种数据在当时有很多人通过截断来做,但显然这会对输入内容有所牺牲,不是理想的解决方式,于是RNN就背负着希望出现了。

模型架构

在这里插入图片描述
通过这张图可以很容易地说明情况,首先整个RNN的代码的参数就在h这一块(箭头左侧),x是输入,o是输出。具体而言,箭头左边绿色这一块可以仅仅只是两个矩阵W和U。我们现在来说整个数据是如何通过这个模型过了一遍。
我们不妨假设我们的输入 x = Where have you been recently? 是一个有五个单词的句子,首先我们当然会用一些方法把这些单词向量化,这里我们不详述,默认已经把这句话的五个单词分别转化成的五个定长的向量
v 1 , v 2 , v 3 , v 4 , v 5 v_1, v_2, v_3, v_4, v_5 v1,v2,v3,v4,v5
他们每一个都是对应位置英文单词的向量,比如 v 1 v_1 v1对应的是where v 3 v_3 v3对应的是you。那么现在我们的输入从五个人容易读的英文单词,变成了5个计算机容易处理的定长向量。下面我们描述RNN怎么处理这五个向量。

模型计算

第一步

随机初始化一个隐层向量 h 1 h_1 h1,计算向量 W ∗ h 1 W * h_1 Wh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值