# Regularization

Youtube search... ...Google search

Good practices for addressing the Overfitting Challenge:

- add more data
- use Data Augmentation
- use Batch Norm(alization) & Standardization
- use architectures that generalize well
- reduce architecture complexity
- add Regularization
- L1 and L2 Regularization - update the general cost function by adding another term known as the regularization term. See Elastic Net Regression
- Dropout - at every iteration, it randomly selects some nodes and temporarily removes the nodes (along with all of their incoming and outgoing connections)
- Data Augmentation
- Early Stopping

Regularization is a technique which makes slight modifications to the learning algorithm such that the model generalizes better. This in turn improves the model’s performance on the unseen data as well. An Overview of Regularization Techniques in Deep Learning (with Python code) | Shubham Jain

A machine learning model can overcome underfitting by adding more parameters, although its complexity increases and will require more efforts for interpretation. However, a real dilemma of a data scientist is that minimizing the prediction errors which are decomposed due to the bias and/or variance somehow turns into overfitting problems. Lasso, Ridge, and Elastic Net are popular ways of regularized statistical modeling approaches... Regression Analysis: Lasso, Ridge, and Elastic Net | Sung Kim

- Regression Models:

## Adversarial Regularization (AdvReg)

- SMART - Multi-Task Deep Neural Networks (MT-DNN)
- Adversarial regularization for image classification | Google