pytorch - 尺寸超出范围(预计在 [-2, 1] 范围内,但得到 2)
问题描述
为什么会弹出以下错误?什么应该在这个范围内,为什么?-2 维是什么意思?
RuntimeError: dimension out of range (expected to be in range of [-2, 1], but got 2)
此代码将产生错误
import torch
torch.bmm(torch.randn(1000, 784) , torch.randn(784, 10))
解决方案
执行矩阵 mat1 和 mat2 的矩阵乘法。
如果 mat1 是 (n×m) 张量,mat2 是 (m×p) 张量,out 将是 (n×p) 张量。
执行存储在 batch1 和 batch2 中的矩阵的批处理矩阵乘积。
batch1 和 batch2 必须是 3-D 张量,每个张量都包含相同数量的矩阵。
如果batch1是(b×n×m)张量,batch2是(b×m×p)张量,out是(b×n×p)张量。
以下代码片段有效。
import torch
x = torch.mm(torch.randn(100, 78) , torch.randn(78, 10))
bsize = 16
x = torch.bmm(torch.randn(bsize, 100, 78) , torch.randn(bsize, 78, 10))
推荐阅读
- javascript - 在javascript中需要一个正则表达式
- react-native - 如何使用 Expo 修复 ReactNative 中的“未捕获错误:不变违规”错误?
- react-native - 使用地理定位 react-native 时出错
- adal - 使用 clientsecret MSAL 注册的应用程序必须设置什么范围
- flutter - 如何包装 RadioButtonGroup 的标签?我在哪里可以提供扩展或灵活?
- delphi - 我想用 AES 加密 TidBytes
- javascript - 滚动到 Div 时 Javascript 加载更多
- php - 如何在引导程序 4 中修复动态图像
- pyspark-sql - 在 PySpark DataFrame 上运行 sql 查询
- ksqldb - 我可以在 KSQL 中按两列分区吗