Now documents the function calls.
authorFrancois Fleuret <francois@fleuret.org>
Fri, 13 Jan 2017 07:37:07 +0000 (08:37 +0100)
committerFrancois Fleuret <francois@fleuret.org>
Fri, 13 Jan 2017 07:37:07 +0000 (08:37 +0100)
README.md

index 2ff5b99..58c386f 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,7 +1,9 @@
 
+#Introduction#
+
 This package implements a new module nn.DAG which inherits from nn.Container and allows to combine modules in an arbitrary graph without cycle.
 
-#Example#
+##Example##
 
 A typical use would be:
 
@@ -42,7 +44,7 @@ and run a forward pass with a random batch of 30 samples.
 
 Note that DAG:connect allows to add a bunch of edges at once. This is particularly useful to add anonymous modules which have a single predecessor and successor.
 
-#Input and output#
+##Input and output##
 
 If a node has a single successor, its output is sent unchanged as input to that successor. If it has multiple successors, the outputs are collected into a table, and the table is used as input to the successor node. The indexes of the outputs in that table reflects the order of the DAG:connect() commands.
 
@@ -50,4 +52,46 @@ The expected input (respectively the produced output) is a nested table of input
 
 So for instance, in the example above, the model expects a tensor as input, since it is the input to the module a, and its output will is a table composed of two tensors, corresponding to the outputs of d and e respectively.
 
+#Usage#
+
+##nn.DAG()##
+
+Create a new empty DAG, which inherits from nn.Container.
+
+##nn.DAG:connect([module1 [, module2 [, ...]]])##
+
+Add new nodes corresponding to the modules passed as arguments if they
+are not already existing. Add edges between every the nodes
+corresponding to pairs of successive modules.
+
+##nn.DAG:setInput(i)##
+
+Defines the content and structure of the input. The argument should be
+either a module, or a (nested) table of module. The input to the DAG
+should be a (nested) table of inputs with the corresponding structure.
+
+##nn.DAG:setOutput(o)##
+
+Same as DAG:setInput.
+
+##nn.DAG:print()##
+
+Prints the list of nodes.
+
+##nn.DAG:saveDot(filename)##
+
+Save a dot file to be used by the Graphviz set of tools for graph visualization.
+
+##nn.DAG:updateOutput(input)##
+
+See the torch documentation.
+
+##nn.DAG:updateGradInput(input, gradOutput)##
+
+See the torch documentation.
+
+##nn.DAG:accGradParameters(input, gradOutput, scale)##
+
+See the torch documentation.
+
 *Francois Fleuret, Jan 13th, 2017*