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

python打卡day40@浙大疏锦行

知识点回顾:

  1. 彩色和灰度图片测试和训练的规范写法:封装在函数中
  2. 展平操作:除第一个维度batchsize外全部展平
  3. dropout操作:训练阶段随机丢弃神经元,测试阶段eval模式关闭dropout

一、彩色/灰度图片处理规范写法

def process_image(image, is_grayscale=False):"""统一处理彩色/灰度图像"""if is_grayscale:# 灰度图处理 (H,W) -> (1,H,W)image = image.unsqueeze(0) if len(image.shape) == 2 else imageelse:# 彩色图处理 (H,W,C) -> (C,H,W)if len(image.shape) == 3 and image.shape[-1] == 3:image = image.permute(2, 0, 1)return image.float() / 255.0  # 归一化

 二、展平操作规范

class Net(nn.Module):def forward(self, x):# 保留batch维度,其余展平x = x.view(x.size(0), -1)  # (batch, C*H*W)return self.fc(x)

三、Dropout训练/测试模式规范

model = nn.Sequential(nn.Linear(784, 256),nn.Dropout(0.5),  # 训练时50%概率丢弃nn.ReLU(),nn.Linear(256, 10)
)# 训练阶段
model.train()  # 启用dropout
output = model(inputs)# 测试阶段
model.eval()  # 关闭dropout
with torch.no_grad():test_output = model(test_inputs)

关键点说明:

1. 图像处理函数应自动适配输入维度
2. 展平操作必须保留batch维度
3. dropout的行为通过 train() / eval() 自动切换
4. 测试阶段建议配合 torch.no_grad() 减少内存消耗

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

相关文章:

  • 汽车高速通信的EMC挑战
  • Langchain4j Function Calling (5)
  • 关于ffplay在macos上运行奔溃的问题
  • 嵌入式开发学习日志(linux系统编程--进程(4)——线程锁)Day30
  • Google car key:安全、便捷的汽车解锁新选择
  • day40打卡
  • Netty 实战篇:为 Netty RPC 框架引入调用链追踪,实现链路透明化
  • 特伦斯 S75 电钢琴:奏响音乐新时代的华章
  • mongodb集群之分片集群
  • Ubuntu 22.04 系统下 Docker 安装与配置全指南
  • Android JNI开发
  • 大语言模型的技术原理与应用前景:从Transformer到ChatGPT
  • 技术原理简析:卫星遥感如何感知水体环境?
  • 基于Matlab实现卫星轨道模拟仿真
  • 云计算Linux Rocky day02(安装Linux系统、设备表示方式、Linux基本操作)
  • vue2 + webpack 老项目升级 node v22 + vite + vue2 实战全记录
  • 【OpenSearch】高性能 OpenSearch 数据导入
  • OpenTelemetry × Elastic Observability 系列(一):整体架构介绍
  • rm删除到回收站
  • 【设计模式】策略模式
  • 【软件】在 macOS 上安装 MySQL
  • Python学习(5) ----- Python的JSON处理
  • 分布式存储技术全景解析:从架构演进到场景实践
  • 私有云大数据部署:从开发到生产(Docker、K8s、HDFS/Flink on K8s)
  • docker部署ELK,ES开启安全认证
  • 基于RK3568/RK3588/全志H3/飞腾芯片/音视频通话程序/语音对讲/视频对讲/实时性好/极低延迟
  • 深入链表剖析:从原理到 C 语言实现,涵盖单向、双向及循环链表全解析
  • vue3 项目配置多语言支持,如何从服务端拿多语言配置
  • 智能柜I立控信息I产品介绍
  • ArcGIS Pro 3.4 二次开发 - 布局