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

python打卡day49@浙大疏锦行

知识点回顾:

  1. 通道注意力模块复习
  2. 空间注意力模块
  3. CBAM的定义

作业:尝试对今天的模型检查参数数目,并用tensorboard查看训练过程

一、通道注意力模块复习 & CBAM实现

import torch
import torch.nn as nnclass CBAM(nn.Module):def __init__(self, channels, reduction=16):super().__init__()# 通道注意力self.channel_attention = nn.Sequential(nn.AdaptiveAvgPool2d(1),nn.Conv2d(channels, channels//reduction, 1),nn.ReLU(),nn.Conv2d(channels//reduction, channels, 1),nn.Sigmoid())# 空间注意力self.spatial_attention = nn.Sequential(nn.Conv2d(2, 1, 7, padding=3),nn.Sigmoid())def forward(self, x):# 通道注意力ca = self.channel_attention(x)x = x * ca# 空间注意力sa = torch.cat([torch.max(x,1)[0].unsqueeze(1), torch.mean(x,1).unsqueeze(1)], dim=1)sa = self.spatial_attention(sa)return x * sa# 在ResNet中插入CBAM
model = resnet18(pretrained=True)
model.layer1[0].add_module("cbam", CBAM(64))

二、参数统计方法

from torchsummary import summary# 检查模型参数
summary(model.to(Config.DEVICE), (3, 224, 224))

三、TensorBoard监控增强

# 在训练循环中添加
writer.add_scalar('Loss/train', running_loss/100, epoch*len(trainloader)+i)
writer.add_scalar('Accuracy/test', accuracy, epoch)# 启动TensorBoard
# 在命令行中运行:tensorboard --logdir=runs

关键点说明:

1. CBAM模块包含通道和空间注意力分支
2. 使用summary函数可显示参数量
3. TensorBoard记录需保持writer实例的持续使用

 

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

相关文章:

  • 欢乐熊大话蓝牙知识17:多连接 BLE 怎么设计服务不会乱?分层思维来救场!
  • C#中用于控制自定义特性(Attribute)
  • 【Dify】基于 Agent 实现热门新闻生成助手
  • 【教程】矩形重叠检测 -- 分离轴定理的应用
  • Vue 插槽(Slot)用法详解
  • UFW防火墙安全指南
  • 【算法-BFS实现FloodFill算法】使用BFS实现FloodFill算法:高效识别连通块并进行图像填充
  • 时间复杂度和算法选择
  • WinUI3开发_使用mica效果
  • vitepress添加图片放大功能
  • 基于2.4G功能的使用
  • encodeURIComponent和decodeURIComponent
  • 21-Oracle 23 ai-Automatic SQL Plan Management(SPM)
  • 多元隐函数 偏导公式法 (显示变化 + 隐式变化)
  • ABAP设计模式之---“Tell, Don’t Ask原则”
  • STL 1 容器
  • 基于生态系统服务(InVEST模型)的人类活动、重大工程生态成效评估、论文写作
  • 12.找到字符串中所有字母异位词
  • Oracle查询表空间大小
  • vue的<router-link>的to里面的query和params的区别
  • pocketflow库实现guardrail
  • Nginx server_name 配置说明
  • Qt插件化编程的全面解析(QPluginLoader)
  • 微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
  • 云防火墙(安全组)配置指南:从入门到精通端口开放 (2025)
  • OCR、图像分类与目标检测
  • 雷达RCS计算中的旋转矩阵
  • 在Ubuntu上利用loongarch64交叉编译工具编译opencv4.4.0
  • 【排错】ollama报错unable to load model
  • 【知识点】第8章:程序设计方法论