【杂】解决关于mean(0)理解错误引发的程序bug

一、环境和解释器要一起配置好

invalid syntax

发生你在终端激活了一个环境,但 VSCode 依然使用之前的解释器的情况。

解释器设置影响了 VSCode 中运行 Python 脚本、调试、代码补全等功能的行为。VSCode 会根据你选择的解释器来执行这些操作。
二、关于mean(0)引发的错误:

1、

N, bs \* T, C, W, H

T, N\* bs,C,W,H

mean(0) ---->[N* bs, C,W,H]

2、

bs\*T, C,W,H

T, bs, C, W, H

mean(0) ---->[bs, C, W, H]

\[bs,C,W,H\], \[bs,C,W,H\],...

stack(0)---->[N * bs, C,W,H]
1和2的逻辑肯定是不一样的,跟view或者reshape无关,就是对mean(0)方法理解不到位。

出错肯定是自己对一些东西的理解出错了,肯定是想当然了 ,那就去一点点排查到底哪里出错了。
mean(dim)方法

bash 复制代码
tensor = torch.randn(3, 4, 5)
mean_along_dim1 = tensor.mean(1)
print(mean_along_dim1.shape)  # 应该输出 torch.Size([3, 5])

mean_along_dim1[i, j] 是原始张量 tensor[i, :, j] 中所有元素的均值。

直观的操作相当于:[i,0,j]+[i,1,j]+[i,2,j]+[i,3,j] / 4 ---> [i,j],i,j为某一固定实数

所以:

T, N\* bs,C,W,H

mean(0) ---->[N* bs, C,W,H]
这个过程把N考虑进来一起加,肯定是不对的。

三、杂

  1. label_onehot = F.one_hot(label, 10).float()

    RuntimeError: one_hot is only applicable to index tensor.

    PyTorch 中的索引张量必须包含整数值。确保 label 是一个整数张量,可以通过使用 .long()

  2. squeeze是要赋值的,除了extend都要赋值

    lua 复制代码
    label_onehot = label_onehot.squeeze(1)
  3. 命令:pip3 show

相关推荐
这张生成的图像能检测吗28 分钟前
(论文速读)GCGNet:具有外生变量的时间序列预测的图一致生成网络
人工智能·深度学习·图神经网络·时序模型
好家伙VCC30 分钟前
**基于Colab的高效Python深度学习开发流程:从环境配置到模型部署全流程实战**在当前人工智
java·开发语言·python·深度学习
星光技术人31 分钟前
怎么理解任务接口不是文本
人工智能·深度学习·计算机视觉·语言模型·自动驾驶
憨波个44 分钟前
【说话人日志】从固定输出到可变说话人数:EEND-EDA
人工智能·深度学习·音频·语音识别
贵州晓智信息科技1 小时前
NumPy 从数组操作理解深度学习的计算本质
人工智能·深度学习·numpy
Thomas.Sir1 小时前
AI 医疗之重症监护预警系统(ICU-EWS)从理论到实战【时序深度学习与多模态融合】
人工智能·python·深度学习·ai·多模态
老鱼说AI1 小时前
长文预警!大模型面试:关于大模型微调的进阶与工程部署讲解
人工智能·深度学习·神经网络·学习·自然语言处理·面试·职场和发展
Nova_AI1 小时前
018、AI伦理与可持续发展:长期主义的商业基础
人工智能·深度学习·机器学习
万粉变现经纪人1 小时前
如何解决 pip install tensorflow-gpu 报错 未检测到 CUDA 驱动 问题
人工智能·python·深度学习·aigc·tensorflow·bug·pip
大写-凌祁1 小时前
基于LLM智能体框架的城市遥感图像变化分析
人工智能·深度学习·计算机视觉·语言模型·aigc