Humans have been “manually” extracting patterns from data for centuries, but the increasing volume of data in modern times has called for more automatic approaches. Early methods of identifying patterns in data include Bayes’ theorem (1700s) and Regression analysis (1800s). The proliferation, ubiquity and incre- ing power of computer technology has increased data collection and storage. As data sets have grown in size and complexity, direct hands-on data analysis has - creasingly been augmented with indirect, automatic data processing. Data mining has been developed as the tool for extracting hidden patterns from data, by using computing power and applying new techniques and methodologies for knowledge discovery. This has been aided by other discoveries in computer science, such as Neural networks, Clustering, Genetic algorithms (1950s), Decision trees (1960s) and Support vector machines (1980s). Data mining commonlyinvolves four classes of tasks: • Classi cation: Arranges the data into prede ned groups. For example, an e-mail program might attempt to classify an e-mail as legitimate or spam. Common algorithmsinclude Nearest neighbor,Naive Bayes classi er and Neural network. • Clustering: Is like classi cation but the groups are not prede ned, so the algorithm will try to group similar items together. • Regression: Attempts to nd a function which models the data with the least error. A common method is to use Genetic Programming. • Association rule learning: Searches for relationships between variables. For example, a supermarket might gather data of what each customer buys.