diff --git a/trainer/src/Trainer.cpp b/trainer/src/Trainer.cpp
index 9f41dfc2a8111ea6431f7473c4bba33dd0e88418..76bf1bda3207f4d1c69d2d1ccdc9dd50fced1664 100644
--- a/trainer/src/Trainer.cpp
+++ b/trainer/src/Trainer.cpp
@@ -400,10 +400,6 @@ void Trainer::doStepTrain()
 
       if (TI.lastActionWasPredicted[normalStateName])
       {
-        if (ProgramParameters::debug)
-        {
-          fprintf(stderr, "Updating neural network \'%s\'\n", tm.getCurrentClassifier()->name.c_str());
-        }
         if (newCost >= lastCost)
         {
           loss = tm.getCurrentClassifier()->trainOnExample(pendingFD[tm.getCurrentClassifier()->name], tm.getCurrentClassifier()->getActionIndex("EPSILON"));
@@ -411,8 +407,14 @@ void Trainer::doStepTrain()
         else
         {
           loss = tm.getCurrentClassifier()->trainOnExample(pendingFD[tm.getCurrentClassifier()->name], tm.getCurrentClassifier()->getActionIndex(trainConfig.getCurrentStateHistory().top()));
+
+          if (ProgramParameters::debug)
+            fprintf(stderr, "Updating neural network \'%s\', gold=\'%s\'\n", tm.getCurrentClassifier()->name.c_str(), trainConfig.getCurrentStateHistory().top().c_str());
         }
 
+        if (ProgramParameters::debug)
+          fprintf(stderr, "Updating neural network \'%s\'\n", tm.getCurrentClassifier()->name.c_str());
+
         TI.addTrainLoss(tm.getCurrentClassifier()->name, loss);
       }