Try PyTorch, Tensorflow, Keras, Chainer, make them have same output as possible.
PyTorch == 0.4.1, Tensorflow-gpu == 1.12.0, Chainer == 5.2.0, Keras == ???
Now I have implemented PyTorch and Chainer. By setting a weight initializer to PyTorch model, I can have models created by PyTorch and Chainer to have same outputs for most layers(I can't figure Dropout layer out).
I also had Keras implemented model by different versions of Keras.