As a Computer Science grad student, is it better to specialise on a subject (for example Machine Learning) or to get surface level knowledge on multiple subjects?