尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

ResNet网络

ResNet网络
📅 发布时间:2026/6/20 11:59:36

ResNet网络

一.手写ResNet网络

(1)对于残差块有两种:

1.有1*1卷积层

Y=Y+conv_1x1(X)

2.无1*1卷积层

Y=Y+X

image

(2)整体ResNet架构

image

import torch
from d2l import torch as d2l
from torch import nn
from torch.nn import functional as F
#1.单个ResNet块(残差块)
class Residual(nn.Module):#每个残差快包含两个卷积层def __init__(self,in_chanels,out_chanels,use_1x1convd=False,strides=1):super().__init__()if use_1x1convd==True:#用了1*1卷积层self.conv1x1=nn.Conv2d(in_chanels,out_chanels,1,stride=strides)else:self.conv1x1 =None#没用1*1卷积层#卷积层self.convd1=nn.Conv2d(in_chanels,out_chanels,3,padding=1,stride=strides)self.convd2=nn.Conv2d(out_chanels,out_chanels,3,padding=1)#批量归一化层self.bn1=nn.BatchNorm2d(out_chanels)self.bn2=nn.BatchNorm2d(out_chanels)def forward(self,X):#前向函数Y=F.relu(self.bn1(self.convd1(X)))Y=self.bn2(self.convd2(Y))if self.conv1x1 is not None:X=self.conv1x1(X)Y=Y+Xreturn F.relu(Y)
#ResNet网络构造(有5个stage)
b1=nn.Sequential(nn.Conv2d(1,64,7,2,3),nn.BatchNorm2d(64),nn.ReLU(),nn.MaxPool2d(3,2,1)
)
#多个残差块连接
def resnet_block(in_chanels,outchanels,num_residuals,first_block=False):#残差块数blk=[]for i in range(num_residuals):if i==0 and first_block==False:#通道数*2,高宽减半blk.append(Residual(in_chanels,outchanels,use_1x1convd=True,strides=2))else:blk.append(Residual(outchanels,outchanels))#通道数不变,高宽不变return blk
b2=nn.Sequential(*resnet_block(64,64,2,first_block=True)#通道数不变,高宽不变
)
#下面几步的第一块都要通道数*2
b3=nn.Sequential(*resnet_block(64,128,2)
)
b4=nn.Sequential(*resnet_block(128,256,2 )
)
b5=nn.Sequential(*resnet_block(256,512,2)
)
net=nn.Sequential(b1,b2,b3,b4,b5,nn.AdaptiveAvgPool2d((1,1)),#表示输出特征图的空间尺寸为 1x1(即高 = 1,宽 = 1)。例如:若输入是 (512, 7, 7)(通道数 = 512,高 = 7,宽 = 7),经过该层后会输出 (512, 1, 1)。若输入是 (512, 14, 14),输出仍为 (512, 1, 1)。nn.Flatten(),nn.Linear(512,10)
)
X=torch.rand((1,1,224,224))
for layer in net:X=layer(X)print(layer.__class__.__name__,X.shape)

 

相关新闻

  • 079_尚硅谷_双分支基本使用
  • nextcloud安装部署与升级
  • 在运维工作中,在k8s集群使用命令查看etcd集群状态

最新新闻

  • 2026年大平层装修深度测评:如何为你的改善型住宅匹配最佳方案? - 速递信息
  • ARM Cortex-M4微控制器架构解析:从内核到低功耗设计实战
  • 肇庆黄金回收实测六家靠谱老店盘点 - 余生黄金回收
  • 从高危RCE漏洞到POC分析:实战环境搭建与防御体系构建
  • 2026年6月最新劳力士中国官方售后服务地址与客服电话网点列表 - 劳力士服务中心
  • 合肥中科信息工程学校 2026 秋季招生全解析,附官方正规报名入口 - 辛云教育资讯

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号