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

相关推荐
IT_陈寒3 分钟前
用了Proxy才发现以前的JavaScript白写了
前端·人工智能·后端
甲维斯27 分钟前
Claude Opus5手搓“NewAPI Plus”首轮成果!
人工智能
程序猿DD31 分钟前
分享两个我每天都在用的 Skill,拖进豆包就能跑,限时领 30 天会员
人工智能
阿里云大数据AI技术1 小时前
Agentic Search 2.0:从单轮对话迈向企业级 AI 搜索自动驾驶Agent
人工智能·elasticsearch·agent
东风破_1 小时前
从 messages 数组到 Memory:大模型到底是怎么“记住”上一轮对话的?
人工智能
AEI1 小时前
四年间大模型的演进历程
人工智能·面试·程序员
狂师2 小时前
阿里开源:skill-up,一款Agent Skill 评测工具!
人工智能·开源·agent
武子康2 小时前
同一套 Agent Runtime,为什么 Web、Headless 和 Python SDK 仍然不是同一个产品
人工智能·llm·agent
天天代码码天天2 小时前
一个纯 C 的 OCR Runtime,又向前走了一步:lw.PPOCR.C preview.5 发布
人工智能
程序员cxuan2 小时前
Claude 官方的学习教程,太强了。
人工智能·后端·程序员