aboutsummaryrefslogtreecommitdiff
path: root/nerv/nn
diff options
context:
space:
mode:
authortxh18 <cloudygooseg@gmail.com>2015-11-20 23:57:09 +0800
committertxh18 <cloudygooseg@gmail.com>2015-11-20 23:57:09 +0800
commite7a45e14d75959a3d4095ac34158a8abc3e995cf (patch)
treec2d0da26005034233a80277243003ea9e5006823 /nerv/nn
parentddcb0a8f3ee045910acc618177dc5baf7adb8bf3 (diff)
added has_param api for param_repo
Diffstat (limited to 'nerv/nn')
-rw-r--r--nerv/nn/layer_repo.lua3
-rw-r--r--nerv/nn/param_repo.lua15
2 files changed, 13 insertions, 5 deletions
diff --git a/nerv/nn/layer_repo.lua b/nerv/nn/layer_repo.lua
index ec0f80a..ef333a7 100644
--- a/nerv/nn/layer_repo.lua
+++ b/nerv/nn/layer_repo.lua
@@ -23,9 +23,6 @@ function LayerRepo:add_layers(layer_spec, param_repo, global_conf)
end
for pname, pid in pairs(spec[1]) do
layer_config[pname] = param_repo:get_param(pid)
- if layer_config[pname] == nil then
- nerv.error("did not find parameter in paramRepo")
- end
end
layers[id] = layer_type(id, global_conf, layer_config)
end
diff --git a/nerv/nn/param_repo.lua b/nerv/nn/param_repo.lua
index 7fc0498..6d52691 100644
--- a/nerv/nn/param_repo.lua
+++ b/nerv/nn/param_repo.lua
@@ -67,7 +67,18 @@ function ParamRepo:export(param_file, pids)
cf:close()
end
+function ParamRepo:has_param(pid)
+ if self.params[pid] ~= nil then
+ return true
+ else
+ return false
+ end
+end
+
function ParamRepo:get_param(pid)
- --if pid does not exist, return nil
- return self.params[pid]
+ local p = self.params[pid]
+ if p == nil then
+ nerv.error("param with id %s not found", pid)
+ end
+ return p
end