On Learning Hamiltonian Systems from Data