title: add a nn.Parameter tensor to the optim
body: <p>let's say I have a network with a parameter tensor:</p>
  <pre><code>self.inital_value = nn.Parameter(torch.randn(1,96,4,4))
  </code></pre>
  <p>and two layers:</p>
  <pre><code>self.rgb_layers = nn.ModuleList([nn.Conv2d(96, 3, 1, 1, 0)]*2)
  </code></pre>
  <p>so the forward function is as follows:</p>
  <pre><code>v = torch.clone(self.inital_value)
  for i in range(2):
      v = self.rgb_layers[i](v)
  return v
  </code></pre>
  <p>now I define an optimiser. if I want to train only the first layer I can do:</p>
  <pre><code>opt = optim.RMSprop(model.rgb_layers[0].parameters(),lr = lr)
  </code></pre>
  <p>but if I want to train only the tensor <code>self.inital_value</code> and I do the same I get this error:</p>
  <pre><code>'Parameter' object has no attribute 'parameters'
  </code></pre>
  <p>how can I bypass this limitation?</p>