A comprehensive introduction to machine learning that uses probabilistic models & inference as a unifying approach Today&s Web-enabled deluge of electronic data calls for automated methods of data analysis Machine learning provides these developing methods that can automatically detect patterns in data & then use the uncovered patterns to predict future data This textbook offers a comprehensive & self-contained introduction to the field of machine learning based on a unified probabilistic approach The coverage combines breadth & depth offering necessary background material on such topics as probability optimization & linear algebra as well as discussion of recent developments in the field including conditional random fields L1 regularization & deep learning The book is written in an informal accessible style complete with pseudo-code for the most important algorithms All topics are copiously illustrated with color images & worked examples drawn from such application domains as biology text processing computer vision & robotics Rather than providing a cookbook of different heuristic methods the book stresses a principled model-based approach often using the language of graphical models to specify models in a concise & intuitive way Almost all the models described have been implemented in a MATLAB software package -- PMTK (probabilistic modeling toolkit) -- that is freely available online The book is suitable for upper-level undergraduates with an introductory-level college math background & beginning graduate students