【深度学习 | ResNet核心思想】残差连接 跳跃连接:让信息自由流动的神奇之道

news2025/1/12 16:11:11

在这里插入图片描述

🤵‍♂️ 个人主页: @AI_magician
📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。
👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!🐱‍🏍
🙋‍♂️声明:本人目前大学就读于大二,研究兴趣方向人工智能&硬件(虽然硬件还没开始玩,但一直很感兴趣!希望大佬带带)

在这里插入图片描述

该文章收录专栏
[✨— 《深入解析机器学习:从原理到应用的全面指南》 —✨]

残差连接 & 跳跃连接 (Skip connection)

跳跃连接指的是将输入数据直接添加到网络某一层输出之上。这种设计使得信息可以更自由地流动,并且保留了原始输入数据中的细节和语义信息。 使信息更容易传播到后面的层次,避免了信息丢失。跳跃连接通常会通过求和操作或拼接操作来实现。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZsRhf9bZ-1691997448878)(classical algorithm.assets/skip-connection.png)]

以图像分类任务为例,假设我们使用卷积神经网络进行特征提取,在每个卷积层后面都加入一个池化层来减小特征图尺寸。然而,池化操作可能导致信息损失。通过添加一个跳跃连接,将原始输入直接与最后一个池化层输出相加或拼接起来,可以保留原始图像中更多的细节和语义信息。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UCy6ExHq-1692606382233)(classical algorithm.assets/dense-block.png)]

如果感兴趣了解更多,建议越多文章:

非常经典的文章《All You Need to Know About Skip Connections》: https://www.analyticsvidhya.com/blog/2021/08/all-you-need-to-know-about-skip-connections/

残差网络(Residual Network),也被称为ResNet,是一种深度神经网络架构,旨在解决梯度消失和训练困难的问题。它的核心思想是通过引入残差块(residual blocks)来构建网络,并通过跳跃连接将输入直接添加到层输出上。

它的核心思想是通过引入残差块(residual blocks)来构建网络,并通过跳跃连接将输入直接添加到层输出上。(残差块就是包含了跳跃连接的block,扑捉偏差(残差))。具体而言,在每个块或子模块内部,输入被加到该块/子模块计算后得到的输出上,并且这两者尺寸必须相同。然后再将此结果送入下一个块/子模块进行处理。

下面是详细解释残差网络的步骤:

  1. 基本结构:每个残差块由两个主要部分组成——主路径和捷径。主路径包含了一系列卷积、批归一化和非线性激活函数等操作,用于学习特征表示。捷径是一个直接连接,将输入数据“跳过”了主路径中的所有操作。

  2. 捷径连接:在传统的卷积神经网络中,信息必须从前向后依次通过每个层进行传递并逐渐轻微地改变。而在残差网络中,捷径连接允许信息更快地流动,在不同层之间形成了短路路径。

  3. 残差学习:对于每个残差块,在主路径内部会发生特征图尺寸缩小或通道数变化等情况。这样可能导致信息丢失或降低模型性能。为了解决这个问题,残差网络采用了跳跃连接将输入直接添加到输出上,使得模型可以学习到相对于期望输出的微小调整。

  4. 深度扩展:残差网络允许非常深的层次堆叠,因为捷径连接提供了一个快速通道来传播梯度和信息。通过增加更多的残差块,网络可以逐渐变得更深,并且在一定程度上能够减少过拟合现象。

  5. 预训练与微调:由于残差网络具有良好的初始化特性在大规模数据集上进行预训练后往往能够获得较好的性能。然后可以使用迁移学习(transfer learning)技术,在其他任务或数据集上进行微调以达到更好的效果。

总结起来,残差网络通过引入捷径连接和利用残差学习机制来改善深层神经网络中的梯度消失、信息流动等问题。这些方法使得网络能够更轻松地训练,并且在图像分类、目标检测和语义分割等计算机视觉任务中取得了显著成果。

写到这,我突然想到那这种反向传播又如何训练呢?

