Created by: PeganovAnton
Tasks with huge datasets make epoch validation inefficient.
intents_snips_bigru_val_every_n_batches.json test is identical to intents_snips_bigru.json except for "val_every_n_batches" name in "train".
This pull request includes following refactoring _validate() function is created for validation related ops and used for validation both after epoch and after batch. Also logging ops are converted into separate function _log(). Training control variables are united into train_monitor dictionary. train_monitor is initialized in separate function.