#33 Machine Learning Engineering for Production (MLOps) Specialization [Course 1, Week 3, Lesson 9]
Skills:
ML Pipelines90%
Key Takeaways
The video discusses data pipelines, also known as data cascades, and the importance of replicability in machine learning engineering for production, covering best practices and tools such as TensorFlow Transform, Apache Beam, and Airflow.
Full Transcript
data pipelines sometimes also called data cascades refers to when your data has multiple steps of processing before getting to the final output there's some best practices relevant for managing such data pipelines let's start to an example let's say that given some user information you would like to predict if a given user is looking for a job because if they're looking for a job at this moment in time you may want to surface job ads or other pieces of particularly useful information to them so given raw data such as the data on top there's often some sort of pre-processing or data cleaning before the data is fed to learning algorithm that then tries to predict why are they looking for a job and the data cleaning may include things like spam cleanup such as removing the spam accounts and maybe also user id merge which we talked about in an earlier video for the sake of this example let's say that spam cleanup and user id merge are done with just scripting so explicit sequences of instructions that tells your code when is an account to be considered spammy and when should two user ids be merged of course these systems could be built using machine learning algorithms as well which makes them even a little bit more complex to manage now when you have scripts for the data cleaning one of the issues you run into is replicability when you take these systems into production deployment let's say during the development of the system you have input data fed through pre-processing scripts and the pre-processed data is fed to machine learning algorithm and after some amount of work your learning algorithm does well on the test set during the development phase you may have seen that pre-processing scripts can be quite messy it may be you hacking something up processing data mailing a file to a different member of your team having them have a few incantations in python or some scripting language to process the data and then having them mail the process data back to you when you take this system to production you then have new data which has to be fed through a similar set of scripts because this data is going to be fed to the same machine learning algorithm and your machine learning algorithm on this data is what will run in your product so the key question is if your pre-processing was done with a bunch of scripts spread out on a bunch of different people's computers and laptops how do you replicate the strips to make sure that the input distribution to your machine learning algorithm was the same for the developed data and the production data i find that the amount of effort that you should invest to make sure that the pre-processing scripts are highly replicable can depend a little bit on the phase of the project i know that it may be fashionable to say that everything you do should be 100 replicable and i'll probably get some criticism for not hewing to that line but i find that a lot of projects do go through a proof of concept of poc phase and then a production phase where during the proof of concept phase the primary goal is just to decide if the application is workable and worth building and deploying my advice to most teams is during the proof of concept phase focus on getting the prototype to work and it's okay if some of the data pre-processing is manual if the project succeeds you need to replicate all this pre-processing later so my advice would be take extensive notes write extensive comments to increase the odds that you can replicate all this pre-processing later but this is also not the time to get bogged down in tons of process just to ensure replicability when the focus is really to just decide if the application is workable and is worth taking to the next phase once you've decided that this project is worth taking to production then you know it's going to be really important to really replicate any pre-processing scripts so in this phase that's when i would use more sophisticated tools to make sure the entire data pipeline is replicable and this is when tools which can be a little bit more heavyweight but tools like tensorflow transform apache beam airflow and so on become very valuable and in fact you learn more about tensorflow transform later into specialization as well in this video you learned about data pipelines and when to invest in their replicability it turns out many applications have significantly more complex data pipelines than what we saw in this video and for those settings you also have to think about what metadata you want and perhaps also keep track and take care of data provenance and lineage let's go on to the next video to look at these topics
Original Description
The Machine Learning Engineering for Production (MLOps) Specialization teaches you how to conceptualize, build, and maintain integrated systems that continuously operate in production. In this Specialization, you will become familiar with the capabilities, challenges, and consequences of machine learning engineering in production. By the end, you will be ready to employ your new production-ready skills to participate in the development of leading-edge AI technology and solve real-world problems.
This is a video from Course 1, Week 3, Lesson 9 video on "Data pipeline".
To learn more about this and other topics and access the full course videos and assignments, enroll in the Specialization here: https://bit.ly/3v8pxwA
Check out all our programs: https://bit.ly/3L9rnmQ
Subscribe to The Batch, our weekly newsletter: https://bit.ly/3vxv52R
Follow us:
Twitter: https://twitter.com/deeplearningai_
Facebook: https://www.facebook.com/deeplearningHQ/
Linkedin: https://www.linkedin.com/company/deep...
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from DeepLearningAI · DeepLearningAI · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Forward and Backward Propagation (C1W4L06)
DeepLearningAI
deeplearning.ai's Heroes of Deep Learning: Yuanqing Lin
DeepLearningAI
deeplearning.ai's Heroes of Deep Learning: Ruslan Salakhutdinov
DeepLearningAI
deeplearning.ai's Heroes of Deep Learning: Yoshua Bengio
DeepLearningAI
deeplearning.ai's Heroes of Deep Learning: Pieter Abbeel
DeepLearningAI
deeplearning.ai's Heroes of Deep Learning: Ian Goodfellow
DeepLearningAI
deeplearning.ai's Heroes of Deep Learning: Andrej Karpathy
DeepLearningAI
Using an Appropriate Scale (C2W3L02)
DeepLearningAI
Gradient Checking (C2W1L13)
DeepLearningAI
Gradient Checking Implementation Notes (C2W1L14)
DeepLearningAI
Learning Rate Decay (C2W2L09)
DeepLearningAI
Understanding Mini-Batch Gradient Dexcent (C2W2L02)
DeepLearningAI
Mini Batch Gradient Descent (C2W2L01)
DeepLearningAI
The Problem of Local Optima (C2W3L10)
DeepLearningAI
Exponentially Weighted Averages (C2W2L03)
DeepLearningAI
Tuning Process (C2W3L01)
DeepLearningAI
Understanding Exponentially Weighted Averages (C2W2L04)
DeepLearningAI
Bias Correction of Exponentially Weighted Averages (C2W2L05)
DeepLearningAI
Gradient Descent With Momentum (C2W2L06)
DeepLearningAI
Normalizing Activations in a Network (C2W3L04)
DeepLearningAI
Hyperparameter Tuning in Practice (C2W3L03)
DeepLearningAI
Adam Optimization Algorithm (C2W2L08)
DeepLearningAI
RMSProp (C2W2L07)
DeepLearningAI
Fitting Batch Norm Into Neural Networks (C2W3L05)
DeepLearningAI
Why Does Batch Norm Work? (C2W3L06)
DeepLearningAI
Batch Norm At Test Time (C2W3L07)
DeepLearningAI
Softmax Regression (C2W3L08)
DeepLearningAI
Deep Learning Frameworks (C2W3L10)
DeepLearningAI
Neural Network Overview (C1W3L01)
DeepLearningAI
Training Softmax Classifier (C2W3L09)
DeepLearningAI
Why Deep Representations? (C1W4L04)
DeepLearningAI
Gradient Descent For Neural Networks (C1W3L09)
DeepLearningAI
Neural Network Representations (C1W3L02)
DeepLearningAI
TensorFlow (C2W3L11)
DeepLearningAI
Activation Functions (C1W3L06)
DeepLearningAI
Explanation For Vectorized Implementation (C1W3L05)
DeepLearningAI
Getting Matrix Dimensions Right (C1W4L03)
DeepLearningAI
Understanding Dropout (C2W1L07)
DeepLearningAI
Building Blocks of a Deep Neural Network (C1W4L05)
DeepLearningAI
Why Non-linear Activation Functions (C1W3L07)
DeepLearningAI
Computing Neural Network Output (C1W3L03)
DeepLearningAI
Backpropagation Intuition (C1W3L10)
DeepLearningAI
Train/Dev/Test Sets (C2W1L01)
DeepLearningAI
Deep L-Layer Neural Network (C1W4L01)
DeepLearningAI
Random Initialization (C1W3L11)
DeepLearningAI
Other Regularization Methods (C2W1L08)
DeepLearningAI
Normalizing Inputs (C2W1L09)
DeepLearningAI
Derivatives Of Activation Functions (C1W3L08)
DeepLearningAI
Parameters vs Hyperparameters (C1W4L07)
DeepLearningAI
Vectorizing Across Multiple Examples (C1W3L04)
DeepLearningAI
What does this have to do with the brain? (C1W4L08)
DeepLearningAI
Dropout Regularization (C2W1L06)
DeepLearningAI
Vanishing/Exploding Gradients (C2W1L10)
DeepLearningAI
Basic Recipe for Machine Learning (C2W1L03)
DeepLearningAI
Bias/Variance (C2W1L02)
DeepLearningAI
Forward Propagation in a Deep Network (C1W4L02)
DeepLearningAI
Weight Initialization in a Deep Network (C2W1L11)
DeepLearningAI
Numerical Approximations of Gradients (C2W1L12)
DeepLearningAI
Regularization (C2W1L04)
DeepLearningAI
Why Regularization Reduces Overfitting (C2W1L05)
DeepLearningAI
More on: ML Pipelines
View skill →Related Reads
📰
📰
📰
📰
A Stable Adapter for Financial ML Experiments
Medium · Machine Learning
Two Notes on Building a Financial ML Research OS
Medium · Machine Learning
Two Notes on Building a Financial ML Research OS
Medium · Python
Level Up Your LeetCode Game: A Beginner's Quest Inspired by *The Legend of Zelda*
Dev.to · Timevolt
🎓
Tutor Explanation
DeepCamp AI