簡體   English   中英

從std :: vector創建一個張量 <Tensor> 價值觀

[英]Create a Tensor from std::vector<Tensor> values

我正在使用動態批次大小進行DQN培訓。 我有兩張通行證:

第一遍:DNN的幾個后續后續傳播帶有不同的樣本,直到發生特定事件為止。 在此步驟中,我保存所有輸入(一維張量)以在第二遍中重播。 因為使用C ++無法創建具有動態形狀的Tensor,所以將它們存儲為一維張量的std :: vector。

第二遍:計算預期輸出,並使用相同的DNN進行正向傳播和反向傳播。 這次我使用二維張量作為輸入,一次計算所有樣本。

問題是如何最有效地從一維張量向量創建二維輸入張量? 還是我做錯了一切?

您可以從向量的向量定義張量! 定義一個向量,該向量的每個元素也是一個向量。 例如:

 vector<int> tensor(i,vector<int> (j)); //the size is i*j where i and j are integers

要訪問ij的元素,您可以通過以下方式訪問它:

tensor[i][j]

由於向量的大小是動態的,因此該張量的大小是動態的

暫無
暫無

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

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