anchor.diff:  (defclass mnist-bpn-gd-trainer (mnist-bp-trainer segmented-gd-trainer)
     ())
   
  -#+nil
  -(defclass mnist-bpn-gd-trainer (mnist-bp-trainer svrg-trainer)
  -  ())
  -
   (defclass mnist-bpn-gd-segment-trainer (batch-gd-trainer)
     ((n-inputs-in-epoch :initarg :n-inputs-in-epoch :reader n-inputs-in-epoch)
      (n-epochs-to-reach-final-momentum
  
positive.code: (defun build-rectified-mnist-bpn (&key (n-units-1 1200) (n-units-2 1200)
                                    (n-units-3 1200))
    (build-bpn (:class 'mnist-bpn :max-n-stripes 100)
      (inputs (->input :name 'inputs :size 784))
      (f1-activations (add-activations :name 'f1 :inputs '(inputs)
                                       :size n-units-1))
      (f1* (->rectified :x f1-activations))
      (f1 (->dropout :x f1*))
      (f2-activations (add-activations :name 'f2 :inputs (list f1)
                                       :size n-units-2))
      (f2* (->rectified :x f2-activations))
      (f2 (->dropout :x f2*))
      (f3-activations (add-activations :name 'f3 :inputs (list f2)
                                       :size n-units-3))
      (f3* (->rectified :x f3-activations))
      (f3 (->dropout :x f3*))
      (predictions (tack-cross-entropy-softmax-error-on
  
negative.code: ;;;; Code for the MNIST handwritten digit recognition challange.
  ;;;;
  ;;;; References:
  ;;;;
  ;;;; For the DBN-to-BPN approach:
  ;;;;
  ;;;;   To Recognize Shapes, First Learn to Generate Images,
  ;;;;   http://www.cs.toronto.edu/~hinton/absps/montrealTR.pdf
  