今天细致聊下循环神经网络(RNN):之前也提到过RNN是用来处理序列数据及一些相关的应用场景.现在来聊聊其API和一些其他的东西.torch.nn.RNN(input_size,hidden_size,num_layers)参数分别表示输入的特征维度,输出特征维度,隐藏层数.输入的Xt=(seq_len,batch_size,input_size).参数分别表示样本的token数,批次,指定词向量的维度.实际情况Xt是一个张量,形状根据你自己拿到的数据.需要注意:通常情况拿到的数据是:批次,token数......这时可以进行张量的维度转换.transpose(dim=),permute(dim=)也可直接在RNN的那个地方传入参数:batch_size=True.在隐藏层还有一个h0一般进行全0初始化.然后设置两个变量用来接收RNN模型的Yt,Ht..打印结果即可.在实际情况.RNN在进行长句子分析的时候容易梯度消失和梯度爆炸.短句子的分析效果较好.为缓解长句子处理的问题.于是提出LSTM模型.它是在RNN模型的基础上引入了Ct和门控机制还增加了许多激活函数.具体是:Ct是细胞状态.同样对传入的Ht-1和Xt进行拼接传给sigmoid得到遗忘系数,记忆系数,输出门系数(不是同一个东西).Ht-1和Xt进行拼接传给tanh得到Ct1.Ct-1乘以遗忘系数+Ht-1乘以记忆系数得到当前细胞状态Ct(记录的所有历史信息).将Ct投给tanh然后乘以输出门系数得到Ht(记录的是下一个时间步的输入状态).LSTM基本原理也很简单.通过门控机制.遗忘部分历史信息,记住现在多数信息.以此来缓解长句的梯度消失和爆炸问题.更长句的处理得用到Transformer的自注意力机制来解决.
相关推荐
阿部多瑞 ABU10 小时前
新帝国殖民主义:文化-情感-金融复合体的当代运作机制thesky12345610 小时前
27届大模型岗面试准备(三):位置编码全景——从绝对编码到 RoPE/ALiBi 的演进与手推动恰客流统计11 小时前
ReID边缘计算视觉统计:餐饮店客流增长的数字化破局路径小小仙子12 小时前
矢量网络分析仪如何测试S参数的?IT_陈寒12 小时前
SpringBoot这个分页坑,我踩了三天才爬出来颜酱12 小时前
05 | 召回前置准备:根据业务数据库生成各数据库(读取配置阶段)Infedium12 小时前
英特物理AI仿真赋能制造!打破传统有限元瓶颈,研发提效降本翻倍天国梦12 小时前
2026英语教学系统选型实战:AI如何让备课效率提升42%?天学网技术落地全解析hqyjzsb13 小时前
AI证书和传统证书有什么区别?