FullyConnected layer for final output.

def _fully_connected(self, x, out_dim):
    """FullyConnected layer for final output."""
    if self.init_layers:
      fc = LinearnGPU(out_dim, w_name='DW')
      fc.name = 'logits'
      self.layers += [fc]
    else:
      fc = self.layers[self.layer_idx]
      self.layer_idx += 1
    fc.device_name = self.device_name
    fc.set_training(self.training)
    return fc.fprop(x)