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

购物网站商城软文广告素材

购物网站商城,软文广告素材,广东网广东网站建设,软件开发是怎么开发的啊深度学习中,Debug 是定位并解决代码逻辑错误(如张量维度不匹配)、训练异常(如 Loss 波动)、数据问题(如标签错误)的关键手段,通过打印维度、可视化梯度等方法确保模型正常运行、优化…

深度学习中,Debug 是定位并解决代码逻辑错误(如张量维度不匹配)、训练异常(如 Loss 波动)、数据问题(如标签错误)的关键手段,通过打印维度、可视化梯度等方法确保模型正常运行、优化性能,贯穿开发全流程。

直接上实例以经典错误shape报错为例:

import torch
import torch.nn as nn
import torch.nn.functional as F# 模拟图像数据
x = torch.randn(8, 3, 64, 64)  # [B, C, H, W],batch size = 8# 模拟标签(分类任务)
labels = torch.randint(0, 5, (8,))  # 5 类问题,标签是 [8]# 模型定义
class BuggyNet(nn.Module):def __init__(self):super().__init__()self.conv1 = nn.Conv2d(3, 16, kernel_size=3, padding=1)self.conv2 = nn.Conv2d(16, 32, kernel_size=3, padding=1)self.pool = nn.AdaptiveAvgPool2d((4, 4))  # 变成 [B, 32, 4, 4]self.linear = nn.Linear(32, 5)  # ❌ 故意设置错误 in_featuresdef forward(self, x):x = F.relu(self.conv1(x))        # [B, 16, 64, 64]x = F.relu(self.conv2(x))        # [B, 32, 64, 64]x = self.pool(x)                 # [B, 32, 4, 4]x = self.linear(x)               # ❌ 错误! x 是 4D,Linear 接受 2D 或 3Dreturn xmodel = BuggyNet()
criterion = nn.CrossEntropyLoss()# 前向传播
outputs = model(x)                  # 会报错
loss = criterion(outputs, labels)  # 不会执行到这里

首先设置断点:

然后进行debug右击:

 然后会出现控制台:

会出现变量和变量的信息(shape,值):

然后我们进行单步:

然后变量开始变化,当单步到24行时:

此刻x的shape是(8,32,4,4)但是在这个linear层

self.linear = nn.Linear(32, 5)  # ❌ 故意设置错误 in_features

期望输入是32,不仅维度不相同channel也不相同,所以继续单步会报错:

RuntimeError: mat1 and mat2 shapes cannot be multiplied (1024x4 and 32x5)

然后我们根据错误进行操作将x展平并且修改linear的输入:
x = x.view(x.size(0), -1)        # [8, 32*4*4] = [8, 512]
self.linear = nn.Linear(512, 5)  # ✅ 修复后的定义

import torch
import torch.nn as nn
import torch.nn.functional as F# 模拟图像数据
x = torch.randn(8, 3, 64, 64)  # [B, C, H, W],batch size = 8# 模拟标签(分类任务)
labels = torch.randint(0, 5, (8,))  # 5 类问题,标签是 [8]# 模型定义
class BuggyNet(nn.Module):def __init__(self):super().__init__()self.conv1 = nn.Conv2d(3, 16, kernel_size=3, padding=1)self.conv2 = nn.Conv2d(16, 32, kernel_size=3, padding=1)self.pool = nn.AdaptiveAvgPool2d((4, 4))  # 变成 [B, 32, 4, 4]self.linear = nn.Linear(512, 5)  # 此处修改def forward(self, x):x = F.relu(self.conv1(x))        # [B, 16, 64, 64]x = F.relu(self.conv2(x))        # [B, 32, 64, 64]x = self.pool(x)                 # [B, 32, 4, 4]x = x.view(x.size(0), -1)        # 此处修改x = self.linear(x)               return xmodel = BuggyNet()
criterion = nn.CrossEntropyLoss()# 前向传播
outputs = model(x)                  
loss = criterion(outputs, labels)  

然后我们这样就不会报错了。

很多时候缝合模块时就是经常遇见shape问题,耐性一点关注输入输出shape这样就可以轻松解决问题。

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

相关文章:

  • 周至县做网站营销推广是什么意思
  • 回收网站建设手机游戏性能优化软件
  • 章丘做网站哪家强百度seo推广方案
  • 国家企业信息查询平台官网seo教程论坛
  • WordPress建站 网盘视频seo流量软件
  • 网站开发的历史怎么做游戏推广员
  • 怎么给我 的网站做关键词应用关键词优化
  • 网站建设公司的发展规划网站关键词优化排名软件
  • 从网络安全角度考量_写出建设一个大型电影网站规划方案百度数据库
  • 网络文化经营许可证价格谷歌官方seo入门指南
  • 盐城哪家做网站的正规郑州网络公司排名
  • 家纺网站建设成都十大营销策划公司
  • 无锡建设主管部门网站汕头seo外包公司
  • 自己做电影网站怎么赚钱南宁优化网站网络服务
  • 网站内的新闻怎样做链接厦门人才网唯一官方网站
  • gae wordpress百度seo怎么样优化
  • wordpress主题知更鸟lts网站seo快速排名优化
  • 网站建设与运营意义营销型网站建站
  • 一站式做网站成都网站建设方案托管
  • 排名网站建设怎么给产品做网络推广
  • 美国生物等效性如果做的网站新手网络推广怎么干
  • 西宁做网站哪家公司好最新疫情最新消息
  • 军人运动会官方网站建设目标网络营销管理名词解释
  • 深圳房产信息网搜索引擎的关键词优化
  • 企业网站建设定制网站建设公司seo技术学院
  • 郑州大学动态网站开发考试答案搜索引擎营销的步骤
  • asp网站怎么搭建网站开发培训
  • 深圳品牌网站快速排名优化系统
  • 做电脑系统的网站口碑营销策略
  • 手机移动开发网站建设品牌seo培训