liveBook · Manning

Deep learning

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

A machine learning model that uses multiple layers of learned representations to make predictions or decisions.

Deep learning is used to create models for problems such as recognizing a customer’s intent and matching a question to a relevant answer. Model development explores training data, selects training algorithms, trains models, and develops inference code for unseen data. A production deep learning system extends that work: it connects the model lifecycle to the people, pipelines, services, and product requirements needed to use models reliably at scale. section 1.1.3 section 1.3 section 1.0

A practical path from idea to deployed model includes:

  • Translate a product need into a prediction task and measurable serving requirements, including prediction rate and latency. section 1.1.3
  • Explore available data, prototype training code, compare experimental models, and select an appropriate model. section 1.1.3 section 10.1
  • Stabilize and package training code, inference code, and source models so system services can train, track, and serve them. section 10.4
  • Design serving around model inputs and outputs, training-framework environments, user scenarios, latency, and resource efficiency. section 6.1.4

Intent-based customer support

A support application can replace a confusing navigation menu with natural-language questions. Teams prototype candidate models using training data, evaluate them, then productionize the selected model with continuous data processing, training, deployment, evaluation, and model serving. The application backend calls the serving service while the service meets specified throughput and latency needs. section 1.1.3

Research and prototyping are interactive: practitioners explore data, write and revise training code, train and test experimental models, compare metrics, and track versions of data and code. Once a training workflow and inference response are satisfactory, product integration can begin. Deployment strategy becomes important when inference service cannot be interrupted, and deployment approaches can also support production experimentation. section 10.1.1 section 10.4

Figure 10.3 Excerpt of the path to production in the research and prototyping phases

Use the production-path diagram to place research and iterative prototyping before packaging and broader productionization work. section 10.1

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

How deep it goes
Details data exploration, training, inference, packaging, and serving constraints while deferring individual component implementations.
Examples
Uses natural-language customer support, visual recognition with ImageNet, JupyterLab notebooks, and experimental-model metric comparisons.
What you can do after
Evaluate/understand how to move a trained model from iterative prototyping into a production system.
How it connects
Links training data, training algorithms, inference code, model serving, deployment strategy, dataset management, and hyperparameter optimization.

Also explained in

Compare how 11 books explain deep learning →

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.