2015-10-14 67 views
-2

我是新来的lua,乘张量卢阿

为什么下面的代码不能正常工作?

local data = torch.Tensor(100, 4) 
--data tensor is read from file 
local w = torch.Tensor(1, 4):zero() 
local tmp = w * data[5]:t() 
+0

什么是'数据[5] ? – hjpotter92

回答

1

data[5]是1- d张量和transpose仅适用于2-d张量。所以,你可以使用indexing操作如下,以获得一个额外的维度:

-- matrix-matrix operation: result is a 1x1 tensor 
local tmp = w * data[{{5}}]:t() 

或可替代squeezew第一单维度:)T(`:

-- dot prod between 1D tensors: result is a number 
local tmp = w:squeeze() * data[5]