【深度学习】RNN循环神经网络的原理

sentiment analysis,根据评价来判断为好评还是差评。例如I hate this boring movie,每个单词都用一个张量[100]进行表示,整句话就可以用张量[5, 100]进行表示。每个单词经过线性层操作之后(w和b的shape为[100, 2]),与线性层相连接提取特征,抽取高层特征,会得到一个张量[2],经过加和计算可以得到张量[5, 2],进而得到概率值P(pos|x)判断评论的好坏属性。

但是这样的方法存在问题,当句子太长的时候,[w,b]的参数太多。这时候我们可以采用权值共享的方法,把所有的[w, b]用同一个值进行处理,这样会大大减少参数量。

而且没有一个上下语境信息,我们不能一个一个的单词进行处理,而需要看整体的句子,需要持续的协调一致的张量(consistent tensor),存储统一的语境信息。首先,初始化h0,第一个单词不仅输入输入的特征向量 "I",还输入初始值h0的特征向量;第二个单词,输入 "hate"的同时,也输入上一时刻的语境信息 h1;第三个单词,输入 "this"的同时,也输入上一时刻的语境信息 h2。

简化之后,可以得到如果输入特征为[5, 3, 100],一句话有5个单词,有三个句子batch,每个单词用100维的特征向量进表示,输入一句话的时候shape为[3, 100],然后进行不断自我更新,自我更新机制取决于上一时刻的输出和当前输入。

展开之后可以得到:

如何进行训练RNN呢?

相关推荐
绍兴贝贝19 分钟前
代码随想录算法训练营第四十六天|LC647.回文子串|LC516.最长回文子序列|动态规划总结
数据结构·人工智能·python·算法·动态规划·力扣
逐鹿人生1 小时前
【人工智能工程师系列】一【全面Python3.8入门+进阶】ch.3
人工智能
杨浦老苏1 小时前
本地优先的AI个人助手Moltis
人工智能·docker·ai·群晖
OBS插件网1 小时前
OBS直播如何给人脸加口罩特效?OBS口罩特效插件下载安装教程
人工智能·数码相机·语音识别·产品经理
LitchiCheng2 小时前
Mujoco 如何添加 Apriltag 并获得相机视野进行识别
人工智能·python·开源
想用offer打牌2 小时前
一站式了解Agent Skills
人工智能·后端·ai编程
一切尽在,你来2 小时前
LangGraph快速入门
人工智能·python·langchain·ai编程
阿杰学AI3 小时前
AI核心知识110—大语言模型之 AI Collaboration Manager(简洁且通俗易懂版)
人工智能·ai·语言模型·自然语言处理·aigc·人机交互·ai协作管理员
SCLchuck3 小时前
人工智能-概率密度估计
人工智能·python·概率论·概率密度估计
王解3 小时前
AI Agent记忆模块进化史:从临时缓存到认知架构的设计范式
人工智能·缓存·架构