深度学习模型训练中,输入数据inputs维度和标签数据lablels维度调整方法
for inputs, labels in train_loader:
# 使用numpy的transpose函数调整维度顺序
inputs = np.transpose(inputs, (0, 3, 1, 2)) #将原输入数据最后一个维度换到第二个维度
inputs = inputs.to(device)
print(inputs.shape) #调试代码用
m = labels.shape #hdf5文件有时候标签数据大小为[batch_siza,1,1,1],需要做如下调整,先获取标签数据大小
n = m[0] #获取标签数据第一个维度值,也就是batch_size
labels = torch.reshape(labels, (n,)) #将标签数据转换为一维数据,也就是将原来的[[[1]]]里面的标签1提取出来
labels = labels.to(device)
print(labels.shape) #调试代码用
# 前向传播
outputs = model(inputs)
print(outputs.shape) #调试代码用
loss = criterion(outputs, labels.long())
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构