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

河南郑州网站建设杯子软文营销300字

河南郑州网站建设,杯子软文营销300字,吉林省软环境建设网站,wordpress设置爬虫页面—— 25.3.16 一、残差神经网络的核心思想 ​残差映射:传统神经网络直接学习输入到输出的复杂映射 H(x),而残差网络改为学习残差函数 F(x)H(x)−x,最终输出为 yF(x)x ,这种设计使得深层网络即使无法学习有效特征,也能通…

                                                                —— 25.3.16

一、残差神经网络的核心思想

  1. 残差映射:传统神经网络直接学习输入到输出的复杂映射 H(x),而残差网络改为学习残差函数 F(x)=H(x)−x,最终输出为 y=F(x)+x ,这种设计使得深层网络即使无法学习有效特征,也能通过恒等映射 x 保持性能不退化。

  2. 跳跃连接(Shortcut Connection)​
    在残差块中,输入通过跨层连接直接传递到输出端,与经过卷积层、激活函数后的结果相加。这种设计为梯度提供了“直达路径”,缓解了反向传播中的梯度消失问题

二、残差块的设计

1.BasicBlock

  • 含 ​两个 3×3 卷积层,每层后接批量归一化(BatchNorm)和 ReLU 激活函数
  • 输入通过跳跃连接直接与第二个卷积层的输出相加,再经过一次 ReLU 激活
class BasicBlock(nn.Module):def __init__(self, in_channels, out_channels, stride=1):super().__init__()self.conv1 = nn.Conv2d(in_channels, out_channels, kernel_size=3, stride=stride, padding=1)self.bn1 = nn.BatchNorm2d(out_channels)self.conv2 = nn.Conv2d(out_channels, out_channels, kernel_size=3, padding=1)self.bn2 = nn.BatchNorm2d(out_channels)self.shortcut = nn.Identity()  # 恒等映射(输入输出通道相同时)if stride != 1 or in_channels != out_channels:self.shortcut = nn.Sequential(nn.Conv2d(in_channels, out_channels, kernel_size=1, stride=stride),nn.BatchNorm2d(out_channels))def forward(self, x):out = F.relu(self.bn1(self.conv1(x)))out = self.bn2(self.conv2(out))out += self.shortcut(x)  # 跳跃连接return F.relu(out)

2.Bottleneck

  • 使用 ​1×1→3×3→1×1 的卷积组合,通过降维和升维减少计算量
  • 典型应用于 ResNet-50/101/152 等深层变体

三、残差网络如何解决梯度消失

1.​梯度传播公式

根据链式法则,残差块的梯度为:

即使趋近于零,梯度仍可通过恒等项 1 有效传播

2.实际效果

跳跃连接使得反向传播时梯度可直接回传到浅层,避免指数级衰减实验表明,ResNet-152(152层)的训练误差低于普通 CNN 的 20 层网络

3.代码示例

import torch
import torch.nn as nn
import torch.nn.functional as Fclass ResNet18(nn.Module):def __init__(self, num_classes=10):super().__init__()self.conv1 = nn.Conv2d(3, 64, kernel_size=7, stride=2, padding=3)self.bn1 = nn.BatchNorm2d(64)self.maxpool = nn.MaxPool2d(kernel_size=3, stride=2, padding=1)# 残差块组self.layer1 = self._make_layer(64, 64, stride=1, num_blocks=2)self.layer2 = self._make_layer(64, 128, stride=2, num_blocks=2)self.layer3 = self._make_layer(128, 256, stride=2, num_blocks=2)self.layer4 = self._make_layer(256, 512, stride=2, num_blocks=2)self.avgpool = nn.AdaptiveAvgPool2d((1, 1))self.fc = nn.Linear(512, num_classes)def _make_layer(self, in_channels, out_channels, stride, num_blocks):layers = [BasicBlock(in_channels, out_channels, stride)]for _ in range(num_blocks-1):layers.append(BasicBlock(out_channels, out_channels, stride=1))return nn.Sequential(*layers)def forward(self, x):x = F.relu(self.bn1(self.conv1(x)))  # 初始卷积层x = self.maxpool(x)x = self.layer1(x)  # 4组残差块x = self.layer2(x)x = self.layer3(x)x = self.layer4(x)x = self.avgpool(x)  # 全局平均池化x = torch.flatten(x, 1)x = self.fc(x)return x# 使用示例
model = ResNet18(num_classes=1000)
input_tensor = torch.randn(1, 3, 224, 224)
output = model(input_tensor)
print(output.shape)  # torch.Size([1, 1000])

http://www.dtcms.com/wzjs/208634.html

相关文章:

  • 龙岩做网站苏州百度推广公司
  • 网站建设案例上海博华国际展览seo网站推广方式
  • eclipse可以做网站吗seo网站设计工具
  • 重庆九龙快报简述seo的基本步骤
  • 2019年怎么做网站国际新闻今天
  • 网站制作苏州企业百度爱采购关键词优化
  • 网站警察备案中国搜索
  • 郑州网站建设推广渠道安卓aso
  • 北京论坛网站建设网络推广外包注意哪些
  • 黑龙江建设网站万网注册域名
  • 如何用手机设计房子装修图天津seo优化公司哪家好
  • 济南网站建设求职简历天津seo诊断
  • 高仿做的最好的网站软文发稿公司
  • 百度云做网站有优势吗seo 0xu
  • ftp怎么连接网站优化大师app下载
  • 深圳做营销网站制作百度关键词刷搜索量
  • 全网营销实例seo外贸网站制作
  • 杭州公司注销流程及费用seo去哪里学
  • 青岛网站设计系统2022小说排行榜百度风云榜
  • 做外贸登录国外网站广告联盟平台排名
  • 汕头网站建设公司有哪些爱站网关键词挖掘工具站长工具
  • 进贤城乡规划建设局网站足球比赛直播2021欧冠决赛
  • 建设信用卡网站登录学校网站建设
  • 中国和住房城乡建设部网站百度app下载官方免费下载最新版
  • 济宁建设工程信息网站东莞seo优化
  • 网站开发用什么编辑器好点百度统计代码
  • wordpress 简码插件搜索引擎优化的定义是什么
  • 重庆璧山网站建设长沙网站提升排名
  • 网站模板大全下载酒店如何进行网络营销
  • 网站开发 工作量评估百度网盘app下载安装手机版