其实ResNet的反向传播和训练过程与其他神经网络相似,只是引入了残差连接~~(多计算了一步~~,具体步骤还是如下

  1. 前向传播:将输入数据通过网络从前到后进行前向传播。每个残差块中包含了多个卷积层、批归一化层和激活函数等操作。捷径连接将输入直接添加到主路径输出上。

  2. 损失计算:在最后一个残差块或全局池化层之后,将得到的特征图作为输入并进行适当的降维操作(例如平均池化)。然后,利用分类器(如全连接层)对提取到的特征进行分类,并计算预测结果与真实标签之间的损失。(似乎都是这样,利用ResNet提取特征,迁移学习后进行分类)

  3. 反向传播:根据损失值,在整个网络中执行反向传播来计算梯度。这样可以确定每个参数对于使损失最小化所起到的作用大小,并且梯度会沿着网络方向回溯以更新权重。

  4. 权重更新:使用优化算法(如随机梯度下降SGD)根据计算出来的梯度来更新所有网络参数(包括主路径和跳跃连接中使用到节点的参数)。其实只是多计算更新了捷径这里多出来的参数并没有多算参数跳跃连接只是添加将数据添加到后面的神经元,总体参数并没有变化。

  5. 迭代训练:重复执行前向传播、损失计算、反向传播和权重更新等步骤,直到达到预设的迭代次数或满足停止条件为止。每个迭代周期称为一个epoch。

在这里插入图片描述

						  🤞到这里,如果还有什么疑问🤞
					🎩欢迎私信博主问题哦,博主会尽自己能力为你解答疑惑的!🎩
					 	 🥳如果对你有帮助,你的赞是对博主最大的支持!!🥳

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

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

相关文章

ms-tpm-20-ref 在linux下编译

1、代码地址, GitHub - microsoft/ms-tpm-20-ref: Reference implementation of the TCG Trusted Platform Module 2.0 specification.Reference implementation of the TCG Trusted Platform Module 2.0 specification. - GitHub - microsoft/ms-tpm-20-ref: Refe…

企业/公司电脑图纸加密软件系统——「天锐绿盾加密软件」

天锐绿盾是一款企业级透明加密软件,旨在保护企业或设计院的图纸文件和电子文档,防止信息泄露和数据安全问题。 ​ 天锐绿盾采用了核心驱动层的透明加密 技术,可以在操作系统层自动对所有需要加密的文档进行加密和解密,用户在使用加…

交换机的基本原理与配置(二)

目录 2. 以太网交换机 2.1 交换机设备简介 2.2交换机的工作原理 2.3交换机接口的双工模式 2. 以太网交换机 下面通过交换机设备简介,交换机的工作原理及交换机接口模式来了解以太网交换机。 2.1 交换机设备简介 交换机的品牌众多,像Cisco公司&#xf…

自动设置服务器全教程

亲爱的爬虫探险家!在网络爬虫的世界里,自动设置代理服务器是一个非常有用的技巧。今天,作为一家代理服务器供应商,我将为你呈上一份轻松实用的教程,帮助你轻松搞定爬虫自动设置代理服务器。 一、为什么需要自动设置代…

华为OD-第K长的连续字母字符串长度

题目描述 给定一个字符串,只包含大写字母,求在包含同一字母的子串中,长度第 k 长的子串的长度,相同字母只取最长的那个子串。 代码实现 # coding:utf-8 # 第K长的连续字母字符串长度 # https://www.nowcoder.com/discuss/353150…

差分走线的要求

1 等长:等长是指两条线的长度要尽量一样长,是为了保证两个差分信号时刻保持相反极性。减少共模分量。 2等宽等距:等宽是指两条信号的走线宽度需要保持一致,等距是指两条线之间的间距要保持不变,保持平行。 对走线要求最…

pytorch下的scatter、sparse安装

知道自己下载的torch配置 import torch print(torch.__version__) print(torch.version.cuda)进入网站,选择自己配置 https://pytorch-geometric.com/whl/下载相应的包 安装 pip install ******.whl

办公网络布线(三)

目录 3.布线施工设计 3.1 宿舍楼布线设计 3.布线施工设计 如图所示为宿舍楼平面图。 3.1 宿舍楼布线设计 前面讲解了布线系统的常识及具体实施的细节,但在实际工作中,作为工程的实施人员往往需要根据甲方提供的建筑平面图图纸给出网络建设方案&#xf…

Commonjs和Es6语法规范的理解

ES6 module和CommonJS到底有什么区别? “ES6 module是编译时加载,输出的是接口,CommonJS运行时加载,加载的是一个对象” 这里的“编译时”是什么意思?和运行时有什么区别?“接口”又是什么意思?…

Oracle-rolling upgrade升级19c

前言: 本文主要描述Oracle11g升19c rolling upgrade升级测试,通过逻辑DGautoupgrade方式实现rolling upgrade,从而达到在较少停机时间内完成Oracle11g升级到19c的目标 升级介绍: 升级技术: rolling upgrade轮询升级,通过采用跨版…

PS gif修改背景颜色(附加图片)

文章目录 问题描述.mp4转换为.gif 解决方案gif更换背景修改背景具体操作第一步第二步第三步第四步第五步第六步 总结 大家好!不知不觉又到周二了,农历:七月七,本来今天可以高高兴兴的度过一天,唉,接到领导布…

强训第38天

选择 D 0作为本地宿主机&#xff0c;127作为内部回送&#xff0c;不予分配 A B C C 存储在浏览器 D A B B D 网络延迟是指从报文开始进入网络到它离开网络之间的时间 编程 红与黑 红与黑__牛客网 #include <iostream> #include <stdexcept> #include <string…

【仿写框架之仿写Tomact】一、详解Tomcat的工作流程

文章目录 1、启动阶段2、监听阶段&#xff1a;3、请求处理阶段&#xff1a;4、发送请求处理后的响应 当涉及到Java Web应用程序的部署和运行&#xff0c;Apache Tomcat无疑是一个备受欢迎的选择。Tomcat作为一个开源的、轻量级的Java Servlet容器和JavaServer Pages (JSP) 容器…

排兵布阵很重要

以正合&#xff0c;以奇胜&#xff0c;排兵布阵很重要 【安志强趣讲《孙子兵法》第17讲】 第五章&#xff1a;势篇 【全文趣讲大白话】 善于打仗&#xff0c;能恰当的分兵&#xff0c;能借势。 【原文】 孙子曰&#xff1a;凡治众如治寡&#xff0c;分数是也&#xff1b;斗众如…

SFL214-100-21-10喷嘴挡板伺服阀

SFL214-100-21-10、SFL214-150-21-15、SFL214-100-32-40、SFL214-100-21-40、SFL216-230-21-40、SFL216-230-32-40采用千式力马达和两级液压放大器结构前置级为无摩撩副的双喷嘴挡板阀性能优良&#xff0c;动态响应高适用于对位置&#xff0c;力和速度进行闭环控制可用作三通阀…

函数的使用-1函数默认参数

在C中&#xff0c;函数的形参列表中的形参是可以有默认值的。 语法&#xff1a; 返回值类型 函数名 &#xff08;参数 默认值&#xff09;{} 1. 如果某个位置参数有默认值&#xff0c;那么从这个位置往后&#xff0c;从左向右&#xff0c;必须都要有默认值 2. 如果函数声明有默…

FPGA实现10G万兆网TCP/IP 协议栈,纯VHDL代码编写,提供服务器和客户端2套工程源码和技术支持

目录 1、前言免责声明 2、我这里已有的以太网方案3、该TCP/IP协议栈性能常规性能支持多节点FPGA资源占用少数据吞吐率高低延时性能 4、TCP/IP 协议栈代码详解代码架构用户接口代码模块级细讲顶层模块PACKET_PARSING_10G模块ARP_10G模块DHCP_SERVER_10G和 DHCP_CLIENT_10G模块IG…

c语言实现双向链表

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、链表的分类1、 单向或者双向链表2、带头结点或者不带头结点的链表3、循环或者非循环链表 二、带头双向循环链表1、链表结点的结构体定义2、链表的初始化3、…

交换机的基本原理与配置(三)

目录 3. 交换机基本配置 3.1 交换机配置前的连接 3.2 Cisco交换机的命令行模式 3.3 交换机的常见命令 3. 交换机基本配置 交换机的基本配置介绍如下。 3.1 交换机配置前的连接 配置一台Cisco交换机的方法有多种&#xff0c;本节介绍通过Console(控制台)接口讲行配置的方式这…