I’m not sure what the difference between the first two outputs is, but it looks like the second and the last (testing) yield the same results, so I would exclude the batch norm layer as the root cause.
Moreover, I would suspect the data pipeline to be responsible for the different results.