Classification and clustering are two major machine learning tools and two of the most important areas of data mining, because they have many practical applications such as medical diagnosis, fraud detection, and predicting financial trends. Classification is the task of assigning a new sample to a set of previously known classes, while clustering is the task of grouping samples into clusters of similar samples. This is the reason that classification is known as supervised learning and clustering is known as unsupervised learning.