liveBook · Manning

Algorithm reproducibility

As explained in Designing Deep Learning Systems: A guide for software engineers

The ability to rerun a machine learning algorithm on a specified dataset and obtain the same or similar results.

Algorithm reproducibility means rerunning a deep learning algorithm on a specified dataset and obtaining the same or similar quality of results. Versioned training datasets make the exact files used in earlier runs retrievable. section 2.1.1

It supports trustworthy machine learning systems and makes performance regression troubleshooting practical: teams can investigate changes in training data and algorithm code instead of debugging an unrecoverable run. section 2.1.1

A reproducibility workflow should:

  • Track training-dataset versions so previous training files can be recovered. section 2.1.1
  • Distinguish algorithm reproducibility from model reproducibility, which additionally requires reproducing dataset outputs and training configuration. section 2.1.1

How Designing Deep Learning Systems: A guide for software engineers covers it

How deep it goes
Defines rerunning an algorithm against versioned training files, but stops short of full model reproduction requiring configuration and dataset artifacts.
Examples
Uses a self-attention transformer in NLP, version strings for exact training files, and chatbot intent predictions as examples.
What you can do after
Diagnose/debug with it by comparing recovered training data and algorithm code when model performance regresses.
How it connects
Connects dataset management, model reproducibility, training configuration, and performance troubleshooting.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Designing Deep Learning Systems: A guide for software engineers. The section links point to the parts of the book it draws on.