Symplectic convolutional neural networks