title: What is the data structure of Pybrain's network architecture?
body: <p>Suppose we have built a feed forward network using Pybrain's <code>SupervisedDataSet</code> and <code>buildNetwork</code> functions. The architecture could be 10, 5, 2: 10 input nodes, 5 hidden nodes in a single hidden layer, and 2 output nodes. </p>
  
  <pre><code>&gt;&gt;&gt; our_network = buildNetwork(10,5,2)
  &gt;&gt;&gt; for mod in our_network.modules:
  ...    for conn in our_network.connections[mod]:
  ...        conn.params
  
  array([-0.82432749, -1.77414037, ... ,  1.96635753])
  </code></pre>
  
  <p>When examining a trained network with the above architecture, how may we interpret the output array <code>conn.params</code>? Examining the output of the above architecture will yield 50 connections/weights between the input and hidden layer. I'm interested in knowing which inputs are associated with the strongest connections. Specifically, is it safe to assume the first 5 array elements returned are associated with the connections between the first node at the input layer and the 5 hidden layer nodes? </p>
  
  <p>I'm not gaining any insight via reverse engineering Pybrain for the past hour. </p>