anchor.diff:    (call-next-method)
     (multiple-value-bind (e ce)
         (bpn-error (make-test-sampler :omit-label-p t) bpn)
  -    (log-msg "TEST CROSS ENTROPY ERROR: ~,5F (~D)~%"
  -             ce (n-inputs trainer))
  -    (log-msg "TEST CLASSIFICATION ACCURACY: ~? (~D)~%"
  -             *percent-format* (->percent e) (n-inputs trainer))))
  +    (log-msg "TEST CROSS ENTROPY ERROR: ~,5G~%" ce)
  +    (log-msg "TEST CLASSIFICATION ACCURACY: ~?~%" *percent-format*
  +             (->percent e) (n-inputs trainer))))
   
   (defmethod compute-derivatives :around (samples (trainer mnist-cg-bp-trainer)
                                                   bpn)
  
positive.code:                 (* (/ (n-inputs trainer)
                        (length *training-images*))
                     600)))))
  
  #+nil
  (defmethod n-gibbs ((trainer mnist-dbm-trainer))
    (cond ((< (n-inputs trainer) 5000)
           100)
          (t
           10)))
  
  (defmethod momentum ((trainer mnist-dbm-segment-trainer))
    (if (< (n-inputs trainer) (* 5 (length *training-images*)))
  
negative.code:    (counter :initform (make-instance 'error-counter) :reader counter)))
  
  (defmethod log-training-error (trainer (bpn mnist-bpn))
    (let ((ce-counter (cross-entropy-counter trainer))
          (counter (counter trainer)))
      (log-msg "CROSS ENTROPY ERROR: ~,5G~%"
               (or (get-error ce-counter) #.(flt 0)))
      (log-msg "CLASSIFICATION ACCURACY: ~?~%" *percent-format*
               (->percent (or (get-error counter) #.(flt 0))))
      (reset-counter ce-counter)
      (reset-counter counter)))
  
  