当前位置: 首页 > java >正文

NLP:初识RNN模型(概念、分类、作用)

本文目录:

  • 一、RNN相关概念
  • 二、RNN模型的基本运作
  • 三、RNN的分类
    • (一)根据输入和输出的结构分类
      • 1. N vs N - RNN
      • 2. N vs 1 - RNN
      • 3. 1 vs N - RNN
      • 4. N vs M - RNN
    • (二)根据RNN的内部构造分类
      • 1.传统RNN :简单时间序列预测(如股票价格短期趋势)。
      • 2.LSTM 长短期记忆网络):机器翻译、语音识别(需长程依赖的任务)。
      • 3. Bi-LSTM(双向LSTM) :命名实体识别(NER)、情感分析。
      • 4. GRU (门控循环单元):文本生成、视频帧预测。
      • 5. Bi-GRU(双向GRU):实时性要求较高的任务(如在线评论情感分析)。
  • 附赠1:(N vs N、 N vs 1、 1 vs N 、N vs M )RNN对比
  • 附赠2:(传统RNN 、 LSTM 、 Bi-LSTM 、 GRU 、 Bi-GRU)RNN对比

前言:前面几篇文章讲解了NLP数据的基本处理,从这篇文章开始做NLP相关模型的普及。。。

首先普及RNN模型

一、RNN相关概念

RNN(Recurrent Neural Network), 中文称作循环神经网络, 它一般以序列数据(即数值与所在位置均包含重要信息的数据,如时间序列、文本、语音等)为输入, 通过网络内部的结构设计有效捕捉序列之间的关系特征, 一般也是以序列形式进行输出。

其核心特点是具有记忆能力,能够利用前一时刻的隐藏状态影响当前时刻的输出,从而捕捉序列中的动态信息。

一般单层神经网络结构:
在这里插入图片描述

RNN单层网络结构:

在这里插入图片描述
以时间步对RNN进行展开后的单层网络结构:
在这里插入图片描述

RNN的优缺点:

在这里插入图片描述

二、RNN模型的基本运作

RNN常用于NLP的文本分类、情感分析、 意图识别等任务。

下面我们将以一个用户意图识别的例子进行简单的分析:
在这里插入图片描述
第一步: 用户输入了"What time is it ?", 我们首先对它进行基本的分词, 因为RNN是按照顺序工作的, 每次只接收一个单词进行处理。
在这里插入图片描述
第二步: 首先将单词"What"输送给RNN, 它将产生一个隐层输出O1。
在这里插入图片描述

第三步: 继续将单词"time"输送给RNN, 但此时RNN不仅仅利用"time"来产生输出O2, 还会使用来自上一层隐层输出O1作为输入信息。

在这里插入图片描述

第四步: 重复这样的步骤, 直到处理完所有的单词。

在这里插入图片描述
第五步: 最后,将隐层输出O5经过处理来解析用户意图。
在这里插入图片描述

三、RNN的分类

这里我们将从两个角度对RNN模型进行分类. 第一个角度是输入和输出的结构, 第二个角度是RNN的内部构造。

(一)根据输入和输出的结构分类

1. N vs N - RNN

在这里插入图片描述

在这里插入图片描述

2. N vs 1 - RNN

在这里插入图片描述

在这里插入图片描述

3. 1 vs N - RNN

在这里插入图片描述
在这里插入图片描述

4. N vs M - RNN

在这里插入图片描述
在这里插入图片描述

(二)根据RNN的内部构造分类

1.传统RNN :简单时间序列预测(如股票价格短期趋势)。

在这里插入图片描述

2.LSTM 长短期记忆网络):机器翻译、语音识别(需长程依赖的任务)。

在这里插入图片描述

3. Bi-LSTM(双向LSTM) :命名实体识别(NER)、情感分析。

在这里插入图片描述

4. GRU (门控循环单元):文本生成、视频帧预测。

在这里插入图片描述

5. Bi-GRU(双向GRU):实时性要求较高的任务(如在线评论情感分析)。

在这里插入图片描述

重点是传统RNN、LSTM和GRU。

文章的最后~

附赠1:(N vs N、 N vs 1、 1 vs N 、N vs M )RNN对比

在这里插入图片描述

附赠2:(传统RNN 、 LSTM 、 Bi-LSTM 、 GRU 、 Bi-GRU)RNN对比

在这里插入图片描述

今天的分享到此结束。

http://www.xdnf.cn/news/14946.html

相关文章:

  • 从救火到赋能:运维的职责演进与云原生时代的未来图景
  • day10-Redis面试篇
  • SAP采购管理系统替代选谁?8Manage SRM全面优势测评与深度对比
  • Rust与人工智能(AI)技术
  • ✍️ Python 批量设置 Word 文档多级字体样式(标题/正文/名称/小节)
  • 【LeetCode 热题 100】136. 只出现一次的数字——异或
  • Pycharm 报错 Environment location directory is not empty 如何解决
  • Android ttyS2无法打开该如何配置 + ttyS0和ttyS1可以
  • 第1章 Excel界面环境与基础操作指南
  • springBoot使用XWPFDocument 和 LoopRowTableRenderPolicy 两种方式填充数据到word模版中
  • IT系统安全刚需:绝缘故障定位系统
  • 掌握PDF转CAD技巧,提升工程设计效率
  • iframe 的同源限制与反爬机制的冲突
  • [C语言初阶]操作符
  • HTML + CSS + JavaScript
  • uniapp+vue3+ts项目:实现小程序文件下载、预览、进度监听(含项目、案例、插件)
  • 奇异值分解(singular value decomposition,SVD)
  • RNN及其变体的概念和案例
  • 【UE5】虚幻引擎的运行逻辑
  • 【数据结构】二叉树
  • 广度优先与深度优先遍历核心逻辑理解及实践
  • qt-C++笔记之setCentralWidget的使用
  • IoTDB:专为物联网场景设计的高性能时序数据库
  • EfficientVMamba: Atrous Selective Scan for Light Weight Visual Mamba论文精读(逐段解析)
  • 跨境ERP系统
  • Java常用加密算法详解与实战代码 - 附可直接运行的测试示例
  • Swift 解 LeetCode 321:拼接两个数组中的最大数,贪心 + 合并全解析
  • 【适合 Java 工程师的 AI 转型方向】
  • 17-C#的socket通信TCP-1
  • 【论文阅读】CogVideoX: Text-to-Video Diffusion Models with An Expert Transformer