1st Edition

The Pragmatic Programmer for Machine Learning Engineering Analytics and Data Science Solutions

By Marco Scutari, Mauro Malvestio Copyright 2023
    356 Pages 32 B/W Illustrations
    by Chapman & Hall

    356 Pages 32 B/W Illustrations
    by Chapman & Hall

    Machine learning has redefined the way we work with data and is increasingly becoming an indispensable part of everyday life. The Pragmatic Programmer for Machine Learning: Engineering Analytics and Data Science Solutions discusses how modern software engineering practices are part of this revolution both conceptually and in practical applictions.

    Comprising a broad overview of how to design machine learning pipelines as well as the state-of-the-art tools we use to make them, this book provides a multi-disciplinary view of how traditional software engineering can be adapted to and integrated with the workflows of domain experts and probabilistic models.

    From choosing the right hardware to designing effective pipelines architectures and adopting software development best practices, this guide will appeal to machine learning and data science specialists, whilst also laying out key high-level principlesin a way that is approachable for students of computer science and aspiring programmers.

    Preface

    1 What is This Book About?

    2 Hardware Architectures

    3 Variable Types and Data Structures

    4 Analysis of Algorithms

    5 Designing and Structuring Pipelines

    6 Writing Machine Learning Code

    7 Packaging and Deploying Pipelines

    8 Documenting Pipelines

    9 Troubleshooting and Testing Pipelines

    10 Tools for Developing Pipelines

    11 Tools to Manage Pipelines in Production

    12 Recommending Recommendations: A Recommender

    System Using Natural Language Understanding

    Bibliography

    Index

    Biography

    Marco Scutari is a Senior Researcher at Istituto Dalle Molle di Studi sull'Intelligenza Artificiale (IDSIA), Switzerland. He has held positions in statistics, statistical genetics and machine learning in the UK and Switzerland since completing his PhD in statistics in 2011. His research focuses on the theory of Bayesian networks and their applications to biological and clinical data, as well as statistical computing and software engineering.

    Mauro Malvestio is a senior technologist based in Milan, Italy, with more than 15 years of experience in software engineering and IT operations in consulting and product companies as a CTO. His research focuses on software engineering, machine learning systems, embedded systems and cloud computing.