计算机视觉CS231n学习(5)

循环神经网络 RNN

recurrent neural networks

  1. RNN序列处理能力(RNN核心作用)

    RNN处理序列数据,相比“Vanilla”神经网络(仅支持一对一映射),RNN支持多种序列映射模式:

    1. 一对一:传统分类
    2. 一对多:如图像captioning:图像→文字序列
    3. 多对一:如情感分析:文字序列→情感标签
    4. 多对多:如机器翻译:文字序列→文字序列
    5. 时序多对多:视频帧分类
  2. RNN非序列数据的序列处理

    例如通过瞥视序列分类图像,或逐部分生成图像

  3. RNN的数学定义与计算图

    1. 前向传播公式

      状态更新:

      ht:t时刻的隐藏状态;xt:t时刻的输入
      ht=fw(ht−1,xt) h_t = f_w(h_{t-1},x_t) ht=fw(ht1,xt)
      vanilla RNN具体公式:
      ht=tanh(Whhht−1+Wxhxt),输出yt=Whyht h_t = tanh(W_{hh}h_{t-1}+W_{xh}x_t),输出y_t = W_{hy}ht ht=tanh(Whhht1+Wxhxt),输出yt=Whyht

    2. 计算图结构

      时间步共享参数W,隐藏状态ht依赖于前一时刻ht-1,形成循环结构

      不同映射模式的计算图:

      1. 多对多:每个时间步输出
      2. 多对一:最后时间步输出
      3. 一对多:单输入生成序列
    3. 序列到序列模型 Sequence to Sequence模型

      由 多对一编码器(将输入序列编码为向量)和 一对多解码器(从向量生成输出序列)组成,用于机器翻译等任务

  4. RNN反向传播

    1. 通过时间的反向传播(BPTT):前向计算整个序列的损失后(每个时间步loss的和),反向传播梯度至所有时间步,更新共享参数
    2. 截断BPTT:将长序列分割为子序列,仅在子序列内反向传播,避免计算量过大,同时保留隐藏状态的时序传递
  5. RNN的可解释性分析

    通过可视化RNN隐藏单元,发现部分单元具有特定功能:

    引号检测单元:对引号内文本敏感

    行位置敏感单元:跟踪文本在句中的位置

    代码深度单元:跟踪代码块嵌套深度

  6. 图像captioning与注意力机制

    1. 图像captioning基本框架

      结合CNN(提取图像特征)和RNN(生成文字序列),CNN输出图像特征向量,去掉最后两层全连接层,作为RNN的初始输入,RNN逐步生成序列

    2. 注意力机制

      RNN生成每个单词时,会关注图像的不同区域(比如生成straw时关注帽子的straw部分),通过加权特征向量Z=Σpivi实现(pi为注意力权重,vi为图像特征)

  7. 视觉问答 VQA

    任务定义:给定图像和问题,RNN结合CNN特征和问题序列,输出答案

    注意力机制应用:RNN在处理问题时,会关注图像中与问题相关的区域

  8. RNN的梯度问题与LSTM

    1. vanilla RNN的梯度问题

      反向传播时,梯度需要经过多个矩阵乘法(W的连乘),若W的最大奇异值>1,梯度爆炸;若W的最小奇异值<1,梯度消失,导致长序列依赖难以学习

      解决方法:梯度裁剪(梯度范数超过阈值时缩放)缓解爆炸;改进架构(如LSTM)缓解消失

    2. LSTM:长短期记忆网络

      核心公式:通过输入门(i),遗忘门(f),输出门(o),门之门(g:写多少到细胞里)和细胞状态(c)控制信息流动:
      在这里插入图片描述

      梯度优势:细胞状态ct通过元素乘法传递梯度(无矩阵连乘),实现”不间断梯度流“,类似ResNet的残差连接

  9. RNN变体 GRU

    1. GRU(门控循环单元)

      简化LSTM,合并输入门和遗忘门为更新门(z),保留重置门(r):

      在这里插入图片描述

      在这里插入图片描述

    2. 其他RNN变体:如MUT1/2/3等,通过调整门控机制优化性能

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/92427.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/92427.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Boot Redis 缓存完全指南

