Machine learning is a complex field that spans mathematics, software, and computer systems. How do engineers work effectively with data scientists in building next generation applications with machine
learning? What is the most effective way to deliver consistent value? What are common mistakes to avoid?
In this course, we present a set of best practices for software and systems engineers that can be applied to machine learning application development. The course covers the
full gamut of required knowledge, ranging from software tools, model selection, and infrastructure to deployment and quality assurance
- Session 1: Feb. 12th Tue 4pm-6pm PST
- Session 2: Feb. 14th Thu 4pm-6pm PST
- Session 3: Feb. 19th Tue 4pm-6pm PST
- Session 4: Feb. 21st Thu 4pm-6pm PST
- 32 Lessons / 8 hours live talks
- code labs/live demos
- Real time interactions with instructors
- Watch session replay any time
Check the content tab for full course outlines.
WHO SHOULD LEARN:
Developers and systems engineers who are interested in expanding their expertise in machine learning application development.
software development experience and be familiar with machine learning fundamentals. The Python programming language is used for code labs.
The course live sessions have ended, you can still enroll to learn the course with recorded videos, slides, course notes and discussions.
Module 1: Introduction
- What is a machine learning research engineer?
- Roles in a machine learning organization
- Setting expectations for machine learning
- Ethics and safe guards
- Tools of the trade (Python, R, TensorFlow, PyTorch, Jupyter, Notebooks, etc.)
Module 2: Model Selection
- Standard model architectures (CNN, RNN, LSTM, GAN, NAT, ensembles, Auto ML, etc.)
- Baseline and expected accuracy
- Time to train
- Training and inference characteristics (memory, batch latency,throughput, etc.)
Module 3: Training techniques
- Train from scratch, transfer learn, fine tune, retrain
- Hyper parameter tuning and Auto ML
- Distributed training
Module 4: Data processing and preparation
- Data inputs pipelines
- Data selection, balancing and normalization
- Data splitting and test strategies
Module 5: Infrastructure
- Environments for training, validation, and inference
- Job scheduling
- Cloud provided accelerators (AWS, GCE, Azure, etc.)
Module 6: Reproducibility
- Source control
- Data versioning
- Run automation and experiment management
Module 7: Deployment
- Simple model servers
- Advanced servers (TensorFlow Serving, Deep Detect)
- Mobile platforms (TensorFlow Lite, Tensor RT, embedded)
- Monitoring model performance
Module 8: Ongoing development
- Acquiring more data
- Upgrading deployed models
Garrett Smith, Sean Ma
is creator of Guild AI, an open source toolkit for automating ML operations and packaging and sharing complex ML workflows and artifacts. Garrett has over 20 years experience in software engineering and systems operation. He is a frequent speaker and instructor in the fields of machine learning and programming.
Sean Ma is research manager, leading and managing a team of researchers and engineers to automate features for creating High Definition Map (HD Map) for Highly Automated Driving (HAD).