diff --git a/trainer/src/macaon_train.cpp b/trainer/src/macaon_train.cpp
index e12c74cf9342a6875bbb135de2f2dbe65f85704d..9dbceaa389e44c0658c26e735db0cac82d88224f 100644
--- a/trainer/src/macaon_train.cpp
+++ b/trainer/src/macaon_train.cpp
@@ -99,7 +99,7 @@ int main(int argc, char * argv[])
 
   Decoder decoder(machine);
 
-  float bestDevScore = computeDevScore ? 0 : 100;
+  float bestDevScore = computeDevScore ? std::numeric_limits<float>::min() : std::numeric_limits<float>::max();
 
   for (int i = 0; i < nbEpoch; i++)
   {