Spring Boot Redis 缓存完全指南 1. 项目依赖配置 1.1 Maven依赖 <dependencies><!-- Spring Boot Redis --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId><…

八股——WebSocket

文章目录1、 什么是 WebSocket&#xff1f;与 Http 协议的区别是什么&#xff1f;2、 Http 是如何升级为 WebSocket 的&#xff1f;3、 为什么 WebSocket 可以进行全双工模式的消息传输&#xff0c;而 Http 不可以&#xff1f;4、 什么是 TCP 的沾包和拆包&#xff1f;5、 WebS…

Mysql 如何使用 binlog 日志回滚操作失误的数据

文章目录一、背景二、准备测试数据1. 创建测试表2. 创建测试数据三、模拟误操作四、数据回滚&#xff08;一&#xff09;方案一&#xff1a;云数据库恢复&#xff08;二&#xff09;方案二&#xff1a;手动恢复1. 查询 binlog 日志2. 找到删除语句&#xff0c;手动还原为插入语…

wodpress结构化数据对SEO的作用

在 WordPress 网站中&#xff0c;结构化数据对 SEO 的作用主要体现在以下几个方面&#xff1a; 1. 提升搜索结果的可见性 结构化数据能够帮助搜索引擎更好地理解网页内容&#xff0c;从而以更精准的方式展示搜索结果。通过添加结构化数据&#xff0c;网页可以在搜索结果中显示…

讲一讲@ImportResource

题目详细答案ImportResource是 Spring 框架中的一个注解&#xff0c;用于将传统的 XML 配置文件导入到基于 Java 配置的 Spring 应用程序中。它允许开发者在使用 Java 配置的同时&#xff0c;继续利用现有的 XML 配置文件。这样可以逐步迁移旧的 XML 配置&#xff0c;或者在某些…

解决 Nginx 反代中 proxy_ssl_name 环境变量失效问题:网页能打开但登录失败

前言&#xff1a;在现代企业架构中&#xff0c;多域名反向代理是实现业务隔离、品牌独立的常见方案。然而&#xff0c;看似简单的Nginx配置背后&#xff0c;隐藏着与TLS协议、后端认证逻辑深度绑定的细节陷阱。本文将从原理到实践&#xff0c;详解为何在多域名场景下&#xff0…

三步完成,A100本地vLLM部署gpt-oss,并启动远程可访问api

A100本地vLLM部署gpt-oss&#xff0c;并启动远程可访问api GPT-oss试用 gpt-oss有两个原生配置是目前&#xff08;2025-8-8&#xff09;Ampere系列显卡不支持的&#xff0c;分别是默认的MXFP4量化&#xff0c;以及Flash-attn V3。官方给出的vllm教程也是默认使用的是H系列显卡…

【华为机试】63. 不同路径 II

文章目录63. 不同路径 II题目描述示例 1&#xff1a;示例 2&#xff1a;提示&#xff1a;解题思路核心思想&#xff1a;动态规划&#xff08;避开障碍&#xff09;算法流程复杂度分析边界与细节方法对比代码实现Go 实现&#xff08;含二维DP / 一维DP / 记忆化&#xff09;测试…

C++ 模拟实现 map 和 set:掌握核心数据结构

C 模拟实现 map 和 set&#xff1a;掌握核心数据结构 文章目录C 模拟实现 map 和 set&#xff1a;掌握核心数据结构一、set 和 map 的结构1.1 set的结构1.2 map的结构二、对红黑树的改造2.1 改造红黑树的节点2.2 改造红黑树2.2.1 仿函数的使用2.2.2 插入函数的改造2.2.3 删除函…

根据ASTM D4169-23e1标准,如何选择合适的流通周期进行测试?

根据ASTM D4169-23e1标准及行业实践&#xff0c;选择流通周期&#xff08;DC&#xff09;需综合以下因素&#xff1a;一、核心选择依据‌产品属性与包装形式‌‌重量体积‌&#xff1a;轻小包裹&#xff08;<4.53kg且<0.056m&#xff09;适用DC2/3/4/6/9/13-17等周期&…

