/// <summary>
 ///   Reconstructs a input vector for a given output.
 /// </summary>
 ///
 /// <param name="output">The output vector.</param>
 ///
 /// <returns>
 ///   Returns a probable input vector which may
 ///   have originated the given output.
 /// </returns>
 ///
 public double[] Reconstruct(double[] output)
 {
     return(visible.Compute(output));
 }
 /// <summary>
 ///   Compute output vector of the network.
 /// </summary>
 ///
 /// <param name="input">Input vector.</param>
 ///
 /// <returns>
 ///   Returns network's output vector.
 /// </returns>
 ///
 public override double[] Compute(double[] input)
 {
     return(hidden.Compute(input));
 }