lua:15: '[' 附近有意外的符号

0 lua torch

我正在尝试编写一个函数来创建 CNN 模型。每当我运行脚本时,我都会收到以下错误:

lua:15: '[' 附近有意外的符号

require('torch')

require('nn')

function CeateNvidiaModel()

    --The Nvidia model
    --Input dimensions
    local n_channels = 3
    local height = 66
    local width = 200
    local nvidia_model = nn.Sequential();
    --nvida_model:add(nn.Normalize()
    --Convolutional Layers
    nvidia_model:add(nn.SpatialConvolution(n_channels, 24, 5, 5, [2], [2]))
    nvidia_model:add(nn.ELU(true))
    nvidia_model:add(nn.SpatialConvolution(24, 36, 5, 5, [2], [2]))
    nvidia_model:add(nn.ELU(true))
    nvidia_model:add(nn.SpatialConvolution(36, 48, 5, 5, [2], [2]))
    nvidia_model:add(nn.ELU(true))
    nvidia_model:add(nn.SpatialConvolution(48, 64, 3, 3))
    nvidia_model:add(nn.ELU(true))
    nvidia_model:add(nn.SpatialConvolution(64, 64, 3, 3))
    nvidia_model:add(nn.ELU(true))
    -- Flatten Layer
    nvidia_model:add(nn.Reshape(1164))
    -- FC Layers
    nvida_model:add(nn.Linear(1164, 100))
    nvidia_model:add(nn.ELU(true))
    nvida_model:add(nn.Linear(100, 50))
    nvidia_model:add(nn.ELU(true))
    nvida_model:add(nn.Linear(50, 10))
    nvidia_model:add(nn.ELU(true))
    nvida_model:add(nn.Linear(10, 1))
    return nvida_model
end
Run Code Online (Sandbox Code Playgroud)

Dar*_*yer 5

我认为你很困惑[]并且{}。在许多其他语言中,您将数组文字写为[1, 2, 3],但在 Lua 中[]仅用于索引;要声明一个“数组文字”,你可以这样写{1, 2, 3}(因为 Lua 中的数组只是表)。

错误信息有点误导;它在“[”附近显示意外符号,但实际上这[ 意外符号。