Approaches, techniques and tools for data analysis and knowledge discovery. Introduction to machine learning, data mining, and the knowledge discovery process; data storage including database management systems, data warehousing, and OLAP; testing and verification methodologies; data preprocessing including missing data imputation and discretization; supervised learning including decision trees, Bayesian classification and networks, support vector machines, and ensemble methods; unsupervised learning methods including association mining and clustering; information retrieval.