Remove direct numpy dependency