ValueError:pytorch 中的“str”python 维度太多

Posted

技术标签:

【中文标题】ValueError:pytorch 中的“str”python 维度太多【英文标题】:ValueError: too many dimensions 'str' python in pytorch 【发布时间】:2021-03-30 16:43:54 【问题描述】:

我不断收到错误:

ValueError: 维度 'str' 过多

我附上我的 colab 笔记本以查看它。还没有在网上找到任何可以帮助我解决问题的东西。

链接: https://colab.research.google.com/drive/1ikol2D8mmiIPKhNHbcFlTfVpuU_Gf9BZ?usp=sharing

【问题讨论】:

【参考方案1】:

我在我的 Jupyter 笔记本中也看到了这个错误。我可以用下面的简单代码重现它:

Input:
tensor(['a'])

Output: 
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-55-3bdb0dbfafc2> in <module>
----> 1 tensor(['a'])
...(stacktrace)...

ValueError: too many dimensions 'str'

显然 PyTorch 张量与 Numpy 数组的不同之处在于 they don't work with strings,只有整数、浮点数和布尔值。

上述错误表明传递给张量的字符串太多(即即使一个字符串也太多了)。当我将代码更改为以下时,它工作正常:

Input:
tensor([1])

Output: 
tensor([1])

【讨论】:

【参考方案2】:

我还没有检查你的笔记本,但我刚刚解决了同样的错误。只需仔细检查所有训练数据集和标签是否都转换为数值或张量。如果您的数据框中有多个列,请删除不需要输入训练循环的列。

【讨论】:

以上是关于ValueError:pytorch 中的“str”python 维度太多的主要内容,如果未能解决你的问题,请参考以下文章

Pytorch 错误:ValueError:图片应该是 2/3 维。有4个维度[关闭]

Pytorch ValueError:优化器得到一个空的参数列表

Pytorch 闪电指标:ValueError:preds 和 target 必须具有相同数量的维度,或者 preds 的一个额外维度

PyTorch:将预训练模型从 3 个 RGB 通道更改为 4 个通道后,出现“ValueError:无法优化非叶张量”

Pytorch U-net 分割模型的“ValueError:轴与数组错误不匹配”可能是啥原因?

ValueError:熊猫数据框中的项目数量错误