diff --git a/reading_machine/src/Classifier.cpp b/reading_machine/src/Classifier.cpp
index 089ee2bba666d42a759d8ba21c92a38b40727446..27a4ef1845940acacb2aaad170196376026cec6d 100644
--- a/reading_machine/src/Classifier.cpp
+++ b/reading_machine/src/Classifier.cpp
@@ -169,7 +169,7 @@ void Classifier::initLSTM(const std::vector<std::string> & definition, std::size
           if (params.size() % 2)
             util::myThrow("MLP must have even number of parameters");
           for (unsigned int i = 0; i < params.size()/2; i++)
-            mlp.emplace_back(std::make_pair(std::stoi(params[i]), std::stof(params[i+1])));
+            mlp.emplace_back(std::make_pair(std::stoi(params[2*i]), std::stof(params[2*i+1])));
           curIndex++;
         }))
     util::myThrow(fmt::format("Invalid line '{}', expected '{}'\n", curIndex < definition.size() ? definition[curIndex] : "", "(MLP :) {hidden1 dropout1 hidden2 dropout2...}"));