Splitting the dataset into training cross-validation and testing