【深度学习】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呢?

相关推荐
uesowys3 分钟前
腾讯云使用OpenClaw搭建企业微信AI助手
人工智能·企业微信·腾讯云·openclaw
irpywp4 分钟前
OpenShell:安全沙箱隔离的沙箱隔离技术
人工智能·安全
勾股导航4 小时前
大模型Skill
人工智能·python·机器学习
卷福同学6 小时前
【养虾日记】Openclaw操作浏览器自动化发文
人工智能·后端·算法
春日见6 小时前
如何入门端到端自动驾驶?
linux·人工智能·算法·机器学习·自动驾驶
光锥智能6 小时前
从自动驾驶到 AI 能力体系,元戎启行 GTC 发布基座模型新进展
人工智能
luoganttcc6 小时前
自动驾驶 世界模型 有哪些
人工智能·机器学习·自动驾驶
潘高6 小时前
10分钟教你手撸一个小龙虾(OpenClaw)
人工智能
禁默6 小时前
光学与机器视觉:解锁“机器之眼”的核心密码-《第五届光学与机器视觉国际学术会议(ICOMV 2026)》
人工智能·计算机视觉·光学
2401_876907526 小时前
Python机器学习实践指南
开发语言·python·机器学习