projects
/
dagnn.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Update.
[dagnn.git]
/
dagnn.lua
diff --git
a/dagnn.lua
b/dagnn.lua
index
a6414b3
..
1b467e7
100755
(executable)
--- a/
dagnn.lua
+++ b/
dagnn.lua
@@
-46,8
+46,11
@@
function DAG:setInput(i)
self.inputModules = i
self:applyOnModules(
function(m)
self.inputModules = i
self:applyOnModules(
function(m)
- if (not self.succ[m] or #self.succ[m] == 0) or (self.pred[m] and #self.pred[m] > 0) then
- error('Invalid input edges.')
+ if not self.succ[m] or #self.succ[m] == 0 then
+ error('Input modules must have outgoing edges.')
+ end
+ if self.pred[m] and #self.pred[m] > 0 then
+ error('Input modules cannog have incoming edges.')
end
end,
self.inputModules
end
end,
self.inputModules
@@
-59,8
+62,11
@@
function DAG:setOutput(o)
self.outputModules = o
self:applyOnModules(
function(m)
self.outputModules = o
self:applyOnModules(
function(m)
- if (not self.pred[m] or #self.pred[m] == 0) or (self.succ[m] and #self.succ[m] > 0) then
- error('Invalid output edges.')
+ if not self.pred[m] or #self.pred[m] == 0 then
+ error('Output module must have incoming edges.')
+ end
+ if self.succ[m] and #self.succ[m] > 0 then
+ error('Output module cannot have outgoing edges.')
end
end,
self.outputModules
end
end,
self.outputModules
@@
-134,7
+140,10
@@
end
function DAG:updateGradInput(input, gradOutput)
self:sort()
function DAG:updateGradInput(input, gradOutput)
self:sort()
- self:applyOnModules(function(m, i, go) m:updateGradInput(i, go) end, self.outputModules, input, gradOutput)
+ self:applyOnModules(
+ function(m, i, go) m:updateGradInput(i, go) end,
+ self.outputModules, input, gradOutput
+ )
for k = self.sorted, 1, -1 do
local m = sorted[k]
for k = self.sorted, 1, -1 do
local m = sorted[k]