Unsupervised learning is a machine learning algorithm that searches for previously unknown patterns within a data set containing no labeled responses and without human interaction. The most prominent methods of unsupervised learning are cluster analysis and principal component analysis