MySQL的触发器:

目录 触发器的概念&#xff1a; 创建触发器&#xff1a; 查看触发器&#xff1a; 查看当前数据库的所有触发器的定义&#xff1a; 查看当前数据中某个触发器的定义&#xff1a; 从系统information_schema的TRIGGERS表中查询"salary_check_trigger"触发器的信息…

基于ubuntu搭建gitlab

原文地址&#xff1a;基于ubuntu搭建gitlab – 无敌牛 欢迎参观我的网站&#xff1a;无敌牛 – 技术/著作/典籍/分享等 之前介绍了一个使用 git openssh-server 搭建一个极简 git 库的方法&#xff0c;感兴趣可以查看往期文章&#xff1a;手搓一个极简远端git库 – 无敌牛 。…

测试GO前沿实验室:为水系电池研究提供多维度表征解决方案

测试GO前沿实验室&#xff1a;为水系电池研究提供多维度表征解决方案随着全球能源转型加速&#xff0c;水系电池因其高安全性、低成本和环境友好特性&#xff0c;成为下一代储能技术的重要发展方向。测试狗前沿实验室针对水系电池研发中的关键科学问题&#xff0c;整合先进表征…

Spring Boot 中 YAML 配置文件详解

Spring Boot 中 YAML 配置文件详解 在 Spring Boot 项目中&#xff0c;配置文件是不可或缺的一部分&#xff0c;用于自定义应用行为、覆盖默认设置。除了传统的 properties 文件&#xff0c;Spring Boot 对 YAML&#xff08;YAML Ain’t Markup Language&#xff09;格式提供了…

Milvus安装可视化工具,attu,保姆级

安装包链接&#xff1a;GitHub - zilliztech/attu: Web UI for Milvus Vector Databasehttps://github.com/zilliztech/attu?tabreadme-ov-file 下滑 举例&#xff1a;windows&#xff1a;下载安装&#xff0c;然后就可以连接了&#xff08;安装完打开后如果需要输入用户名密码…

避免“卡脖子”!如何减少内存I/O延迟对程序的影响?

单来说&#xff0c;内存 IO 就像是计算机的 “数据高速公路”&#xff0c;负责在内存和其他设备&#xff08;如硬盘、CPU 等&#xff09;之间传输数据。它的速度和效率直接影响着计算机系统的整体性能。 你有没有想过&#xff0c;当你点击电脑上的一个应用程序&#xff0c;它是…

V4L2摄像头采集 + WiFi实时传输实战全流程

&#x1f4d6; 推荐阅读&#xff1a;《Yocto项目实战教程:高效定制嵌入式Linux系统》 &#x1f3a5; 更多学习视频请关注 B 站&#xff1a;嵌入式Jerry V4L2摄像头采集 WiFi实时传输实战全流程 1. 实战场景概述 目标&#xff1a; 嵌入式设备&#xff08;如RK3588/正点原子开发…

Java 之 设计模式

1.单例模式1. ​​饿汉式&#xff08;Eager Initialization&#xff09;​​​​核心原理​​&#xff1a;类加载时立即创建实例&#xff0c;通过静态变量直接初始化。​​代码示例​​&#xff1a;public class Singleton {private static final Singleton INSTANCE new Sing…

[激光原理与应用-185]:光学器件 - BBO、LBO、CLBO晶体的全面比较

一、相同点非线性光学晶体属性BBO、LBO、CLBO均为非中心对称晶体&#xff0c;具备非线性光学效应&#xff0c;广泛应用于激光频率转换&#xff08;如倍频、三倍频、和频、差频&#xff09;、光学参量振荡&#xff08;OPO&#xff09;及电光调制等领域。宽透光范围三者均覆盖紫外…

Android APN加载耗时优化可行性分析

背景 根据Android系统底层机制和行业实践,本文讨论 APN 加载耗时从4.2s降至0.8s的数据合理性和技术可行性,需结合具体优化手段和硬件环境综合分析。 以下是关键判断依据及行业参考: ⚙️ 一、APN加载耗时基准参考 未优化场景的典型耗时 首次开机或重置后:APN需从apns-con…