diff options
Diffstat (limited to 'nerv/layer/lstmp.lua')
-rw-r--r-- | nerv/layer/lstmp.lua | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/nerv/layer/lstmp.lua b/nerv/layer/lstmp.lua index bbb2091..dc30797 100644 --- a/nerv/layer/lstmp.lua +++ b/nerv/layer/lstmp.lua @@ -24,24 +24,20 @@ function LSTMPLayer:__init(id, global_conf, layer_conf) }, ['nerv.AffineLayer'] = { mainAffine = {dim_in = {din, dout}, dim_out = {dcell}, pr = pr}, + forgetGate = {dim_in = {din, dout, dcell}, dim_out = {dcell}, param_type = {'N', 'N', 'D'}, pr = pr, activation = nerv.SigmoidLayer}, + inputGate = {dim_in = {din, dout, dcell}, dim_out = {dcell}, param_type = {'N', 'N', 'D'}, pr = pr, activation = nerv.SigmoidLayer}, + outputGate = {dim_in = {din, dout, dcell}, dim_out = {dcell}, param_type = {'N', 'N', 'D'}, pr = pr, activation = nerv.SigmoidLayer}, + projection = {dim_in = {dcell}, dim_out = {dout}, pr = pr, no_bias = true}, }, ['nerv.TanhLayer'] = { mainTanh = {dim_in = {dcell}, dim_out = {dcell}}, outputTanh = {dim_in = {dcell}, dim_out = {dcell}}, }, - ['nerv.LSTMGateLayer'] = { - forgetGate = {dim_in = {din, dout, dcell}, dim_out = {dcell}, param_type = {'N', 'N', 'D'}, pr = pr}, - inputGate = {dim_in = {din, dout, dcell}, dim_out = {dcell}, param_type = {'N', 'N', 'D'}, pr = pr}, - outputGate = {dim_in = {din, dout, dcell}, dim_out = {dcell}, param_type = {'N', 'N', 'D'}, pr = pr}, - }, ['nerv.ElemMulLayer'] = { inputGateMul = {dim_in = {dcell, dcell}, dim_out = {dcell}}, forgetGateMul = {dim_in = {dcell, dcell}, dim_out = {dcell}}, outputGateMul = {dim_in = {dcell, dcell}, dim_out = {dcell}}, }, - ['nerv.ProjectionLayer'] = { - projection = {dim_in = {dcell}, dim_out = {dout}, pr = pr}, - }, } local connections = { |