Symmetry and Generalisation in Machine Learning