大白话介绍循环神经网络

循环神经网络实质为递归式的网络,它在处理时序任务表现出优良的效果,毕竟递归本来就是一步套一步的向下进行,而自然语言处理任务中涉及的文本天然满足这种时序性,比如我们写字就是从左到右一步步来的鸭,刚接触深度学习的友友们,可能或多或少也听说过循环神经网络的大名;感觉是个很高大上,高深莫测的东西。搜搜网上的博客,大多数都是直接列出几个公式,简单的复制粘贴一段话术;把初入茅庐的小白看的云里雾里,直接劝退。因此本文尽可能把各个阶段的步骤描述的详尽一些!话不多说,直接先附上公式:

 实质公式其实就这两条,全剧终,网上的教程都是这么说的!显然不能让读者有所信服,好歹也说说各个符号字母都表示什么意思吧。H_t表示了在t时间步,编码器当前的状态,可以理解为截至到当前时间步,信息的聚合状况。比如我们要记忆“今天天气不错”这段信息,当我们从左到右读到“气”的时候,显然我们的大脑已经记忆到当前字为止的所有信息; RNN 通过H_t这种形式便模拟了这一过程。具体来说的话,我们知道其实深度学习往往都是在优化一组参数,而这组参数记忆了我们通过数据学习到的通用信息;后续我们可以直接利用这组参数来进行泛化的表示。在RNN中,包含的参数其实在上述公式都描述了。

W_{xh} :描述了与当前时刻输入信息相关的参数;W_{hh} 描述了与历史信息相关的参数;b_h描述了偏置信息。

这一系列参数要做的事情就是把数据中蕴含的信息存起来。我们再来一次,把公式细致的描述一下,忽略公式中的参数不看,我们知道H_tX_tH_{t-1}有关。其中X_t为当前时间步的输入信息,在“今天天气不错”中指示的是“气”这一信息,H_{t-1}描述了历史信息,指示的是“今天天”这一信息。通过对当前时刻信息和历史信息两部分的聚合,我们便可以得到“今天天气”这一最终信息。在RNN中便是通过各部分向量矩阵的运算得到结果。刚接触的朋友可能回想为什么要通过向量矩阵运算来描述这一过程?其实我们要计算机描述这件记忆的过程,我们总需要一种方式来做吧!再联合数学这种形式,这种形式也水到渠成了。我好像没有解释哈哈!!不过就像是说“井盖为什么是圆的?”如果是方的话,你会问“井盖为什么是方的?”。笔者想说的是,我们不需要对某种形式的描述太钻牛角;我们要做的是记住这种形式,然后去接受它,最后去理解各部分的表述原理;那就满足了我们初阶段的学习咯。

其实到这里RNN的关键点真说完了,同学们可能还会说O_{t}还在那摆着咧,其实它描述的是当前阶段我们要做点什么事,专业描述的话就是下游任务;就是对当前的状态信息做个全连接层完成一个预测的任务;如果想做序列标注,那最后的向量维度就是序列的标注数目;如果想做文本生成,那最后的向量维度就是词表大小。RNN的整体内容其实就H_{t}这个公式的展示。

以上就是RNN的理论介绍,细心的伙伴可能发现,我并没有放RNN的那张图,因为我感觉对于初步的学习,那张图描述的信息流有点乱,不过我最后也放下面了,锦上添花(*^_^*)

+

相关推荐

  1. 大白话【卷积神经网络】工作原理

    2024-02-05 21:46:01       31 阅读
  2. 循环神经网络

    2024-02-05 21:46:01       29 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-05 21:46:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-05 21:46:01       101 阅读
  3. 在Django里面运行非项目文件

    2024-02-05 21:46:01       82 阅读
  4. Python语言-面向对象

    2024-02-05 21:46:01       91 阅读

热门阅读

  1. AtCoder Beginner Contest 339 B.Langton‘s Takahashi【模拟】

    2024-02-05 21:46:01       56 阅读
  2. C语言中递归算法的效率分析

    2024-02-05 21:46:01       54 阅读
  3. termux安装openssh+nginx

    2024-02-05 21:46:01       55 阅读
  4. python实例100第51例:学习使用按位与 & 。

    2024-02-05 21:46:01       47 阅读
  5. 6-5 E. DS树--二叉树高度

    2024-02-05 21:46:01       54 阅读
  6. 设计模式(结构型模式)外观模式

    2024-02-05 21:46:01       49 阅读
  7. 牛客网 AB2.栈的压入、弹出序列

    2024-02-05 21:46:01       55 阅读
  8. 从头开始学python(python基础)

    2024-02-05 21:46:01       48 阅读
  9. C++设计模式-6原则(合)

    2024-02-05 21:46:01       50 阅读
  10. Linux命令基础学习 (2月4日打卡

    2024-02-05 21:46:01       53 阅读