I initially thought that a good rule of thumb to split training, validation and test data is 60-20-20. However, the top answer here seems to suggest a 80:20 with training and test, and then take 20% of that 80% for your validation data (which amounts to taking a validation split of 0.2 for example with Keras's model.fit()). However, this is not a 60-20-20 in that case -- here the size of the test data is clearly larger than the size of the validation data.
For example, if there are in total 100 samples, and 80% is taken for training, that leaves 80 samples for training, with the other 20% for testing with 20 samples.
If you take 20% of that 80%, you instead take 20% of 80, which is 16. This would overall imply an overal split of 64%-16%-20% for training, validation and testing respectively.
Is this still correct/fine/a good rule of thumb? Or should I instead take 20% of the total from the 80% for testing -- such that in this case I'm taking 25% of the training data so that 20 samples are alloted to the validation set, and I now have a 60-20-20 split?
For whatever is more appropriate/standard practice, why is that? Is there a standard, conventional choice for one or the other?