什么是RNN(循环神经网络)

什么是RNN(循环神经网络)

循环神经网络(Recurrent Neural Network),在识别图像时,输入的每张图片都是孤立的,认出这张图片是苹果,并不会对认出下一张图片是梨造成影响。

但对语言来说,顺序是十分重要的,"我吃苹果"和"苹果吃我",词语顺序的改变表达了完全不同的意义。顺序也提供了一定的信息,比如"吃"后面大概率是代表食物的名词。

为了捕捉数据的这种关联,人们找到了RNN,一个高度重视序列信息的网络。

序列就是数据的前后关系,RNN的基础结构仍然是神经网络,只不过它多了一个小盒子 ,用来记录数据输入时网络的状态,在下一次输入数据时,网络必须要考虑小盒子中保存的信息,随着数据的一次次输入,存储信息也在不断更新,盒子中的信息被称为隐状态

和开始举出的例子一样,RNN最常见的应用领域就是自然语言处理。

  • 机器翻译是寻找相同的意义序列,在不同语言中的表达。

  • 诗歌生成是基于一个主题,按照一定的规则输出有逻辑的词语序列。改变两端的信息类型,输入图片输出句子,就是看图说话。

  • 语音同样可以看作声音信号按时间顺序组成的序列,语音识别和语音生成同样在RNN的能力范围内。

  • 股票价格也可以被看作一个受时间影响的序列,很多量化交易模型的建立,就是基于这样的认知。

不过,RNN仍有不可忽视的缺陷,数据输入的越早,在隐状态中占据的影响就越小,也就是说如果一个句子很长,RNN就会忘记开始时说了什么。

于是就有了RNN的改良版,LSTM-长短时记忆模型。

相关推荐
Bigfish_coding4 小时前
前端转agent-【python】-13 Ollama Python流式输出教程:stream=True 与 async 实践
人工智能
字节跳动数据库7 小时前
文章分享——相似函数处理方法
人工智能·后端·程序员
Bigfish_coding7 小时前
前端转agent-【python】-12 LangChain 入门实战:RAG + LCEL 链式调用
人工智能
程序员cxuan7 小时前
读懂 Claude Code 架构分析系列,第一篇,开始!
人工智能·后端·架构
饼干哥哥8 小时前
扣子3.0测评:我让 Codex 和 Claude Code 住同一个桌面,结果它们打架了!
人工智能·开源·代码规范
Token炼金师8 小时前
IP-Adapter:解耦交叉注意力如何让扩散模型看见图像
人工智能
Bigfish_coding8 小时前
前端转agent-【python】-11 LangGraph 高级特性:时间旅行与人工介入
人工智能
Token炼金师8 小时前
从safetensors到像素:ComfyUI Checkpoint加载机制的底层拆解
人工智能
AI闲人8 小时前
AI 写代码越来越快,为什么 Code Review 反而更慢了?
人工智能·code review·ai 编程
武子康9 小时前
调查研究-202 SGLang 深度解析:为什么大模型推理框架不只是“把模型跑起来“
人工智能·openai·agent