Key points:
- Scale of data is especially good for large NNs
- Having a combination of HPC and AI skills is important to have optimal impact (handle scale challenges and bigger/complex NN)
- Most of the value right now comes from CNNS, FCs, RNNS. Unsupervised, GANs and others might be future but they are research topics right now.
- E2E DL might be relevant for some cases in future like speech -> transcript, Image -> captioning, text -> image
- Self driving cars might also move to E2E, but none of us have enough data image -> steer
Workflow:
- Bias = Training error - Human error. Try Bigger model, run longer, New model architecture
- Variance = Dev error - Train error. Try More data, Regularization, New model architecture.
- Conflict between bias and variance is weaker in DL. We can have bigger model with more data.
More data:
- Data synthesis/augmentation is becoming useful and popular: OCR (superpose alphabets on various images), Speech (Superpose various background noises), NLP(?) But does have drawbacks, if it is not representative
- Unified data warehouse helps leverage data usage across company
Data set breakdown:
- Dev and test should come from same distribution. As we spend a lot of time optimizing for Dev accuracy.
Progress plateaus above Human level performance:
- But there is theoretical optimal error rate (Bayes rate)
What to do when bias is high:
- Look at examples of the ones machine got it wrong
- Get labels from humans?
- Error analysis: Segment training - identify segments where training error is higher than human.
- Estimate bias/variance effect?
How do you define human level performance: Example: Error of a panel of experts
Size of data:
- How do you define a NN as small vs medium vs large?
- Is the reason large NN can leverage bigger data is because it would not cause overfitting unlike on smaller NNs?