Chapter 4: Fundamentals of ML Flashcards
Four broad categories of ML
- Supervised Learning
- Unsupervised Learning
- Self-Supervised Learning
- Reinforcement Learning
Why is validation data helpful?
helps you tune the hyperparamaters of the model. The number of layers, this size of layers etc.
information leak
every time you tune your model using the validation data some information about the validation data leaks into your model
Why don’t you evaluate ML models with the training data?
After a certain number of epochs (which you can’t predict ahead of time) the model will start to overfit to the training data
How do you evaluate a ML model?
By splitting off some data to evaluate it on called validation data
What is the goal when training machine learning models? models that do what?
Generalize well
When you evaluate machine learning models, what are you evaluating?
Their ability to generalize
How many sets of data should you use to train and evaluate a model?
- Train, Validate, Test
hyperparameters vs parameters
hyperparameters = number or size of layers in neural network parameters = the weights of each layer
Why does developing a neural network require the number of data sets it does?
Because training data sets the parameters of the model, and validation data tunes the hyperparameters
How are the hyperparameters of the model tuned?
using the performance of the model on the validation dat as a feedback signal
Classic model evaluation recipes
simple hold-out validation, K-fold val, iterated K-fold val with shuffling
Simple hold-out validation
set out test, validation and training
What might stop you from using simple hold-out validation?
If there’s too little data available. You can check this if different rounds of shuffling before splitting produce very different model performance
K-fold cross Validation
Split data into some K number of equal sets, then use all but 1 set to train the data and evaluate the data on the held-out partition. You take the average of the evaluation score as the model evaluation score. Models discarded after generating evaluation score
Iterated K-fold cross Validation with shuffling
Applying K-fold cross validation multiple times and shuffling the the data before each new split. The final score is the average of the scores from each run of the K-fold validation
How do you evaluate your model if you have very little data?
Iterated K-fold cross Validation with shuffling
How should you evaluate your model if it is exhibiting considerable variance in train test split?
K-fold cross validation
How can you help ensure Data Representativeness in your evaluation?
Using data shuffling before you split