Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Practical machine learning with Python : a problem-solver’s guide to building real-world intelligent systems
Sarkar D., Bali R., Sharma T., Apress, New York, NY, 2018. 530 pp. Type: Book (978-1-484232-06-4)
Date Reviewed: Aug 10 2018

The book’s title explicitly states its main purpose: to provide a practical problem-solving guide for those who seek to build real-world applications. The book consists of 12 chapters divided into three parts, the first two dealing with fundamentals and the third with practical real-life cases.

Fundamentals comprise the first two chapters of the book. The first chapter provides an extensive overview of machine learning (ML) from technical and practical points of view, without any formal proofs or theories. In this chapter, the authors discuss the data-driven decision-making process, ML as disruptive programming, and various fundamental concepts from mathematics, computer science, and data science, and they enumerate basic ML methods (supervised, unsupervised, reinforcement learning, and so on). It is important to understand that although the chapter provides an excellent overview of all these fundamental ML concepts, techniques, and models, it is not intended to be a comprehensive tutorial; rather, it is a guide to what one needs to master before jumping into the development of practical data-driven systems. The style is light, clean, and very informative. In addition, this part provides a detailed description of the cross-industry standard process for data mining (CRISP-DM) methodology commonly used for planning data mining projects. All of this not only allows the reader to touch on the actual mechanics of a data-driven project, but also to get up to speed with regards to building actual ML pipelines for supervised and unsupervised learning. The chapter concludes with a small real-life project that serves as a self-test and summary for anyone who wants a quick start in applications development. The second chapter is an introduction to Python. Again, the chapter is not a comprehensive tutorial; however, it gives a good overview of Python in the context of ML.

Chapters 3 to 5 form the second part of the book, “The Machine Learning Pipeline.” Interested readers will find discussions about data wrangling, the processing and visualization of data, and various aspects of the model building process, tuning, evaluation, and deployment. In particular, chapter 3 covers the fundamental concepts used in data wrangling: cleaning, processing, and transforming data to make it usable for further tasks. This chapter is rich with code examples (which explain different techniques). The authors chose to use a freeware pandas library, but the concepts and ideas discussed are universal; interested readers may implement them using different sets of libraries and tools. In addition, a good set of references provides important starting points to gather more knowledge and a deeper understanding of the discussed techniques. The following two chapters aim to familiarize the reader with the processes of data selection, feature extraction, and scaling, as well as with the main models and tuning of these models. Chapter 4 especially focuses on various aspects of feature engineering, the process of deriving features from raw data. The chapter discusses the three main methods of feature selection (filter, wrapper, and embedded techniques) in detail, along with an excellent section dedicated to data redaction. Chapter 5 is dedicated entirely to models, model tuning, model interpretation, and model predictions.

In Part 3, “Real-World Case Studies” (chapters 6 to 13), readers will find several cases from different domains, including retail, transportation, entertainment, finance, and computer vision. This part is well written with many practical examples and real code. The authors’ use of open-source libraries (for example, keras) increases the practical value of the text, since concepts, techniques, and code are directly applicable without the hassle of specific software frameworks.

Overall, this excellent book can be very useful for practitioners in data-driven systems. It strikes the right balance between depth and practicality, which along with an abundance of references and real-life case studies makes it a valuable addition to the bookshelf of any ML application developer. The use of the CRISM-DM framework as a robust methodology provides a solid foundation for achieving effective and optimal development. The authors decided to use the (already old) Python version 3.5.2, assuming that all provided code will work with no problems on 3.6 (and later versions). On a conceptual level, however, readers may use whatever version of Python they are familiar with.

More reviews about this item: Amazon

Reviewer:  Alexander Tzanov Review #: CR146196 (1811-0552)
Bookmark and Share
  Featured Reviewer  
 
Python (D.3.2 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Python": Date
Practical Python
Hetland M., APress, LP, 2002.  648, Type: Book (9781590590065)
Mar 28 2003
Python programming: an introduction to computer science
Zelle J., Franklin B, 2003. Type: Book (9781887902991)
Dec 2 2004
Foundations of Python network programming
Goerzen J., APress, LP, Berkeley, CA, 2004.  512, Type: Book (9781590593714)
Dec 26 2004
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy