NLP发展及其详解

一、RNN(循环神经网络)

在这里附上一个很好的笔记

零基础入门深度学习(5) - 循环神经网络

RNN(循环神经网络)的结构特点在于其循环单元的设计,这种设计允许网络在处理序列数据时保持对之前信息的记忆。下面详细解释RNN的结构:

  1. 循环单元:RNN的循环单元是网络的核心,它通常是一个简单的神经网络层,比如一个tanh层。这个单元的输入包括当前时刻的输入 ( x_t ) 和上一时刻的隐藏状态 ( h_{t-1} ),然后它输出当前时刻的隐藏状态 ( h_t )。
  2. 隐藏状态:隐藏状态 ( h_t ) 是一个向量,它捕获了到当前时刻为止的序列信息。这个状态被传递到下一个时刻,成为下一时刻循环单元的输入之一。
  3. 输出:每个时刻的隐藏状态可以用于生成输出 ( y_t ),这个输出可以是序列的一个预测,比如下一个词的概率分布。在实际应用中,输出层通常是一个全连接层,它将隐藏状态映射到输出空间。
  4. 参数共享:在RNN中,循环单元的参数在所有时刻是共享的。这意味着无论序列有多长,处理每个时刻的单元都是使用相同的权重。这种参数共享使得RNN能够扩展到不同长度的序列。
  5. 序列处理:RNN按顺序处理序列的每个元素。对于每个时刻 ( t ),网络的输入是当前元素的表示 ( x_t ),然后网络更新隐藏状态 ( h_t ) 并生成输出 ( y_t )。
  6. 灵活性:RNN的结构使其能够处理不同长度的输入序列,这使得它非常适合于语言模型、时间序列预测和其他需要处理可变长度数据的任务。
    在这里插入图片描述

然而,传统的RNN存在一些问题,比如在训练过程中可能出现的梯度消失或梯度爆炸问题,这使得它们难以学习长距离依赖。为了解决这个问题,研究者们提出了更复杂的循环单元结构,如LSTM(长短时记忆网络)和GRU(门控循环单元),这些结构通过引入门控机制来更好地捕捉长距离依赖。
总的来说,RNN的结构使其成为处理序列数据的强大工具,而其变体如LSTM和GRU则进一步增强了其在复杂序列建模任务中的能力。

二、LSTM(长短期记忆递归神经网络)

这里递上两个我参考的文章和笔记
零基础入门深度学习(6) - 长短时记忆网络(LSTM)
LSTM - 长短期记忆递归神经网络 来自知乎作者:Mark

LSTM(长短时记忆网络,Long Short-Term Memory)是一种特殊的RNN(循环神经网络)架构,它能够学习长

相关推荐

  1. HTTP 及其版本详解

    2024-04-29 15:48:01       44 阅读
  2. 自然语言处理(NLP)的发展

    2024-04-29 15:48:01       60 阅读
  3. 白话NLP技术的演进发展

    2024-04-29 15:48:01       34 阅读
  4. NLP - word2vec详解

    2024-04-29 15:48:01       26 阅读

最近更新

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

    2024-04-29 15:48:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-29 15:48:01       101 阅读
  3. 在Django里面运行非项目文件

    2024-04-29 15:48:01       82 阅读
  4. Python语言-面向对象

    2024-04-29 15:48:01       91 阅读

热门阅读

  1. EfficientSam封装API

    2024-04-29 15:48:01       37 阅读
  2. python下常用的图像处理工具

    2024-04-29 15:48:01       35 阅读
  3. C++--模板

    2024-04-29 15:48:01       32 阅读
  4. C语言经典例题-5

    2024-04-29 15:48:01       38 阅读
  5. TCP协议的状态码详解

    2024-04-29 15:48:01       38 阅读
  6. 前端计算机网络基础之DNS协议介绍

    2024-04-29 15:48:01       36 阅读