Added two techniques: gap statistic and prediction strength to estimate the optimal number of k for a dataset.