【发布时间】:2014-07-12 05:12:04
【问题描述】:
这是我的代码:
30 for t = 1,testData:size() do
33 -- get new sample
34 local input = testData.data[t]
35 if opt.type == 'double' then input = input:double()
36 elseif opt.type == 'cuda' then input = input:cuda() end
37 local target = testData.labels[t]
38 -- test sample
39 local pred = model:forward(input)
40 test_result[t]=pred
41
42 local err = criterion:forward(pred,target)
43 te_error = te_error+err
44 end
45 print(test_result[1])
46 print(test_result[2])
我得到了相同的元素,所以我的表只存储了最后一个元素,为什么?
【问题讨论】:
-
model:forward返回的是什么?它是否返回静态表?我假设您是说您在test_result中为 all 条目获得相同的值,而不仅仅是这两个是相同的(因为在不知道数据的情况下,这两个肯定有可能合法地成为和我想的一样)。 -
HI pred 是一个浮点向量,它每次都会改变,但是当我将它们插入表格时,表格包含所有重复项
-
你是如何测试你每次得到不同的向量的?您最终的向量值是第一个向量吗?一些随机向量?最后一个向量?
-
我确实打印了每一步的“pred”,表格最后有许多最后的“pred”
-
不应该
testData.data[t]是testData[t].data?