Lua: 使用神经网络实现语义相似性

我刚开始学习Lua编程,并正试图使用神经网络执行语义相似性。我在 https://github.com/hohoCode/textSimilarityConvNet 中找到了一些代码

它包括:

include('Conv.lua')
modelTrained = torch.load("download_local_location/modelSTS.trained.th", 'ascii')
modelTrained.convModel:evaluate()
modelTrained.softMaxC:evaluate()
local linputs = torch.zeros(rigth_sentence_length, emd_dimension)
linpus = XassignEmbeddingValuesX
local rinputs = torch.zeros(left_sentence_length, emd_dimension)
rinpus = XassignEmbeddingValuesX

local part2 = modelTrained.convModel:forward({linputs, rinputs})
local output = modelTrained.softMaxC:forward(part2)
local val = torch.range(0, 5, 1):dot(output:exp())
return val/5

当我运行这段代码时,报错

attempt to call global 'include' (a nil value)

但我已经将Conv.lua文件放在相同的位置。有人能建议我如何解决这个问题吗?

点赞
用户5287638
用户5287638

你遇到了这个错误消息是因为 textSimilarityConvNet 期望有一个可以使用的全局 include 函数,但是这个函数没有被载入。

在 Lua 中,未定义的值默认为 nil,这就是为什么会看到你遇到的错误。你在请求 Lua 调用 include 函数,但叫做 include 的变量并不是一个函数,因此无法被调用。

include 函数是 Torch 库的一部分(在这里定义),所以你问题的根本原因可能是 Torch 安装不正确。尝试检查安装页面是否有遗漏步骤。

2017-07-20 11:40:51