diff --git a/Modules/Applications/AppClassification/app/otbTrainImagesClassifier.cxx b/Modules/Applications/AppClassification/app/otbTrainImagesClassifier.cxx
index 5433dcf170b2d8110b488267033bf87bd2ef9628..b038ef54befa70039ff5b925bb4028a9048ce343 100644
--- a/Modules/Applications/AppClassification/app/otbTrainImagesClassifier.cxx
+++ b/Modules/Applications/AppClassification/app/otbTrainImagesClassifier.cxx
@@ -474,7 +474,8 @@ void DoExecute() ITK_OVERRIDE
   // ---------------------------------------------------------------------------
   // Train model
   GetInternalApplication("training")->SetParameterStringList("io.vd",sampleTrainOutputs, false);
-  GetInternalApplication("training")->SetParameterStringList("valid.vd",sampleValidOutputs, false);
+  if( vtr!=0.0 && !sampleValidOutputs.empty() )
+    GetInternalApplication("training")->SetParameterStringList("valid.vd",sampleValidOutputs, false);
   UpdateInternalParameters("training");
   // set field names
   FloatVectorImageType::Pointer image = imageList->GetNthElement(0);