簡體   English   中英

如何獲得火炬::張量形狀

[英]How to get torch::Tensor shape

如果我們<< a torch::Tensor

#include <torch/script.h>
int main()
{
    torch::Tensor input_torch = torch::zeros({2, 3, 4});
    std::cout << input_torch << std::endl;
    return 0;
}

我們看

(1,.,.) = 
  0  0  0  0
  0  0  0  0
  0  0  0  0

(2,.,.) = 
  0  0  0  0
  0  0  0  0
  0  0  0  0
[ CPUFloatType{2,3,4} ]

如何獲得張量形狀(即2,3,4 )? 在 https://pytorch.org/cppdocs/api/classat_1_1_tensor.html?highlight=tensor中搜索了一個 ZDB974238714CA8DE634A7CE1D083A14F 調用,但找不到一個。 我搜索了operator<<重載代碼,也找不到。

您可以使用torch::sizes()方法

IntArrayRef sizes()

它相當於 python 中的形狀。 此外,您可以通過調用torch::size(dim)訪問給定 ax (維度)的特定尺寸。 這兩個功能都在您鏈接的 API 頁面中

好吧,我一直在使用torch::_shape_as_tensor(tensor) ,它為您提供了另一個張量 object

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM