【杂】解决关于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_dim1i, j 是原始张量 tensori, :, 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

相关推荐
十三画者20 小时前
【文献分享】ConfRetro:融合3D构象信息的逆合成预测Transformer框架
人工智能·深度学习·数据挖掘·数据分析·transformer·数据可视化
雷帝木木1 天前
数据湖与数据仓库:从理论到实践
人工智能·python·深度学习·机器学习
yanghuashuiyue1 天前
RNN结构记录
人工智能·rnn·深度学习
%471 天前
DAY 38
人工智能·pytorch·深度学习
June bug1 天前
【HCIA- AI(正课)】2.1 深度学习基础
人工智能·深度学习
黑马水牛1 天前
Carla仿真系列:9_Carla 单目障碍物测距,四种方法原理与实测
经验分享·python·深度学习·计算机视觉·ros·传感器·carla仿真
船厂电气自动化ai大模型1 天前
AI大模型与数学第42课:泰勒级数完整展开(神经网络近似核心)
人工智能·python·深度学习·算法·机器学习
mmsx1 天前
我明明调用了 zoomToBounds,地图却总是停在别处?延迟加到 5 秒也没用,真相只有一个
android·人工智能·bug·地图
mmsx1 天前
置灰按钮为什么自己又“亮“了?一次状态缓存“双写冲突“的排查记录
java·缓存·bug·livedata
就是一顿骚操作1 天前
GRU:用重置门与更新门简化序列记忆的经典解读
人工智能·深度学习·gru·论文解读