anchor.diff:                   (if (listp x)
                        (elt x i)
                        x)))
  -          (dolist (cloud (clouds rbm))
  -            (log-msg "~A: ~A~%" cloud (xxx (weights cloud))))
             (train (make-sampler *training-images*
                                  :max-n (* n-epochs (length *training-images*))
                                  :sample-visible-p (this visible-sampling))
  
positive.code:   ((counter :initform (make-instance 'rmse-counter) :reader counter)))
  
  (defmethod log-training-error ((trainer mnist-dbm-trainer) (dbm mnist-dbm))
    (dolist (cloud (clouds dbm))
      (log-msg "~A: ~A~%" cloud (xxx (weights cloud))))
    (let ((counter (counter trainer))
          (n-inputs (n-inputs trainer)))
      (log-msg "TRAINING RMSE: ~,5F (~D)~%"
  
negative.code:         (funcall x trainer))))
  
  (defmethod log-training-error ((trainer mnist-rbm-trainer) (rbm mnist-rbm))
    (let ((counter (counter trainer))
          (n-inputs (n-inputs trainer)))
      (log-msg "TRAINING RMSE: ~,5F (~D)~%"
  