美文网首页
ValueError:only one element tens

ValueError:only one element tens

作者: 小黄不头秃 | 来源:发表于2022-09-19 00:19 被阅读0次

    有时候我们在使用pytorch将一个list转换成为tensor的时候可能会遇到这个问题:

    报错内容:
    ValueError:only one element tensors can be converted to Python scalars
    或者:
    TypeError: only integer tensors of a single element can be converted to an index

    x = torch.tensor([1,2,3])
    a = [x,x]
    print(torch.tensor(a))
    

    修改为:

    x = torch.tensor([1,2,3])
    a = [x.tolist(),x.tolist()]
    print(torch.tensor(a))
    

    或者:

    x = torch.tensor([1,2,3])
    a = [x,x]
    print(torch.tensor([item.numpy() for item in a]))
    

    当然会带来一些性能问题。因为这样子转换是非常耗时间的。
    他可能会发出警告:
    UserWarning: Creating a tensor from a list of numpy.ndarrays is extremely slow. Please consider converting the list to a single numpy.ndarray with numpy.array() before converting to a tensor.

    要尽量避免这样的操作。

    相关文章

      网友评论

          本文标题:ValueError:only one element tens

          本文链接:https://www.haomeiwen.com/subject/cfjanrtx.html