# Keras' Evaluate function training model on test set

I've been using Keras to do some timeseries predictive neural nets. One thing that's had me staggered is how I was getting an almost 99% accuracy rate on very very noisy and uncorrelated data (I was looking for accuracy of around 50% to be good!)...

What I've now found, is that after I trained my model on the training set, I was casually running model.evaluate(x_test, y_test) before then running a manual backtest on the data. The manual backtest on x_test and comparing it to the error in y_test then showed almost perfect accuracy...

Am I then correct in assuming that Keras when using the evaluate() function in Keras the original model is actually updated with the testing data as well? This seems a bit strange and counterintuitive to me?

• Could you provide minimal working example? 99% accuracy on small training dataset suggests overfitting. How big is your dataset? Additionally evaluate does not have any reported side effects, so it should not update your model (that would be bad design anyway if it did). – Dmitrii I. Sep 19 '16 at 13:28